在我安装了 NI-VISA 的开发 PC 上,一切正常。现在,我尝试通过 cx_Freeze 为其他 PC 制作“一体式”可执行文件。我在 setup.py 中找到了以下 DLL(与我使用 GTK+3 成功完成的方式相同)。
###################
##### NI-VISA #####
###################
## path to Windows libraries
visa_windows_dir = os.path.join("C:\\", "Windows", "SysWOW64")
## list of missing dlls from Windows directory
missing_visa_windows = [# Listdll.exe(with PyVISA) minus Listdll.exe(without PyVISA)
'msvcr71.dll',
'nipal32.dll',
'nipalu.dll',
'NiViSv32.dll',
'nipalut.dll',
'nirpc.dll',
'visa32.dll'
#'crypt32.dll',
#'msasn1.dll',
#'wintrust.dll',
#'winusb.dll',
#'wsock32.dll'
]
## path to visa libraries
visa_program_dir = os.path.join("C:\\", "Program Files (x86)",
"IVI Foundation", "VISA", "WinNT")
## list of missing dlls from program directory
missing_visa_program = [# from Listdlls.exe
os.path.join("Bin", "NiVi488.dll"),
os.path.join("Bin", "NiViAsrl.dll"),
os.path.join("Bin", "NiViEnet.dll"),
os.path.join("Bin", "NiViEnetAsrl.dll"),
os.path.join("Bin", "NiViPxi.dll"),
os.path.join("Bin", "NiViRpc.dll"),
os.path.join("Bin", "NiViUsb.dll"),
os.path.join("NIvisa", "PxiPlugins", "NiViPpiD.dll"),
os.path.join("NIvisa", "PxiPlugins", "NiViPpiP.dll"),
]
在运行 EXE 时,我仍然收到以下错误:OSError: Could not found VISA library. Please install VISA or pass its location as an argument.
我必须包含哪些文件/目录以及如何将其位置传递给 pyVISA 以便在 cx_Freeze 环境中运行?