Prev: wdf 5483 question
Next: IOCTL_USB_USER_REQUEST
From: minorguy on 25 Aug 2006 21:53 I'm having a problem with the installation of my device (a scanner) using the DIFxApp 2.01 merge module. I've built a simple installer using Visual Studio 2005 and added the DIFxApp merge module to it. Of course I've updated the msiDriverPackages table using Orca and all that. The driver has WHQL signatures for both Windows XP and 2000. Actually, the driver installs fine for me on both operating systems, both as a normal install or as a silent install. However, one of our customers is unable to install and gets the following DIFxApp error in the msiInfo.log. (I've changed the company and product names in the log file to protect the innocent. :-) ) -------------------------- msiInfo.log ------------------------- IFXAPP: InstallDriverPackages DIFXAPP: 'CustomActionData' property 'DIFxApp Version' is 2.01. DIFXAPP: 'CustomActionData' property 'UI Level' is 2. DIFXAPP: 'CustomActionData' property 'componentId' is {EB0F9217-F870-0CCC-C280- C780C3878331}. DIFXAPP: 'CustomActionData' property 'componentPath' is C:\Program Files\MyCompany\MyProduct\. DIFXAPP: 'CustomActionData' property 'flags' is 0xE. DIFXAPP: 'CustomActionData' property 'installState' is 2. DIFXAPP: 'CustomActionData' property 'ProductName' is MyProduct. DIFXAPP: 'CustomActionData' property 'ManufacturerName' is MyCompany. DIFXAPP: ERROR 0x2 encountered while opening install-info subkey for component '{EB0F9217-F870-0CCC-C280-C780C3878331}' DIFXAPP: InstallDriverPackages failed with error 0x2 Action ended 7:17:42: InstallFinalize. Return value 3. DIFXAPP: RollbackInstall DIFXAPP: 'CustomActionData' property 'DIFxApp Version' is 2.01. DIFXAPP: 'CustomActionData' property 'componentId' is {EB0F9217-F870-0CCC-C280- C780C3878331}. DIFXAPP: 'CustomActionData' property 'flags' is 0xE. DIFXAPP: 'CustomActionData' property 'installState' is 2. DIFXAPP: 'CustomActionData' property 'ProductName' is MyProduct. DIFXAPP: 'CustomActionData' property 'ManufacturerName' is MyCompany. DIFXAPP: ERROR 0x2 encountered while opening install-info key for component '{EB0F9217 -F870-0CCC-C280-C780C3878331}' DIFXAPP: Rollback failed with error 0x2 Action ended 7:17:43: INSTALL. Return value 3. === Logging stopped: 8/25/2006 7:17:43 === MSI (s) (24:D4) [07:17:43:707]: Product: MyProduct -- Installation failed. ---------------------------------------------------------------- The customer is deploying the driver by a push install using HP Radia. They are installing to Windows 2000 and they do a silent install. It's very possible that the problem has to do with environment or some sort of security restriction. But I have no idea what the error message means or where to search. And at the moment I don't have any access to the customer's system for testing. That is all I really know so far about the customer's system. I'm unfamiliar with Radia. If I could interpret that error message, at least that might give me a starting point for what to look for. Can anyone tell me what might have caused that error message? Thanks!
From: sm_spc_2 on 11 Sep 2006 09:36 We're experiencing the same error, but the circumstances are slightly different. Our package is pushed to a remote host by a wizard and executed on the remote target, at which point we get the error DIFXAPP: ERROR 0x2 encountered while opening install-info subkey for component '{B5163EB8-0919-4E86-915C-3C9FA08CE2E4}' DIFXAPP: InstallDriverPackages failed with error 0x2 and the whole thing rolls back. However, if you just run the msi package locally under the admin account it all works fine. Alos, the problem goes away if you use the AlwaysInstallElevated policy Difxapp apparently creates a number of temporary files that it needs to do its thing - at least that's my educated guess, as the framework has another custom action (MsiCleanupOnSuccess) that's used for tidying up after installfinalize. Now the MsiProcessDrivers action is immediate and therefore runs under the context of the *user*. When the customaction that actually does the driver installation runs (MsiInstallDrivers) it's set to run in *system* context (3072 +1). 0x2 is a file access error, so it may be possible that under certain circumstances the MsiInstallDrivers difxapp CA is somehow unable to access the temporary files that were created by the earlier (MsiProcessDrivers) CA. Our issue manifests itself if the user under which the installation is running is not currently logged into the target device, so if difxapp is writing its temp files into a location that depends on the user profile, it might come unstuck. This is all just theorization and doesn't offer any solutions - anyone else got any ideas about what's going on and what to do??
From: Abhishek R [MSFT] on 11 Sep 2006 18:29 which version of DIFxApp are you using? <sm_spc_2(a)hotmail.com> wrote in message news:1157981761.713629.52150(a)d34g2000cwd.googlegroups.com... > We're experiencing the same error, but the circumstances are slightly > different. > > Our package is pushed to a remote host by a wizard and executed on the > remote target, at which point we get the error > DIFXAPP: ERROR 0x2 encountered while opening install-info subkey for > component '{B5163EB8-0919-4E86-915C-3C9FA08CE2E4}' > DIFXAPP: InstallDriverPackages failed with error 0x2 > and the whole thing rolls back. > > However, if you just run the msi package locally under the admin > account it all works fine. > Alos, the problem goes away if you use the AlwaysInstallElevated policy > > Difxapp apparently creates a number of temporary files that it needs to > do its thing - at least that's my educated guess, as the framework has > another custom action (MsiCleanupOnSuccess) that's used for tidying up > after installfinalize. > > Now the MsiProcessDrivers action is immediate and therefore runs under > the context of the *user*. When the customaction that actually does the > driver installation runs (MsiInstallDrivers) it's set to run in > *system* context (3072 +1). > > 0x2 is a file access error, so it may be possible that under certain > circumstances the MsiInstallDrivers difxapp CA is somehow unable to > access the temporary files that were created by the earlier > (MsiProcessDrivers) CA. > > Our issue manifests itself if the user under which the installation is > running is not currently logged into the target device, so if difxapp > is writing its temp files into a location that depends on the user > profile, it might come unstuck. > > This is all just theorization and doesn't offer any solutions - anyone > else got any ideas about what's going on and what to do?? >
From: Atul on 12 Sep 2006 02:42 Hi, Even I am also facing exactly SAME trouble with remote installation. If same user has logged in on remote machine, DIFXAPP succeeds, but if different user OR no user has logged in, DIFXAPP fails. So I feel DIFXAPP has problem related to impersonation. I am using 'DIFxApp Version' is 2.01. DIFXAPP: 'CustomActionData' property 'DIFxApp Version' is 2.01. Please suggest me some way out on this as I am stuck on this issue. Thanks, Atul Abhishek R [MSFT] wrote: > which version of DIFxApp are you using? >
From: sm_spc_2 on 12 Sep 2006 05:22
Atul and I are both dealing with the same problem from different ends (I wrote the MSI, he's deploying it). Now we used DifXApp for a related product and it worked OK, but it was an earlier version of difxapp (2.0). The log file differences are as follows... === Failed installation=== DIFXAPP: InstallDriverPackages DIFXAPP: 'CustomActionData' property 'DIFxApp Version' is 2.01. DIFXAPP: 'CustomActionData' property 'UI Level' is 2. DIFXAPP: 'CustomActionData' property 'componentId' is {B5163EB8-0919-4E86-915C-3C9FA08CE2E4}. DIFXAPP: 'CustomActionData' property 'componentPath' is C:\Program Files\Symantec\Enterprise Vault\drivers\. DIFXAPP: 'CustomActionData' property 'flags' is 0x14. DIFXAPP: 'CustomActionData' property 'installState' is 2. DIFXAPP: 'CustomActionData' property 'ProductName' is Enterprise Vault File System Archiving. DIFXAPP: 'CustomActionData' property 'ManufacturerName' is Symantec. DIFXAPP: ERROR 0x2 encountered while opening install-info subkey for component '{B5163EB8-0919-4E86-915C-3C9FA08CE2E4}' DIFXAPP: InstallDriverPackages failed with error 0x2 === Successful install === DIFXAPP: InstallDriverPackages DIFXAPP: 'CustomActionData' property 'DIFxApp Version' is 2.0. DIFXAPP: 'CustomActionData' property 'UI Level' is 3. DIFXAPP: 'CustomActionData' property 'componentId' is {A9DA0C37-7E86-454A-9880-759708944512}. DIFXAPP: 'CustomActionData' property 'componentPath' is C:\Program Files\VERITAS\Storage Exec\bin\FSFilter\. DIFXAPP: 'CustomActionData' property 'flags' is 0xC. DIFXAPP: 'CustomActionData' property 'installState' is 2. DIFXAPP: 'CustomActionData' property 'ProductName' is Symantec Storage Exec. DIFXAPP: 'CustomActionData' property 'ManufacturerName' is Symantec Corporation. DIFXAPP: INFO: ENTER: DriverPackageInstallW DIFXAPP: INFO: FileScreenFilter.inf: Skipping DFX signature verification. DIFXAPP: INFO: Copying 'FileScreenFilter.inf' to driver store... DIFXAPP: INFO: Installing INF file "C:\WINDOWS\system32\DRVSTORE\FileScreen_D5F4CE42F3F9A7ABD5F75BE07851270F290ABF8B\FileScreenFilter.inf" of Type DIFXAPP: INFO: installing class filter 'C:\WINDOWS\system32\DRVSTORE\FileScreen_D5F4CE42F3F9A7ABD5F75BE07851270F290ABF8B\FileScreenFilter.inf' DIFXAPP: SUCCESS:Installation completed with code 0x0. ==== The differences appear to be in the flags and the UILevel For the failed package the following bits are set: 4 - Don't create ARP entry 16 - Do uninstall For the successful intallation the bits are 4 - no ARP 8 - allow unsigned So it's possible that the problem lies with the driver signature verification. Checking the driver signature isn't a ship killer for the application, but it would be nice to have, especially if driver signing is required for Vista. Arguably the UI level may also be significant if difxapp is trying to interact with the user (UI level3 = /qb) in the failed installation. Maybe totally suppressing the UI (/qn) will have an effect as well. |