联系我们

与泰克代表实时聊天。 工作时间:上午 9:00 - 下午 5:00(太平洋标准时间)。

电话

致电我们

工作时间:上午9:00-下午5:00(太平洋标准时间)

下载

下载手册、产品技术资料、软件等:

下载类型
型号或关键字

反馈

As a Windows C/C++ DLL, the RSA API can be used in many C/C++ development environments including National Instruments LabWindows/CVI.  However, due to the way LabWindows/CVI 2010 handles the loading of external .DLLs, the compiled executable will experience a fatal run-time error.  When this occurs you will receive a message like the following:FATAL RUN-TIME ERRORUnknown source position, thread id 0x0000XXXXA non-debuggable thread caused a ‘General Protection’ fault at address 0xXXXXXXXX.Please note: this issue has been confirmed to exist in LabWindows/CVI 2010 and may exist in other versions of LabWindows/CVI as well.  LabWindows/CVI 2015 has shown not to exhibit this problem.

问题:

As a Windows C/C++ DLL, the RSA API can be used in many C/C++ development environments including National Instruments LabWindows/CVI.  However, due to the way LabWindows/CVI 2010 handles the loading of external .DLLs, the compiled executable will experience a fatal run-time error.  When this occurs you will receive a message like the following:FATAL RUN-TIME ERRORUnknown source position, thread id 0x0000XXXXA non-debuggable thread caused a ‘General Protection’ fault at address 0xXXXXXXXX.Please note: this issue has been confirmed to exist in LabWindows/CVI 2010 and may exist in other versions of LabWindows/CVI as well.  LabWindows/CVI 2015 has shown not to exhibit this problem.

答案:

National Instrument has confirmed this issue with other external libraries and has written up a KnowledgeBase article showing how to fix the issue.  You can read this article at the following URL.

http://digital.ni.com/public.nsf/allkb/14B6D031F7AC4B53862577AE0060F844

This article explains how to add keys to your Windows Registry to force LabWindows/CVI to load the external .DLLs in a specified order.  This technique will be used to load the RSA API .DLLs in the proper order so that the built executable will not experience a fatal run-time error.

The simplest way to add the keys to your registry is to run the following registry script.

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\National Instruments\CVI\10.0\DLL Load Order]
"DLL1"="RSA_API.dll"
"DLL2"="RSA300API.dll"
"DLL3"="RSA500API.dll"
"DLL4"="BaseDSP.dll"
"DLL5"="GPMeasDSP.dll"

Open Notepad.exe and Copy and paste the script above into the Notepad window.

RSA20API20Registry20Fix20Notepad

Go to the File menu and select Save As…

RSA20API20Registry20Fix20Save20As

Save the file to your computer’s Desktop as a .reg file.  Enter the filename and then change the Save as type to All Files (*.*) then click the Save button.

Navigate to the folder where you saved the .reg file.  Double-click the .reg file to launch the Registry Editor.

RSA20API20Registry20Fix20Regedit

Click Yes to allow the changes to be made and the new Registry keys to be added.

 

Rebuild your LabWindows/CVI project.  Your executable should now run without a Fatal Run-time Error.


常见问题 ID 72206

查看所有常见问题 »