Wednesday, March 23, 2016

Windows Mobile Device Center 6.1.6965


Introduction
This software is required to enable Windows 7 to make connections to Windows Mobile and older Pocket PC type devices.  Drivers are included in the installation.
The original installation can be obtained here.
This installs drivers and the 64-bit version of the Windows Mobile Device Center (WMDC) software.
The Windows Mobile-based device connectivity and Windows Mobile-2003-based device connectivity services are installed.

Vendors Install Design
The drvupdate-amd64.exe file can be run to carry out the installation on Windows 7 64-bit which requires no user input to any setup dialog boxes. Use of the /Q has no effect.
drvupdate-amd64.exe extracts driver_setup.exe and drvupdate-amd64.msi before running the command driver_setup.exe /i drvupdate-amd64.msi
drvupdate-amd64.msi will not run correctly using standard msiexec commands.  It only correctly operates under the driver_setup.exe shell installer.
drvupdate-amd64.msi installs drivers (Windows Mobile Device Center Driver Update in Programs and Features) and extracts files to C:\Windows\WindowsMobile.  The wmupdate.msi is then called and this installs the WMDC software which appears as a separate item in the Programs and Features window.  This item cannot be separated out for virtualisation because it is automatically called by the installer shell after the drvupdate-amd64.msi install has completed.

SCCM incompatibility
The unmodified vendor installation fails when it is attempted via SCCM.  This can also be reproduced by using psexec.exe to run the installation in the system context.
The failure occurs because Microsoft have used driver installation binaries in the drvupdate-amd64.msiwhich are 32-bit not 64-bit versions.

Solution for SCCM incompatibility
The only way to enable an SCCM installation is to directly edit the drvupdate-amd64.msi.  The driver_setup.exe does not support command lines which enable standard Windows Installer paramters to be used such as TRANSFORMS=

The drvupdate-amd64.msi was edited directly and then renamed to new-drvupdate-amd64.msi .  This following edits were carried out

1. open the msi package in an MSI editor
2. goto the Binary table
3. delete the DIFxApp.dll and DIFxAppA.dll row
4. Add new rows using the same names and upload the correct 64-bit versions of these files to the binary table.
new-drvupdate-amd64.msi contains these DLLs
\\onelondon.tfl.local\infrastructure$\EUC Apps\008 Utilities\Drivers\Toolkit 2.1.0\DIFxApp\WixLib\x64
5. save the msi as new-drvupdate-amd64.msi

The install command line options do not include a logging option.  If the client has Windows Installer logging turned on via the registry then MSI installation log files are written to C:\Windows\Temp

Note The above edits were successful however other attempts to edit drvupdate-amd64.msi resulted in red driver warning dialog boxes which would stall a silent install.

The SCCM compatibility fix is discussed here:
http://www.itninja.com/software/microsoft/mobile-device-center-driver-update/6-2534

Device connection to PC
A Windows Mobile or Pocket PC device may be connected before (and left connected during) or after an installation.  When a device is connected the WMDC interface will automatically launch.
It is possible that the automatic WMDC launch may be disrupted (hang) the first time a device is connected by a user.  
 A process called wmdhost.exe begins when a windows mobile device is connected to the PC.
 
WMDC Startup
The installation configures C:\Windows\WindowsMobile\WMDC.exe to launch at login via the 64-bit HKLM Run key.  Wmdc.exe runs in the background silently.  The shortcut uses the /show parameter to show the user interface.

Mobsync
WMDC can make use of mobsync which is a Windows 7 built in mobile device synchronization utility.

Further Reading


Uninstall fault on Clean Windows 7 machines
uninstalling the two relevent MSIs.  This may work correctly on a build PC due to the presence of email software.  Silent uninstalls on clean Windows 7 PC fail due to a custom action which generates a dialog box:-

“There is no email program associated to perform the requested action.  Please install an email program or, if one is already installed, create an association in the Default Programs control panel.”

Wednesday, March 9, 2016

TEMP Profile


Issue: A user continually logs in and is forced to use c:\users\temp instead of the correctly named folder

Workaround: Note the users SID (set user) and logoff.  Delete the following registry keys.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\<USERSID>

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\<USERSID>.bak

The above can occur if a users profile folder is deleted manually instead of using the profile deletion interface in the computer properties.