cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
TheBogeyMan
Level 3

Error 1001.

I need some help on troubleshooting this error. I am no InstallShiled expert, so please be gentle 🙂

I have started getting this error on some Vista installs.

The install works fine under WinXP. IOt is failing under Vista, logged in as an admin user.

All my files get copied to the right location(s), but some necessary registry setup is not being done.

All I get is a dialog with Error 1001. No text, nothing else.
Labels (1)
0 Kudos
5 Replies
Christopher_Pai
Level 16

Without much to go on, a 1001 error code is typically associated to an Installer Class Custom Action. Why it's failing is anyones guess since it's a custom action.

Now the scenario you describe points to the custom action being run under user context ( impersonation ) instead of system context ( no impersonation ). Visual Studio merge modules are notorious for this.... have you added one to your install or have you wired up the Installer Class CA directly?


There are several ways to fix this and all require an understanding of UAC.
0 Kudos
TheBogeyMan
Level 3

I should note that I did not originally author this install, so I am somewhat "running in the dark" trying to figure this out. I am no installer expert.

I do have a custom action defined in order to register my COM objects (one is a COM-visible C# assembly, the other a C++ DLL). The installer is a "basic MSI project". There is a custom action (ISSelfRegisterFiles) that is set to "deferred execution in system context". This action is located in a DLL (\redist\language independent\i386\isregsvr.dll). Return processing is set to check exit code (and this is why it's failing I guess).

How do I create view a detailed installation log?
0 Kudos
Christopher_Pai
Level 16

You are forgiven! 🙂

SelfRegistration is an antipattern, turn it off. Instead.....

Assumed: Label previous ISM in source control then checkout

Set each dll as the keyfile of it's own component.
For each keyfile Turn off SelfRegistration ( this will remove the CA for you ).
For the C++ dll, right click the key file and select "Extract COM Data for KeyFile"
For the managed assembly, set the component attributes:
.NET Scan At Build : Properties Only
.NET COM Interop : Yes


Build and test on a clean machine.

For logging you can say

msiexec /i foo.msi /l*v install.log

or

setup.exe /v"/l*v install.log"
0 Kudos
TheBogeyMan
Level 3

Ok. So I have managed to locate the binary files in question in the component list. Neither of them are marked as "self register" (checkbox in properties is unchecked). Both are marked as keyfiles.

Now what is wierd (from my perspective) is that in the files list (each file has a single item in the list), they are shown as follows:

Filename.dll 0 bytes - filename.dll

If I right click on the file and select "Open Containing Folder". It displays a path that is [currently] not valid, but is valid at project build time (we have an automated build environment). The setup project is built at build time using InstallShield's COM interfavce, via a VBS script.

The VBS script is like this:


ProjectName = "Setup.ism"
Release1 = "CDROM_IMAGE"
Configuration = "PROJECT_ASSISTANT"

BuildDirectoryPath = WScript.Arguments(1)

Rem ------------- open InstallShield project
Set oProject = CreateObject( "ISWIAuto14.ISWiProject" )

oProject.OpenProject ProjectName, true

Rem ------------- set path to localy build binaries
oProject.ISWiPathVariables.Item("PATH_TO_BUILDDIRECTORY").Value = BuildDirectoryPath

Rem ------------- run media build
oProject.ISWiProductConfigs(Configuration).ISWiReleases(Release1).Build()


This completes without error.
0 Kudos
TheBogeyMan
Level 3

If it helps, here's a section from the install log with the two 1001 errors that are occurring...

[CODE]MSI (s) (D8:DC) [11:27:35:896]: Executing op: RegAddValue(Name=Path,Value=C:\Program Files\Company Name\App Name\,)
WriteRegistryValues: Key: \SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\AppName.exe, Name: Path, Value: C:\Program Files\Company Name\App Name\
MSI (s) (D8:DC) [11:27:35:896]: Executing op: ActionStart(Name=_17945858294C426C9DCA86B3395A2E8E.commit,,)
Action 11:27:35: _17945858294C426C9DCA86B3395A2E8E.commit.
MSI (s) (D8:DC) [11:27:35:896]: Executing op: CustomActionSchedule(Action=_17945858294C426C9DCA86B3395A2E8E.commit,ActionType=3585,Source=BinaryData,Target=ManagedInstall,CustomActionData=/installtype=notransaction /action=commit /LogFile= "C:\Program Files\Company Name\App Name\AppName.exe" "C:\Users\admin\AppData\Local\Temp\{64F87974-8973-431E-A224-9A0C5BA70CFE}\_isconfig.xml")
MSI (s) (D8:DC) [11:27:35:896]: Executing op: ActionStart(Name=_5255F9808B394A17BA8CC3DD275FF2EA.rollback,,)
Action 11:27:35: _5255F9808B394A17BA8CC3DD275FF2EA.rollback.
MSI (s) (D8:DC) [11:27:35:896]: Executing op: CustomActionSchedule(Action=_5255F9808B394A17BA8CC3DD275FF2EA.rollback,ActionType=3329,Source=BinaryData,Target=ManagedInstall,CustomActionData=/installtype=notransaction /action=rollback /LogFile= "C:\Program Files\Company Name\App Name\AppName.exe" "C:\Users\admin\AppData\Local\Temp\{64F87974-8973-431E-A224-9A0C5BA70CFE}\_isconfig.xml")
MSI (s) (D8:DC) [11:27:35:896]: Executing op: ActionStart(Name=_D390CDD798114748A222FD1DDC9D6A55.install,,)
Action 11:27:35: _D390CDD798114748A222FD1DDC9D6A55.install.
MSI (s) (D8:DC) [11:27:35:896]: Executing op: CustomActionSchedule(Action=_D390CDD798114748A222FD1DDC9D6A55.install,ActionType=3073,Source=BinaryData,Target=ManagedInstall,CustomActionData=/installtype=notransaction /action=install /LogFile= "C:\Program Files\Company Name\App Name\AppName.exe" "C:\Users\admin\AppData\Local\Temp\{64F87974-8973-431E-A224-9A0C5BA70CFE}\_isconfig.xml")
MSI (s) (D8:80) [11:27:35:912]: Invoking remote custom action. DLL: C:\Windows\Installer\MSIBC34.tmp, Entrypoint: ManagedInstall
Error 1001.
MSI (s) (D8!AC) [11:27:38:368]:
MSI (s) (D8:80) [11:27:38:373]: Leaked MSIHANDLE (129) of type 790531 for thread 2220
MSI (s) (D8:80) [11:27:38:373]: Note: 1: 2769 2: _D390CDD798114748A222FD1DDC9D6A55.install 3: 1
Info 2769.Custom Action _D390CDD798114748A222FD1DDC9D6A55.install did not close 1 MSIHANDLEs.
Action ended 11:27:38: InstallExecute. Return value 3.
MSI (s) (D8:DC) [11:27:38:394]: User policy value 'DisableRollback' is 0
MSI (s) (D8:DC) [11:27:38:394]: Machine policy value 'DisableRollback' is 0
MSI (s) (D8:DC) [11:27:38:404]: Executing op: Header(Signature=1397708873,Version=400,Timestamp=949377900,LangId=1033,Platform=0,ScriptType=2,ScriptMajorVersion=21,ScriptMinorVersion=4,ScriptAttributes=1)
MSI (s) (D8:DC) [11:27:38:404]: Executing op: DialogInfo(Type=0,Argument=1033)
MSI (s) (D8:DC) [11:27:38:405]: Executing op: DialogInfo(Type=1,Argument=App Name)
MSI (s) (D8:DC) [11:27:38:406]: Executing op: RollbackInfo(,RollbackAction=Rollback,RollbackDescription=Rolling back action:,RollbackTemplate=[1],CleanupAction=RollbackCleanup,CleanupDescription=Removing backup files,CleanupTemplate=File: [1])
Action 11:27:38: Rollback. Rolling back action:
Rollback: _D390CDD798114748A222FD1DDC9D6A55.install
MSI (s) (D8:DC) [11:27:38:412]: Executing op: ActionStart(Name=_D390CDD798114748A222FD1DDC9D6A55.install,,)
MSI (s) (D8:DC) [11:27:38:413]: Executing op: ProductInfo(ProductKey={64F87974-8973-431E-A224-9A0C5BA70CFE},ProductName=App Name,PackageName=AppName.msi,Language=1033,Version=33882113,Assignment=1,ObsoleteArg=0,ProductIcon=ARPPRODUCTICON.exe,,PackageCode={ECB31DCC-D668-4CDC-A698-500734623A96},,,InstanceType=0,LUASetting=1,RemoteURTInstalls=0,ProductDeploymentFlags=2)
Rollback: _5255F9808B394A17BA8CC3DD275FF2EA.rollback
MSI (s) (D8:DC) [11:27:38:415]: Executing op: ActionStart(Name=_5255F9808B394A17BA8CC3DD275FF2EA.rollback,,)
MSI (s) (D8:DC) [11:27:38:416]: Executing op: CustomActionRollback(Action=_5255F9808B394A17BA8CC3DD275FF2EA.rollback,ActionType=3329,Source=BinaryData,Target=ManagedInstall,CustomActionData=/installtype=notransaction /action=rollback /LogFile= "C:\Program Files\Company Name\App Name\AppName.exe" "C:\Users\admin\AppData\Local\Temp\{64F87974-8973-431E-A224-9A0C5BA70CFE}\_isconfig.xml")
MSI (s) (D8:90) [11:27:38:434]: Invoking remote custom action. DLL: C:\Windows\Installer\MSIC618.tmp, Entrypoint: ManagedInstall
Error 1001.
MSI (s) (D8!A0) [11:27:39:235]:
MSI (s) (D8:90) [11:27:39:239]: Leaked MSIHANDLE (131) of type 790531 for thread 3744
MSI (s) (D8:90) [11:27:39:239]: Note: 1: 2769 2: _5255F9808B394A17BA8CC3DD275FF2EA.rollback 3: 1
Info 2769.Custom Action _5255F9808B394A17BA8CC3DD275FF2EA.rollback did not close 1 MSIHANDLEs.
Rollback: _17945858294C426C9DCA86B3395A2E8E.commit
MSI (s) (D8:DC) [11:27:39:247]: Executing op: ActionStart(Name=_17945858294C426C9DCA86B3395A2E8E.commit,,)
Rollback: Writing system registry values
MSI (s) (D8:DC) [11:27:39:248]: Executing op: ActionStart(Name=WriteRegistryValues,Description=Writing system registry values,Template=Key: [1], Name: [2], Value: [3])
MSI (s) (D8:DC) [11:27:39:249]: Executing op: RegOpenKey(Root=-2147483646,Key=SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\AppName.exe,,BinaryType=0,)[/CODE]
0 Kudos