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:
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
) html helpfiles are stored (especially where UnSolicitedRCUI.htm is stored)
YDRjRectangle – JQuery rectangle selection – new version
After some weeks of dealing with jquery and the rectangle function i released earlier i wrote a new and cleaner version, renamed it to YDRjRectangle and put it into a plugin like shape, so everyone can implement further functionality for selecting objects or do other customizing to fit its needs.
If you want to use a technique like click & drag/mouse move you should get the disabletextselect plugin from jdempster, to get rid of unwanted text selection while drawing your div rectangle.
SCCM – Delete computer object via powershell and wmi [edit]
After one hour of research i found a solution on how to delete a computer object in sccm from a remote computer via Powershell. First of all you need to get the computer object from your sccm namespace "ROOT\SMS\site_[yoursite] -> SMS_R_SYSTEM.
All machine items are stored in SMS_R_SYSTEM, so i used a wmi query with a filter to get the object i need.
There are several ways you can get the computer object, another example is a WMI query, that returns the object.
// Powershell $compObject = get-wmiobject -query "select * from SMS_R_SYSTEM WHERE Name='[computername]'" -computername [sccm-server] -namespace "ROOT\SMS\site_[yoursite]"
You should check if the $compObject is empty or not and if not you can just use psbase to delete the object from the sccm server completly (not only from the collection) by using this statement
// Powershell $compObject.psbase.delete()
How to deal with multiple objects [edit]
Special thanks to Leeni, who wrote a comment at this post on how to deal with multiple entries at your SCCM server. If your WMI query returns more than one object you have to handle this a bit different.
To check if your query returned more than one object try this:
$compObject.psbase.length
or
$compObject.psbase.syncroot
Both properties are only set if your result contains more than one object, so you can easily check if these objects are empty or not.
If they are not empty you have to delete your $compObject this way
$compObject.psbase.syncroot | % { $_.delete() }
This pipes your syncroot object to a foreach loop (% is an alias for foreach) and delete every object one after another.