MAINFRAIME
31st July 2007 16:55 UTC
Problem -> could not resolve label
Hi,
i'm making custom 7-zip builds and now i want to pack all in one installer and i made some modifications to the original one to support some options but when i try to compile the script i always get this error
Processed 1 file, writing output:
Adding plug-ins initializing function... Done!
Error: could not resolve label "_LogicLib_Label_196.10" in unnamed install section (0)
Error - aborting creation process
But i'm not using any labels.
Can someone tell me whats wrong in this script and how to fix it?
And here the line numbers where i have inserted some code
37, 82-83, 103-104, 188-253, 341-352, 412-435
hope i don't forgot some.
Afrow UK
31st July 2007 16:57 UTC
Line 348 no ${EndIf}.
Line 253 no matching ${EndIf} statements for all 8 ${If} statements.
Stu
MAINFRAIME
1st August 2007 06:02 UTC
Thanks now it compiles and i can install it seems to work correctly but when i install it again to change the "7-zip.dll" i don't get the message to reboot and the file will not be replaced and a manual reboot is also not working.
When i first uninstall it and reboot there is no problem.
Can i force the installer to replace the file even if in use and then reboot or is there another way to fix this problem without having the user do a manual uninstall and reboot?
Here is the code for the "7-zip.dll"
ReadINIStr $QaxX "$PLUGINSDIR\ioB.ini" "Field 2" "State"
${If} $QaxX == '1'
!insertmacro InstallLib DLL NOTSHARED REBOOT_NOTPROTECTED 7-zip_shell-icon.dll $INSTDIR\7-zip.dll $INSTDIR
${Else}
ReadINIStr $QaxX "$PLUGINSDIR\ioB.ini" "Field 3" "State"
${If} $QaxX == '1'
!insertmacro InstallLib DLL NOTSHARED REBOOT_NOTPROTECTED 7-zip_no_shell-icon.dll $INSTDIR\7-zip.dll $INSTDIR
${EndIf}
${EndIf}
Red Wine
1st August 2007 08:22 UTC
I suspect you're attempting to replace the installed dll with the same file version so nothing happens, the file is not replaced.
You should try different file versions to see if the code works as expected.
MAINFRAIME
1st August 2007 09:21 UTC
Yes it's the same version but not the same file one has a icon for the explorer shell menu and one not.
It seems that only older files are replaced i have changed the "#define MY_VER_BUILD 0" to "#define MY_VER_BUILD 1" and the older version will be replaced but i can't replace the newer one with old one.
How can i fix this, is there a switch to override newer files?
MAINFRAIME
1st August 2007 12:39 UTC
I have another problem, in this script always "MessageBox" will be called even if the regkey exists and has a valid value also the message shows the value, where is the problem?
ReadINIStr $QaxX "$PLUGINSDIR\ioC.ini" "Field 4" "State"
${If} $QaxX == "1"
ReadRegStr $QaxX HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Far Manager" "InstallDir"
${If} $QaxX <> ""
CreateDirectory $QaxX\Plugins\7-Zip
File 7-ZipFar.dll
Rename 7-ZipFar.dll $QaxX\Plugins\7-Zip\7-ZipFar.dll
Delete 7-ZipFar.dll
${Else}
MessageBox MB_OK "Sorry but i could not find the Far FileManager. ($QaxX)"
${EndIf}
${EndIf}
Afrow UK
1st August 2007 13:14 UTC
<> is a signed integer condition test. This isn't VB. Use !=.
Stu