This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Re: MS VC++ Abnormal Program Termination while upgrading IS2010 InstallScript Project
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jun 29, 2011
04:13 PM
MS VC++ Abnormal Program Termination while upgrading IS2010 InstallScript Project
I have InstallShield 2011 with Hotfix A installed. I am trying to convert an IS2010 InstallScript to IS2011. This same project originated in IS 12, converted to IS 2008, to IS 2009 and now in IS 2010, all without any problems.
I open up IS2011, select the IS2010 project and I am told to convert it, so I do.
Alternatively, I get different errors:
"MS VC++ 'Abnormal program termination'"
or
"InstallShield needs to close. An error has occurred that InstallShield could not recover from. We have created an error report...blah blah blah"
I've clicked the link to "view the technical details of this error" and that does nothing. I also clicked the "Report" button, and that appeared to do nothing as well.
I have been able to upgrade other projects from IS2010, just not this particular project.
Any thoughts? Any more info I can provide?
I open up IS2011, select the IS2010 project and I am told to convert it, so I do.
Alternatively, I get different errors:
"MS VC++ 'Abnormal program termination'"
or
"InstallShield needs to close. An error has occurred that InstallShield could not recover from. We have created an error report...blah blah blah"
I've clicked the link to "view the technical details of this error" and that does nothing. I also clicked the "Report" button, and that appeared to do nothing as well.
I have been able to upgrade other projects from IS2010, just not this particular project.
Any thoughts? Any more info I can provide?
(13) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jun 29, 2011
04:16 PM
Sorry, forgot to add that the project file (.ISM) appears to have been converted, but I get the same errors when I try to open the converted project, too.
The strange thing is that I can run ISCmdBld against the converted project, and I get no errors compiling.
(It would be nice to do some actual developing, though).
The strange thing is that I can run ISCmdBld against the converted project, and I get no errors compiling.
(It would be nice to do some actual developing, though).
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 12, 2011
09:55 AM
For what it's worth, if I get a "nicer" message (along the lines of "InstallShield could not open and will shut down"), an iside.log file is created in the InstallShield\2011 directory with a few lines that say:
C:\CodeBases\isdev\src\FrontEnd\Views\IsWsInstallScripts\ScriptEditorWnd.cpp 1359: Out of memory.
Any thoughts?
C:\CodeBases\isdev\src\FrontEnd\Views\IsWsInstallScripts\ScriptEditorWnd.cpp 1359: Out of memory.
Any thoughts?
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 12, 2011
04:37 PM
Is there any way you can provide us with the files (.ism, *.rul) for this project?
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 14, 2011
07:46 AM
Sorry for the delay. Actually, support ticket #SIOC-000111065 has been opened, and working on it with a rep.
One thing, our project has ~300 RUL files in it. Any possibility the "out of memory" problem has anything to do with that number of RULs? This was obviously not an issue in IS2010, just a thought...
One thing, our project has ~300 RUL files in it. Any possibility the "out of memory" problem has anything to do with that number of RULs? This was obviously not an issue in IS2010, just a thought...
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 14, 2011
05:06 PM
The InstallScript editor was changed for IS 2011. However, even with 300 script files, unless they are significantly large in size each, it is unlikely that the heap for our process would be exhausted.
Can you try to isolate this behavior by removing rul files in a binary search method? This could help to determine if a specific rul file contains something that is causing the problem or if the combination of all the rul files could be the issue.
Can you try to isolate this behavior by removing rul files in a binary search method? This could help to determine if a specific rul file contains something that is causing the problem or if the combination of all the rul files could be the issue.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 18, 2011
10:07 AM
Got this back from support, which I'm following up on (I can be kind of dense, so I need a few more details...)
"This Issue seems to be a conversion Problem itlself.
I used notepad to methodically remove rows from tables, saving after each table modification and then attempting to open in InstallShield.
In your project, you have PATH_TO_INCLUDE_FILES in the ISScriptFiles table. If you use notepad to change the PATH_TO_INCLUDE syntax in the ISScriptFile table to ISProductFolder, then InstallShield 2011 can open the project."
"This Issue seems to be a conversion Problem itlself.
I used notepad to methodically remove rows from tables, saving after each table modification and then attempting to open in InstallShield.
In your project, you have PATH_TO_INCLUDE_FILES in the ISScriptFiles table. If you use notepad to change the PATH_TO_INCLUDE syntax in the ISScriptFile table to ISProductFolder, then InstallShield 2011 can open the project."
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 22, 2011
03:37 PM
So, here's what I have done, and successfully opened and used IS2011 with my previously working IS2010 project that has been upgraded through each version of IS since IS12 without any of these problems:
FAILURE:
1. Open the IS2010 ISM file in notepad and remove all RUL files from ISScriptFile except setup.rul and support.h
2. Launch IS2011 and convert the edited ISM file in step 1, SUCCESS
3. Manually add the RUL files I removed in step 1 using the IDE
4. IS2011 crashes around the time I add the 260th RUL file
SUCCESS:
1. Open the IS2010 ISM file in notepad and remove all RUL files from ISScriptFile except setup.rul and support.h
2. Launch IS2011 and convert the edited ISM file in step 1, SUCCESS
3. Merge individual RUL files into "master" RUL files (i.e., combine 20 original RUL files into one RUL file, resulting in 15 larger RUL files)
4. Manually add the 15 larger RUL files, SUCCESS
So, looks like it's a file number limitation of some sort (imo). None of the original RUL files were larger than 100Kb. The largest merged RUL file is 700Kb.
I'm guessing I found my own workaround, which is kind of annoying, as we intended on developing on a "one RUL per function" basis. If anyone has any thoughts, I'd like to hear them.
FAILURE:
1. Open the IS2010 ISM file in notepad and remove all RUL files from ISScriptFile except setup.rul and support.h
2. Launch IS2011 and convert the edited ISM file in step 1, SUCCESS
3. Manually add the RUL files I removed in step 1 using the IDE
4. IS2011 crashes around the time I add the 260th RUL file
SUCCESS:
1. Open the IS2010 ISM file in notepad and remove all RUL files from ISScriptFile except setup.rul and support.h
2. Launch IS2011 and convert the edited ISM file in step 1, SUCCESS
3. Merge individual RUL files into "master" RUL files (i.e., combine 20 original RUL files into one RUL file, resulting in 15 larger RUL files)
4. Manually add the 15 larger RUL files, SUCCESS
So, looks like it's a file number limitation of some sort (imo). None of the original RUL files were larger than 100Kb. The largest merged RUL file is 700Kb.
I'm guessing I found my own workaround, which is kind of annoying, as we intended on developing on a "one RUL per function" basis. If anyone has any thoughts, I'd like to hear them.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 22, 2011
04:33 PM
It is unlikely that the memory available to the InstallShield process has been exhausted by the number of rul files in a project (unless they consume ~1GB or more of memory). At this point, it would be helpful to determine if a specific file (or set of files) is causing the behavior or if it is just the overall set of files.
If possible, we would recommend using a binary search approach to isolating this behavior by removing sets of files at a time (remove half, if the behavior goes away, remove the other half, etc. until a file or set of files is isolated). This provides a relatively quick method of isolating what specifically might be causing the behavior.
While having ~300 rul files isn't a typical use case we see, the IDE should not encounter any issues in such a scenario. If this behavior can be isolated this would be helpful in determining why the behavior is occurring and what solutions are available.
If possible, we would recommend using a binary search approach to isolating this behavior by removing sets of files at a time (remove half, if the behavior goes away, remove the other half, etc. until a file or set of files is isolated). This provides a relatively quick method of isolating what specifically might be causing the behavior.
While having ~300 rul files isn't a typical use case we see, the IDE should not encounter any issues in such a scenario. If this behavior can be isolated this would be helpful in determining why the behavior is occurring and what solutions are available.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 25, 2011
08:36 AM
Tried the binary search. Edited the ISM in notepad, removing half of the RUL files. Launched the converter, project converted and opened without any problems (although, no IS on the task bar until I alt-tabbed to it). Closed out, deleted ISM file, re-opened the original in notepad, removed the other half of the RUL files. Launched the converter, project converted and opened without any problems (aside from same no IS on task bar).
Doesn't appear to be a problem with a specific RUL file.
Also did this test, which should be in the support ticket:
If I open up my IS2010 ISM in notepad and remove all scripts from ISScriptFile except setup.rul and support.h, then do a conversion, InstallShield does not crash, and I have a viable IS2011 ISM file. If I open that ISM in IS2011 and start manually re-adding back all of my RUL files, InstallShield will eventually crash with the same error - first time, if I add 20 at a time, when I get around the 200th RUL file; second time, since I had the ISM saved after each group of 20, when I started adding one at a time, it crashed again around the 260th RUL file.
I retested, adding the files 15 at a time, this time adding alphabetically backwards (so last RULs added first), again crashed around the 200th file group (so, a different group of RULs added, but crashing around the same number). Didn't try the manually adding one at a time after that, seemed unnecessary.
Like I noted, it seems if I merge groups of RULs into "master" RUL files, I can get around this issue, just not ideal for us (but, if that's what I have to do, that's what I have to do, right?).
Doesn't appear to be a problem with a specific RUL file.
Also did this test, which should be in the support ticket:
If I open up my IS2010 ISM in notepad and remove all scripts from ISScriptFile except setup.rul and support.h, then do a conversion, InstallShield does not crash, and I have a viable IS2011 ISM file. If I open that ISM in IS2011 and start manually re-adding back all of my RUL files, InstallShield will eventually crash with the same error - first time, if I add 20 at a time, when I get around the 200th RUL file; second time, since I had the ISM saved after each group of 20, when I started adding one at a time, it crashed again around the 260th RUL file.
I retested, adding the files 15 at a time, this time adding alphabetically backwards (so last RULs added first), again crashed around the 200th file group (so, a different group of RULs added, but crashing around the same number). Didn't try the manually adding one at a time after that, seemed unnecessary.
Like I noted, it seems if I merge groups of RULs into "master" RUL files, I can get around this issue, just not ideal for us (but, if that's what I have to do, that's what I have to do, right?).
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 26, 2011
11:21 AM
Is there any way you can send your project to us? It would be helpful to see if we can reproduce the crash with a debug build of the product and track down where it might be encountering an issue with these rul files.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 26, 2011
01:22 PM
A support ticket has already been opened (#SIOC-000111065), and they have my ISM file (both the IS2010 and converted IS2011 files).
If you could add some insight to those working on it, that would be great, as none of the suggestions have been fruitful there.
Thanks!
If you could add some insight to those working on it, that would be great, as none of the suggestions have been fruitful there.
Thanks!
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Aug 01, 2011
04:08 PM
It appears that only the ISM file for this project was provided for the support incident. The ISM itself migrates and opens successfully on a number of machines here with IS 2011 installed.
Can you provide the RUL files for this project? Without these files, the only thing the InstallScript view will do is enumerate the script files linked to the project and attempt to open them. Since none of them are present, not much work will be done (other than adding a tree entry for each file) and no files will be parsed (which would allocate a number of objects per-file to track various information used by the editor for code completion). As a point of reference, the line of code you had previously mentioned (C:\CodeBases\isdev\src\FrontEnd\Views\IsWsInstallScripts\ScriptEditorWnd.cpp 1359) is part of a function that works with the files in the script view and is responsible for updating the line and column number of the cursor position in the status bar, resetting read-only attributes on RUL files if requested, and updating the function list in the view. None of these particular operations will do anything if there isn't a file open in the editor since there is no data to work with.
Can you provide the RUL files for this project? Without these files, the only thing the InstallScript view will do is enumerate the script files linked to the project and attempt to open them. Since none of them are present, not much work will be done (other than adding a tree entry for each file) and no files will be parsed (which would allocate a number of objects per-file to track various information used by the editor for code completion). As a point of reference, the line of code you had previously mentioned (C:\CodeBases\isdev\src\FrontEnd\Views\IsWsInstallScripts\ScriptEditorWnd.cpp 1359) is part of a function that works with the files in the script view and is responsible for updating the line and column number of the cursor position in the status bar, resetting read-only attributes on RUL files if requested, and updating the function list in the view. None of these particular operations will do anything if there isn't a file open in the editor since there is no data to work with.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Aug 04, 2011
01:24 PM
Due to our policy regarding source code, I can not easily provide our RUL files, and attempts to recreate with dummy RULs have been unsuccessful.
So, we're going ahead with our workaround of merging the files and going from there.
Thanks for your attention in this matter.
So, we're going ahead with our workaround of merging the files and going from there.
Thanks for your attention in this matter.