首页新闻找找看学习计划

c#动态加载32位的c dll的问题

0
悬赏园豆:30 [已解决问题] 解决于 2019-09-23 12:03

问题:
和第三方应用对接,对方提供了32位的c编写的dll,通过动态加载非托管dll的方式调用dll里面的方法,在程序中直接运行是可以的,但是部署到iis中出错,程序出现假死现象。iis服务器是64位的。
目前处理措施:
参照引用32位c# dll的方式,将iis应用程序池-启用32位应用程序设置为true,结果不起作用。

还有其他的处理方式吗?

最美的不是下雨天的主页 最美的不是下雨天 | 初学一级 | 园豆:34
提问于:2019-06-19 16:23
< >
分享
最佳答案
0

这个问题有些复杂,如下是几个线索
1 单独的WEB程序【不调用32DLL】在32位模式下行吗?
2 1可以的话,可以验证32DLL在独立的执行文件中这个机器上运行是否可以?
3 如上都可以的话,检查32DLL是否需要特别的权限,IIS运行用户的权限比较低
过程中可以查看windows的事件日志,报错信息可以参考

收获园豆:30
2012 | 专家六级 |园豆:18993 | 2019-06-20 08:32

1、第一点是可以的;2、Web程序直接在VS中直接运行是可以的,但是部署到iis中就不行,dll文件给了所有人权限。

最美的不是下雨天 | 园豆:34 (初学一级) | 2019-06-20 08:44
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册