That's a bug if it's the first plug-in call (was not initializing global variables such as the stack pointer). If you use it in the callback then it should be fine. Will fix for next version. Someone is reporting a crash but on a window which updates its caption every 100ms (not surprised).
Stu
LockedList plug-in
320 posts
Yikes...Originally Posted by Afrow UK View PostSomeone is reporting a crash but on a window which updates its caption every 100ms (not surprised).
yikes #1: why would that crash?
yikes #2: why on Earth would an application update its caption 10 times per second??
( not necessarily in that order )
I've got one that updates its caption every second.. I stick the time in it (taskbar is set to auto-hide, might as well make use of the titlebar screen real estate) ..but 10 times per second? huh.
This is my application. It change title of other appliaction, to show some useful information. It doeasnt have to be 100ms but now it is. In final build it will be probably 500ms (it can't be >1s)
I use Stu's plugin in my installer and it crash when it is trying to kill that application with our title (but only unicode build, ansi build works ok...)
And i think , it is because, in some way Process name in application list is displayed as data from title bar I change every x ms...
I hope Stu will find way to fix it.
-Pawel
I use Stu's plugin in my installer and it crash when it is trying to kill that application with our title (but only unicode build, ansi build works ok...)
And i think , it is because, in some way Process name in application list is displayed as data from title bar I change every x ms...
I hope Stu will find way to fix it.
-Pawel
hmmm.. as far as I can tell, it only grabs the title once.. must be affecting something deeper down 🙂
Turns out it was just a buffer overflow. I am not sure why because dynamically allocating the buffer instead of statically seems to have fixed it. I have also increased the buffer length to 1024 characters and fixed the IsFileLocked bug.
Stu
Stu
Stu,
Yes, it seems it is finally fixed. I will do more tests later.
-Pawel
Yes, it seems it is finally fixed. I will do more tests later.
-Pawel
confirming the IsFileLocked bugfix. Unfortunately it doesn't recognize the locked DLL as being locked; I guess that might be a distinction similar to why there is an AddFile and an AddModule?
It correctly recognized a text file I opened a file handle to (with another app), so that part works if nothing else 🙂
It correctly recognized a text file I opened a file handle to (with another app), so that part works if nothing else 🙂
Yep it will only work on files that have a handle open on them (DLL's do not when they are locked). And yes using AddFile on DLL will not work.
Stu
Stu
Gotcha - makes sense (in that weird and twisted Microsoft-state-of-mind kind of sense) 🙂
one more minor item request...
If the list is empty, could the Next button text revert if /ignore is specified? I just noticed that if I specify the /ignore flag, have a locked file, then unlock that file and the list goes empty stating no further programs need to be closed.. the Next button still reads (the /ignore-supplied string) "Ignore".
If the list is empty, could the Next button text revert if /ignore is specified? I just noticed that if I specify the /ignore flag, have a locked file, then unlock that file and the list goes empty stating no further programs need to be closed.. the Next button still reads (the /ignore-supplied string) "Ignore".
Is the source for this plug-in available? If not, have you considered open-sourcing it?
Sorry, I'm a dolt -- just found it in the package. 🧟Originally Posted by glenncarr View PostIs the source for this plug-in available? If not, have you considered open-sourcing it?
Quickly compiled and ran a few of the examples on Vista64...
- After the initial Welcome page, no list was displayed on the second page
- Back, Next, and Cancel buttons are active, but nothing happens when clicking them
- Have to force the installer to close (system control menu/buttons don't work)
Any suggestions?
- After the initial Welcome page, no list was displayed on the second page
- Back, Next, and Cancel buttons are active, but nothing happens when clicking them
- Have to force the installer to close (system control menu/buttons don't work)
Any suggestions?
Which example causes this? I am running Windows 7 x64 and have not had any issues.
Stu
Stu
All of them.Originally Posted by Afrow UK View PostWhich example causes this? I am running Windows 7 x64 and have not had any issues.
Stu
I can only assume something such as anti-virus software is blocking it. Does SilentSearch work?
Stu
Stu
Compiling and running LockedListTest.nsi with /S crashes with this info:
Problem signature:How do you typically debug this? I've built it in Visual Studio 2008, and I'm trying to attach to my installer exe instance with no luck, so I'm probably missing something obvious. I'd be glad to help if I can.
Problem Event Name: APPCRASH
Application Name: LockedListTest.exe
Application Version: 0.0.0.0
Application Timestamp: 49769baa
Fault Module Name: StackHash_fd00
Fault Module Version: 0.0.0.0
Fault Module Timestamp: 00000000
Exception Code: c0000005
Exception Offset: 00000138
OS Version: 6.0.6002.2.2.0.256.6
Locale ID: 1033
Additional Information 1: fd00
Additional Information 2: ea6f5fe8924aaa756324d57f87834160
Additional Information 3: fd00
Additional Information 4: ea6f5fe8924aaa756324d57f87834160
Make sure the source code is in NSIS\Contrib\LockedList then set the build configuration to Debug (or Debug Unicode if you're using Unicode NSIS). After rebuilding the NSIS installer you can then attach VS to it.
Glad you have VS!
Stu
Glad you have VS!
Stu
Still have the dependency issue.
It failed to load the Dialog on a fresh XP PC with the following error in the event viewer.
Resolve partial assembly failed for Microsft.VC90.CRT.Reference error message. The referenced assembly is not installed on your system.
Please let me know
It failed to load the Dialog on a fresh XP PC with the following error in the event viewer.
Resolve partial assembly failed for Microsft.VC90.CRT.Reference error message. The referenced assembly is not installed on your system.
Please let me know
I have the same problem. Our installer does not work in XP with LockedList. Microsoft.VC90.CRT is missing...Originally Posted by Alfaromeo View PostStill have the dependency issue.
It failed to load the Dialog on a fresh XP PC with the following error in the event viewer.
Resolve partial assembly failed for Microsft.VC90.CRT.Reference error message. The referenced assembly is not installed on your system.
Please let me know
Any help is highly appreciated.
Please try v1.4. The DLL had an XML manifest in it defining Microsoft VC90 CRT as a dependency.
Stu
Stu
Tested on fresh XP (no any redistributable package installed!) and it works fine
Thanks
Thanks
Thanks! It works!Originally Posted by Afrow UK View PostPlease try v1.4. The DLL had an XML manifest in it defining Microsoft VC90 CRT as a dependency.
That rocks...Works as expected. Thanks
A requirement is to make the label control transparent and the list contol a little more small.Sicne I'm using UMUI this covers up all the screen .
Please advise.
A requirement is to make the label control transparent and the list contol a little more small.Sicne I'm using UMUI this covers up all the screen .
Please advise.
You'll need to use SetCtlColors for the transparency and SetWindowPos API for the list (among others). It may be easier to resize the list in the dialog resource in Visual Studio and rebuild.
Stu
Stu
I know the file which will is likely yo be locked by our application , hence is there an option to target that file alone with a if condition to detect whether that file is locked or not.
Check that and show the dialog if necessary.
Check that and show the dialog if necessary.
You can use the SilentSearch function for that but be warned the process can take a little time for modules (even on super fast machines) and even longer for file handles. Hence why the search occurs while the screen is visible.
If you just want to make the label transparent the control ID is defined in resource.h.
You need to use InitDialog and Show plugin calls and InitDialog pushes the window handle onto the stack (just like InstallOptions).
Stu
If you just want to make the label transparent the control ID is defined in resource.h.
You need to use InitDialog and Show plugin calls and InitDialog pushes the window handle onto the stack (just like InstallOptions).
Stu
/noprograms option for dialog isn't working since v1.2
text always returns to it's default value.
just me?
Osman
text always returns to it's default value.
just me?
Osman
I don't use it - but I can confirm the error.Originally Posted by maxwell72 View Post/noprograms option for dialog isn't working since v1.2
text always returns to it's default value.
The problem is in the source code; it references PARAM_SEARCHING in the part of the code dealing with the /noprograms flag. Must be a copy/paste-effected regression 🙂
Was digging the day to display a message when the file is locked.
This is the flow of UI
Welcome
License Page
Directory
Install FIles
Finish
In the main section I have this code:
LockedList::IsFileLocked "<Path to FIle">
Pop $R0
I do not want toshow the UI of Locked list , just detect the file
Your expertise is needed
This is the flow of UI
Welcome
License Page
Directory
Install FIles
Finish
In the main section I have this code:
LockedList::IsFileLocked "<Path to FIle">
Pop $R0
I do not want toshow the UI of Locked list , just detect the file
Your expertise is needed