Remote Desktop Black Screen after Being Minimized

Symptom:
When remote desktoping to a windows 7 (only tested for windows 7 but could plausibly affect Windows 8) Ultimate machine and then minimizing, upon opening the remote desktop connection window, it will be black and unrepsonsive or, will freeze.

I found several solutions across the web saying to do a registry edit or etc but none of them worked for me. Here is what did.

Solution:
What made my remote desktop no longer work, was the fact that Aero was enabled. When i clicked out of the window and went back, the connection would not work because it could not renable Aero. I disabled aero from working through Remote Desktop Connection by installing and enabling Remote Desktop Protocol 8.0 on the remote host machine (the machine you connect too).
Make sure you have Remote Desktop Protocol 8.0 installed. You can get it Here. Once its installed (which for me it already was) you have to manually enable it.
From the support/download page for the windows KB2592687:

“To enable RDP 8.0 on a remote computer that’s running Windows 7 SP1, follow these steps:

Note The following instructions are applicable only to remote computers that are running Windows 7 SP1.

  1. Install the appropriate version of the update package by running the Windows6.1-KB2592687 update file.
  2. Restart the computer.
  3. Open the Local Group Policy Editor.
  4. Enable the Remote Desktop Protocol policy. The setting for this policy is under the following node:
    Computer Configuration\Administrative Templates\Windows Components\Remote Desktop Services\Remote Desktop Session Host\Remote Session Environment
  5. If the UDP functionality is required, enable the RDP Transport policy, and then set the value to Use both TCP and UDP. The setting for
    the RDP Transport policy is under the following node:

    Computer Configuration\Administrative Templates\Windows Components\Remote Desktop Services\Remote Desktop Session Host\Connections

    Note Configuring the RDP Transport policy also lets the firewall allow UDP port 3389.

  6. Restart the computer.”

After that (I skipped steps 5 and 6) I restarted the machine and RD no longer loads aero (also, enabling RDP8.0 adds some features.

-flyingpengwin

Backing Up Videos After Handbrake has Finished

To automatically copy videos to backup (local or network) after Handbrake is finished is fairly simple. You create a bat file which waits for Handbrake to close and then attempts to copy any new or modified files over to a specified location. You use Handbrakes built in feature to close itself when the Queue is done to prompt the backup. The program will attempt to back up every time Handbrake is closed but if there is nothing new it will just close.

Go to start -> search for “Notepad” -> type:

@echo off
cls
start "C:\Program Files\Handbrake\Handbrake.exe"&wait
xcopy /d /y /s "C:\[Location where Handbrake saves too]" "\\[Network pathway to save too]"exit

Then save the file as Handbrake.bat and put it in C:\Program Files\Handbrake\. (or a location you know it will be safe). You will need to enter the location where Handbrake saves too as well as the network pathway. If your saving to a local drive or to a mapped network drive then the copy should be “xcopy /d /y /s “C:\[Location where Handbrake saves too]” “X:\[Location where you want the backup]“[/quote]
Where “X” should be the letter of the drive your saving too.

Also, before “exit” if you would want windows to shutdown you could enter “shutdown -f -s” in a line before it or to logoff it would be “shutdown -f -l -t 000″

Next open a new Notepad up and type:

Set WshShell = CreateObject("WScript.Shell")
WshShell.Run chr(34) & "Handbrake.bat" & Chr(34), 0
Set WshShell = Nothing

And save it as Handbrake.vbs to the same location as the Handbrake.bat file. This prevents the Handbrake.bat from popping up while handbrake is running.

Now, run Handbrake -> click on “Show Queue” -> in “When Done:” select “Quit Handbrake” and select that.

The last thing to do is right click on all shortcuts for Handbrake (in the start menu or on your desktop) go to properties -> Change Target: ” to be the location of the Handbrake.vbs file. So it should look something like “C:\Program Files\Handbrake\Handbrake.vbs”. (For links pinned to the startbar you will need to unpin it, then pin the new shortcut targeting the .vbs file.

From now on, anytime the Handbrake icon is clicked, the .bat file will be running in the programming waiting for handbrake.exe to close (either by you closing it or having it close its self at the end of the Queue). Once closed, it will attempt to back up any new movie files, if nothing has changed than it will simply close as well. (and shutdown/logoff if you choose to tell it too).

 

How to fix Windows 7 error “The local device name is already in use.”

So I get this error every once in a while which causes my mapped network drives to no longer work and sometimes prevents me from accessing the network machine those drives are located on completely (even via ipaddress) even though I can still ping them.

So the solution is to open command prompt under administrator so:

Start -> search "cmd" ->right click on it -> click "Run as Administrator"

Then type inside command prompt,

<code>net use * /delete</code>

Once you do this you can either restart the machine and go to the “Map Network Drive” via the GUI or type

<code>net use Z: \\server\share /user:username password</code>

Into command prompt with the proper network drive letter, network location, and username and password.

Now… This happens to me frequently enough that instead of bothering with remembering how to fix it, I wrote a quick .bat script to do the work for me.

To do this open notepad (start -> search “notepad”) and copy this into it:

::Fix network problem
net use * /delete
net use F: \\Network\share\ /user:Username Password
net use G: \\Network\share\ /user:Username Password
net use H: \\Network\share\ /user:Username Password
shutdown /f /r /t 600 /c "The Computer will now shutdown, please close all applications."
exit

and save it as “FixNetworkDrives.bat”

When ran this will delete all mapped network drives, then remount them and then restart the machine 1 minute later.

Thanks to dekyos for his solution.

Running Screen IRSSI on startup

Here is how I got Irssi to run at startup on Debian:

First if you don’t have screen installed do:

sudo apt-get install screen

Now we need to create a new file called “irssid”

So,

cd /etc/init.d/
sudo nano

Then copy and paste this into it:

#!/bin/bash

### BEGIN INIT INFO
# Provides:          irssid
# Required-Start:    $network
# Required-Stop:     $network
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start irssi daemon within screen session at boot time
# Description:       This init script will start an irssi session under screen using the settings provided in /etc/irssid.conf
### END INIT INFO

# Include the LSB library functions
. /lib/lsb/init-functions

# Setup static variables
configFile='/etc/irssid.conf'
daemonExec='/usr/bin/screen'
daemonArgs='-D -m -s bash'
daemonName="$(basename "$daemonExec")"
pidFile='/var/run/irssid.pid'

#
# Checks if the environment is capable of running the script (such as
# availability of programs etc).
#
# Return: 0 if the environmnt is properly setup for execution of init script, 1
#         if not all conditions have been met.
#
function checkEnvironment() {
# Verify that the necessary binaries are available for execution.
local binaries=(irssi screen)

for bin in "${binaries[@]}"; do
if ! which "$bin" > /dev/null; then
log_failure_msg "Binary '$bin' is not available. Please install \
package containing it."
exit 5
fi
done
}

#
# Checks if the configuration files are available and properly setup.
#
# Return: 0 if irssid if properly configured, 1 otherwise.
#
function checkConfig() {
# Make sure the configuration file has been created
if ! [[ -f $configFile ]]; then
log_failure_msg "Please populate the configuration file '$configFile' \
before running."
exit 6
fi

# Make sure the required options have been set
local reqOptions=(user group session)
for option in "${reqOptions[@]}"; do
if ! grep -q -e "^[[:blank:]]*$option=" "$configFile"; then
log_failure_msg "Mandatory option '$option' was not specified in \
'$configFile'"
exit 6
fi
done
}

#
# Loads the configuration file and performs any additional configuration steps.
#
function configure() {
. "$configFile"
daemonArgs="$daemonArgs -S $session irssi"
[[ -n $args ]] && daemonArgs="$daemonArgs $args"
daemonCommand="$daemonExec $daemonArgs"
}

#
# Starts the daemon.
#
# Return: LSB-compliant code.
#
function start() {
start-stop-daemon --start --quiet --oknodo --pidfile "$pidFile" \
--make-pidfile --chuid "$user:$group" --background \
--exec "$daemonExec" -- $daemonArgs
}

#
# Stops the daemon.
#
# Return: LSB-compliant code.
#
function stop() {
start-stop-daemon --stop --quiet --oknodo --retry 30 --pidfile "$pidFile" \
--chuid "$user:$group" --exec "$daemonExec" -- $daemonArgs
}

checkEnvironment
checkConfig
configure

case "$1" in
start)
log_daemon_msg "Starting daemon" "irssid"
start && log_end_msg 0 || log_end_msg $?
;;
stop)
log_daemon_msg "Stopping daemon" "irssid"
stop && log_end_msg 0 || log_end_msg $?
;;
restart)
log_daemon_msg "Restarting daemon" "irssid"
stop
start && log_end_msg 0 || log_end_msg $?
;;
force-reload)
log_daemon_msg "Restarting daemon" "irssid"
stop
start && log_end_msg 0 || log_end_msg $?
;;
status)
status_of_proc -p "$pidFile" "$daemonExec" screen && exit 0 || exit $?
;;
*)
echo "irssid (start|stop|restart|force-reload|status|help)"
;;
esac

Then save it as “irssid”

Next do

sudo chmod u+x irssid

Now do

 cd /etc/sudo nano

Then copy and paste this into it:

#
# Configuration file for irssid init script
#
# Mandatory options:
#
#    user    - Specify user for running irssi.
#    group   - Specify group for running irssi.
#    session - Specify screen session name to be used for irssi.
#
# Non-mandatory options:
#
#    args    - Pass additional arguments to irssi.
#

# Example configuration:
user='user'
group='users'
session='irssi'
args='--config /home/user/.irssi/config'

and save the file as irssid.conf

Make sure to change the ‘user’ to your user name, as well as change the path that the irssi configure file is located.

Now all there’s left is to run:

update-rc.d irssid defaults

If all things went well the irssid should not error.

Thanks to Branko Majic for his [url=http://majic.rs/book/initd-scripts/running-irssi-o4n-boot]tutorial[/url]

Angry IP Scanner “Failed to Load Native Code”

If Angry IP Scanner gives you a prompt of “Failed to load native code. Probably you are using a binary built for the wrong OS or CPU – try downloading both 32 and 64 bit binaries” And you are running Windows 64bit, its probably because Java has replaced its 64bit version of its software with a 32bit version.

Solution:Download the 32bit version of Angry IP Scanner even if your running a 64bit Windows OS.

This worked for me.

Creating a list of File Names in a Directory in Command Prompt

To create a list of all the files in a certain directory is to open up cmd and type:

 cd /d "[the location the directory is]"
dir /b > "[location you want to save the .txt file].txt"

So For example I wanted to create a list of all the song names in my Metallica album “Master of Puppets” I would do:

 cd /d "D:\Music\Metallica\Master of Puppets"
dir /b > "D:\Master of Puppets.txt"

Which outputs:

 01 Battery.mp3
 02 Master of Puppets.mp3
 03 The Thing That Should Not Be.mp3
 04 Welcome Home (Sanitarium).mp3
 05 Disposable Heroes.mp3
 06 Leper Messiah.mp3
 07 Orion [Instrumental].mp3
 08 Damage, Inc.mp3 

If you want more information over the files like when they were created or size or a summary of the folder then do not use the “/b” when doing the dir command.
If you want to do more than one directory say, you wanted to create a list of all songs in the the entire metallica directory which contains all the albums then you could cd to the parent directory in this case it would be D:\Music\Metallica, and do dir /b /s > Metallica.txt.
The downside to doing this is that it will show the path of the files as well (that way you know which album the song belongs too. Which might not be what you want if your trying to keep a nice and clean log you could easily copy and paste from. In that case you would just be better off creating a .txt for each album individually.

-flyingpengwin