c# - COM 库给出问题
问题描述
我有问题。我有一个开发用于指纹读取器的 Winform。
因此,当我使用 dll 处理指纹读取器时,我会执行以下操作:
1) 我创建了对 dll 的引用
2)然后我添加 using 语句来使用命名空间
3)然后我创建一个 ZKFPEngX 对象
4)然后我创建该对象的一个实例并开始使用该实例。
在我的开发环境中的调试模式下,这可以完美运行。
一旦我将它打包并将程序安装到另一台电脑上,它就会在到达使用该 dll 的任何代码部分时中断。
我得到的错误是:
我已确保输出包含 dll,并且在安装时在应用程序目录中有 dll。
我不确定从这里到哪里寻找错误。
编辑:
我试图通过将 dll 复制到 System32 来手动注册 dll,然后尝试使用 regsvr32.exe 注册 dll
regsvr interop.ZKFPEngControlX.dll
这会引发以下错误
我确实尝试注册 system32 文件中的另一个 dll ......那个工作就像一个魅力
进一步阅读后,“互联网”表明该dll不需要注册,或者更确切地说是不能。
我的问题是我现在如何使用它,为什么它会在我的开发环境中工作?
解决方案
我可能是错的,但是似乎没有DLL
注册
Regsvr32 是一个命令行实用程序,用于注册和注销 OLE 控件,例如 Windows 注册表中的 DLL 和 ActiveX 控件。Regsvr32.exe 安装在 Windows XP 和更高版本的 Windows 中的 %systemroot%\System32 文件夹中。
Regsvr32 [/u] [/n] [/i[:cmdline]]<dllname>
/u - 注销服务器
/i - 调用 DllInstall 并传递一个可选的 [cmdline];当它与/u一起使用时,它调用dll卸载
/n - 不调用 DllRegisterServer;此选项必须与 /i 一起使用
/s——静音;不显示任何消息框
延伸阅读
推荐阅读
- django - Django 夹层无法识别正确的站点
- python - Selenium GeckoDriver 启动 Firefox 浏览器很慢
- python - 无法让 gmplot 正确绘制直线
- c++ - `type_alias
函数参数中的 {}` VS `char[N]{}` - selenium - Jenkins 的 Selenium 插件无法将 jar 文件复制到从站
- python - Python - data.to_csv 输出格式
- javascript - 如何检测angularjs中的浏览器选项卡更改
- statistics - 标准差和t检验的自由度损失相同吗?
- css - 如何冻结Sphinx中的第一列和第一行
- arrays - Laravel Scout toSearchableArray() 没有被调用?