LANDesk OSD log files are basic and easy to read, but may cause headaches when you’re forced to troubleshooting.
During my last headache 🙂 , I was troubleshooting the following error:
The “ERR_FAIL",-2147483646” in this case means the location C:\Program Files\LANDesk\LDClient\sdclient.exe is not valid
This is true: the location is invalid, because the script is running on a Windows 7 x64 machine! The Program Files should be Program Files (x86) instead. There is no LANDesk folder in the C:\Program Files folder when your OS is 64bit.
So… now it’s becoming strange because I set the LANDesk client location to use the variable %LDMS_CLIENT_DIR%.
In my case I execute the following command from my OSD:
REMEXEC04=<qt/>%LDMS_CLIENT_DIR%\sdclient.exe<qt/> /f /o /p="http://%CUSTJOBHOSTIP%/landesk/vboot/bootfile.exe" /disableclientqueue
Shouldn’t the variable %LDMS_CLIENT_DIR% always point to the right folder?
Apparently not, because: LANDesk uses the inventory values to determine the Program Files directory of the client. This means: When you just migrated your machine from an x86 OS (like Windows XP 32 bit) to an x64 OS (Like Windows 7 64-bit), and there has not been an inventory scan after that migration, LANDesk will still translate %LDMS_CLIENT_DIR% to the Windows XP Program Files folder, which is C:\Program Files\
There are 2 possible solutions:
1) Modify your REMEXEC commands to point to a Windows variable like %PROGRAM FILES%.
2) Force an inventory scan on the destination computer