Windows XP - Offer Remote Desktop Assistance with predefined ip

If you want to automate the remote desktop assistance (not remote desktop) with Windows XP you run into some problems. First of all I ran into the problem that “rcimlby.exe”, which seems to be a good point to start lacks with its commandline parameter. I thought that “rcimlby.exe” has a hidden parameter to submit a computer netbios name, or a ipaddress to connect directly to the computer after launching the application, but after debugging the exe I didn’t find any indication for a computerobject parameter, so I started to look elsewhere and found a pretty simple solution.

As it turns out, rcimlby.exe calls a help website (Windows XP help) from where you can start a remote desktop assistance. But this website hasn’t a parameter for the computerobject as well and it seems to be impossible to call this website within the help explorer, so I traced the way rcimlby.exe calls this website and found this call:

1
2
c:\WINDOWS\pchealth\helpctr\binaries\helpctr.exe -FromStartHelp
-url hcp://CN=Microsoft%20Corporation,L=Redmond,S=Washington,C=US/Remote%20Assistance/Escalation/Unsolicited/UnSolicitedRCUI.htm

But there is no way to add a parameter for the computerobject, so I started to find out where these weird (and never used :D ) html helpfiles are stored (especially where UnSolicitedRCUI.htm is stored)

All help files are stored within c:\windows\pchealth, and if we follow the -url path from my call above we find our desired help file.

After some (advanced year 2k) html analysis I figured out that the html helpfile was not designated to read a parameter or something like that. That means you have to type in the computer netbiosname / ipaddresse every time you want to do a remote desktop assistance session, which is a great benefit if you want to automate things (thanks microsoft).

Conclusion? Edit the UnSolicitedRCUI.htm file! Just kidding.

We copy UnSolicitedRCUI.htm, rename it to… RemoteAssistance_patched.htm and edit the copy. This file haven’t changed within the past 10 years, so my patch should work for all XP Versions (SP0-SP3).

If you have opened the RemoteAssistance_patched.htm go to line 286 (below the line where R2D2 has immortalized himself).

1
2
3
4
<TR id="TR2T0TD0TR0T0" name="TR2T0TD0TR0T0">
<TD id="TD0TR2T0TD0TR0T0" name="TD0TR2T0TD0TR0T0">
<INPUT type=text class="sys-font-body sys-color-body MaxWidth" name="idComputerName" id="idComputerName" onkeypress="onEnter()" title="Geben Sie den Computernamen oder die IP-Adresse ein." size=47 tabindex=1>
</TD>

After editing it should look like:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
<TR id="TR2T0TD0TR0T0" name="TR2T0TD0TR0T0">
<TD id="TD0TR2T0TD0TR0T0" name="TD0TR2T0TD0TR0T0">
<INPUT type=text class="sys-font-body sys-color-body MaxWidth" name="idComputerName" id="idComputerName" onkeypress="onEnter()" title="Geben Sie den Computernamen oder die IP-Adresse ein." size=47 tabindex=1>

<SCRIPT>
TheParameters  = document.location.search.substring(1,255)
TheParametersArray = TheParameters.split("&")
k = TheParametersArray.length
for (i= 0 ; i < k; i++) {
   idComputerName.value=unescape(TheParametersArray[0])
}
</SCRIPT>

</TD>

I added a small javascriptcode (i developed this solution 2002, sorry for the awful piece of code ) that grabs the first parameter from the url and add it to the input field. So all you have to do is edit your remote desktop assistance call to:

1
2
c:\WINDOWS\pchealth\helpctr\binaries\helpctr.exe -FromStartHelp
-url hcp://CN=Microsoft%20Corporation,L=Redmond,S=Washington,C=US/Remote%20Assistance/Escalation/Unsolicited/RemoteAssistance_patched.htm?YOUR-IP

and replace YOUR-IP with the netbios name / ipaddress of the computer. Additional you can add a small piece of javascript code to fire the button on document loaded, to fully automate a remote desktop assistance request.

Licensed under CC BY-NC-SA 4.0
Zuletzt aktualisiert am Aug 26, 2011 12:20 UTC
comments powered by Disqus
Developer / Inventor / Creator
Erstellt mit Hugo
Theme Stack gestaltet von Jimmy