Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

blue screen during shut down

Solved!
Go to solution

1. It is only working if I install the same version of NI488.2 on both systems. Otherwise I get the error message: "file not found: Gpib-32.dll". The drawback is that in case the host system drivers are updated you also need to update the driver in the virtualized package, i.e. it must be created again with the new driver version.

 

2.The application cannot be installed at all in Windows7 64-bit as it is an 32-bit application (none of the compatibility modes of Windows7 is working in this case). 

 

3. The info of the dump file is:

caused by driver: nipalk.sys

caused by address: nipalk.sys+36e6

cras address: ntoskrnl.exe+71f00

 

Would be nice if you have an idea how to prevent the BSODs (which only occur during reboot after the programm has been executed! no program execution -> no BSODs, especially after a reboot the system is working fine until the next time of program execution).

 

The next 10 days I will be not available (until 26th of Aug.). Thank you for your help.

0 Kudos
Message 11 of 16
(1,750 Views)

OK, given the information you provided about the blue screen, it probably is being caused by the GPIB driver. I would love to be able to tell you how to fix the problem, but we don't have enough information yet to determine what is happening. Once you are back and able to obtain the memory dump file, that could help us identify the point of failure.

 

-Jason Smith

0 Kudos
Message 12 of 16
(1,746 Views)

Hi ElGamal,

 

Once you have the memory dump you can zip it up and upload it to our ftp site: ftp://ftp.ni.com/incoming/.  Once it's up there post here to let us know.  

 

Thanks

Justin Parker
National Instruments
Product Support Engineer
0 Kudos
Message 13 of 16
(1,739 Views)

I was able to reproduce the failure on one of my machines, so there is no need to upload the memory dump. I found that disabling the NI-488.2 Enumeration Service seems to prevent the crash on shutdown, but I don't know the root cause of the failure. This is a temporary workaround, because this service is important to map GPIB interfaces to the actual board names (such as GPIB0) that are used in applications.

 

Once your system is up and working, you can disable the service, but if you change the configuration of your GPIB hardware (including swapping out an interface for another with a different serial number), you will need to enable the service again to allow it to synchronize with the new hardware configuration.

 

In the end this seems like it could be a very fragile solution. The technology used is very interesting, but it seems to be less well-suited for applications requiring hardware access. We have the workaround I mentioned, but there is still the issue that you will have to update your sandboxed application every time you upgrade NI-488.2 (or possibly any other NI software) on your host system, and it will be difficult to obtain support for any problems encountered in this environment.

 

-Jason Smith

 

 

0 Kudos
Message 14 of 16
(1,733 Views)
Solution
Accepted by topic author ElGamal

I believe I found a better workaround for you, using the following steps when capturing the installation through the wizard:

 

1. On the Setup Capture - Ready to Build screen, choose to Open Project Folder.

 

2. In the project folder, browse to %Common AppData%\National Instruments.

 

3. Delete everything, leaving only the ##Attributes.ini file behind.

 

4. Open the ##Attributes.ini file, and replace the DirectoryIsolationMode with Merged. The file should contain this when you are done:

 

[Isolation]

DirectoryIsolationMode=Merged

 

5. Save the modified ##Attributes.ini file, then return to the wizard and build your package.

 

By deleting the contents of the National Instruments folder and changing the isolation mode to merged, the sandbox will use the contents of the host folder, and any changes will be saved back to the host machine. This will prevent the two instances from becoming out of synchronization with one another, solving the blue screen issue.

 

If you are testing these changes on a machine where you have already previously failed, you may have some bad data already in the sandbox, which could prevent this from working. I am not sure how to purge that from the system, but I was able to verify this worked by changing my package to store the sandbox in the local folder (The option it says to use for portable distributions). I believe it would be fine with the default settings on a clean system.

 

-Jason Smith

0 Kudos
Message 15 of 16
(1,726 Views)

Great....your solution with the changes in the "##attributes.ini" and the "%Common AppData% directory" works!

 

Thank you very much for your help.

 

 

0 Kudos
Message 16 of 16
(1,699 Views)