PDA

View Full Version : Dependencies not checked - bug



JWells
11-10-2005, 11:03 AM
When you add more than one file to an Express Project using the Project Assistant at the Application Files stage, a message will appear asking if you want to check dependencies. If you choose "Yes to All," only the first file is checked and the others are skipped. Has anyone else experienced this bug?

Dsilva
11-11-2005, 03:39 AM
Hi,

Try the below steps I have done to achieve the results:

- Open an Express Project using the Project Assistant and add files to the Application Files Stage.
- InstallShield displays a message box asking for the project assistant to detect the dependencies for the file you have added and to add them to your installation.
- On clicking “Yes to all”, the static scanner wizard opens, scans the files and displays the files that can be added to your project. You can check the files you require to be added to the project. Obviously, the files get added to the dependent file lists.
The above is normal process to be done to achieve the requirement. Please confirm the same was done by you at your end and if still you are not able to reach the target please let me know the steps you followed so that I may give it a look. Also let me know what are the extension files you included in your setup for dependency scanning?

Dsilva

JWells
11-14-2005, 06:21 PM
I'm not sure you actually tested the bug. Your instructions duplicate what my bug report says but you claim a different response from the program. I just tested it again using two Windows files (1394bus.sys and progman.exe)from my system32 folder and only one file was scanned. They have different depencies but depending on which file you add first the list changes. Only one file is scanned when you choose "Yes to all." Please try it yourself to see if you can duplicate it. Thanks.

Dsilva
11-15-2005, 06:25 AM
Hi,

I have tested with the windows files you have given (1394bus.sys and progman.exe) from the system32 folder.

For 1394bus.sys :
- Added 1394bus.sys in Application Files.
- InstallShield displayed a message box that “The file you have added may have different dependencies. Would you like to have the project Assistant detect those dependencies and add them to your installation”.
- Clicked “Yes to all”.
- Static Scanning Wizards opens.
- Scanning progressed and listed out the files (NTOSKRNL .EXE) that can be added to the project.
- Selected the file “NTOSKRNL.EXE”.
- Scanned Result showed that the file has been added to the Dependent File lists.

For progman.exe:
- Added progman.exe in Application Files.
- InstallShield displayed a message box that “The file you have added may have different dependencies. Would you like to have the project Assistant detect those dependencies and add them to your installation”.
- Clicked “Yes to all”.
- Static Scanning Wizards opens.
- Scanning progressed and listed out the files (Microsoft (R) C Runtime Library) that can be added to the project.
- Selected the file “Microsoft (R) C Runtime Library”.
- Scanned Result showed that the file has been added to the Dependent File lists.

Both the files had one dependency, each which is displayed separately. The “Yes to all” option refers that whether the dependency has to be included for all the dependency file that are listed for that particular file and not for all the files that are specified for dependency check. Since our check file had only one dependency file I believe this confused you. Hope the knot is clear now.

Regards,
Dsilva.

JWells
11-21-2005, 09:45 PM
I didn't really understand your explanation of the "Yes to all" option and let me clarify a little more what I'm doing because your test is not right.

Your test indicates that you added one file at a time. I'm talking about adding two files at the same time. That is what the "Yes" and "Yes to All" is referring to. Try this:

- In the Application Files, select "Add Files" and select both 1394bus.sys and progman.exe for addition to the project (I don't think I was clear before on adding them both at the same time).
- InstallShield will display a message box stating “The file you have added may have different dependencies. Would you like to have the project Assistant detect those dependencies and add them to your installation."
- Click “Yes to all”
- Static Scanning Wizards opens
- Scanning progresses and lists a file (NTOSKRNL .EXE or (Microsoft (R) C Runtime Library)) that can be added to the project
- Don't select any file
- Scan Result shows no dependency file was added
- The scanner ends and that's it...no check is performed on the next file.

What should happen when you select "Yes to all" is that all files are scanned for dependencies at the same time and both dependency files (NTOSKRNL.EXE and MS C Runtime Library) are listed. If you were to select "Yes" when adding the two files, then what happens is the same as above except after the scanner closes it opens again for the 2nd file (this is correct behavior).

A similar set of choices can be seen in Windows when you copy many files from one folder to another and Windows prompts you "Would you like to replace the existing file with this one?" The choices are "Yes," "Yes to All," "No," and "Cancel." Choosing "Yes" will cause this prompt for every duplicate file whereas "Yes to All" will cause all files to be replaced.

The "Yes to all" option should not appear when you add just one file. I've tried imagining if a file had 2 or more dependencies but I don't see how that would have anything to do with the expected behavior of "Yes to all."

You said "The “Yes to all” option refers that whether the dependency has to be included for all the dependency file that are listed for that particular file and not for all the files that are specified for dependency check." The scanner displays a list of dependency files and you decide whether to include them all or not. Are you saying "Yes to all" means that you would then have the choice to include only some of the dependency files? If this is the case then there is still a bug in IS because when you add more than one file at the same time to your project the scanner only scans one file instead of scanning all the files you added.

JWells
11-22-2005, 04:41 PM
I did some more testing at work using files that have multiple dependencies:

1. In Application Files, add the following 3 IS Express 11 system files together at the same time:
converter.dll - dependencies: MS OLE 2.4, ATL Module
isapp.dll - dependencies: VB Virtual Machine
iscmdbld.exe - dependencies: MFCDLL Shared Library, MS C Runtime,
MS C++ Runtime, MS OLE 2.4

2. A dialog box appears saying, "The file you added...may have dependencies...detect...and add...?

- Selecting "Yes" will run the scanner and show dependencies which you can choose for the file mentioned in

the dialog box. The scanner then closes and the same dialog box from before appears again. This process

repeats for each file that you add and you can choose all, some, or none of the depencies to add. After the

last file is scanned, all 3 files are added to the project.

- Selecting "Yes to All" will run the scanner and show dependencies for the file mentioned in the dialog box.

The scanner closes and then all 3 files are added to the project. But only one was scanned!

"Yes to All" should cause the scanner to scan all 3 files automatically in succession and list all dependencies for all the files in one listing. The behavior should be similar to when you choose Project>Perform Static Scan...