调用win32 Dll问题:为什么相同的代码,WinForm与WebForm的结果不同?

webdiyer 2003-11-19 05:33:36
我们正在用Asp.net 开发的一个B/S项目中需要集成 RSA Security 公司的 SecurID 双因素身份认证系统,在集成前我们分别做一个WinForm和WebForm测试程序,两者的核心代码基本上完全一样,都是通过用C#调用相应的dll中的API函数来对用户进行验证,现在的问题是Winform程序可以正确地验证,而Webform的验证结果总是 AccessDenied,这个值是API函数返回的验证结果,而不是ASPNET没有操作权限,因为WebForm中调用相应的API函数后代码都被正确执行,包括测试与RSA Server服务器的通讯、发送用户名到服务器以及对用户进行验证,但是最后验证的结果总是不正确,百思不得其解,哪位高手若能解决这个问题,必将感激不尽。谢谢!
...全文
57 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
webdiyer 2003-11-21
  • 打赏
  • 举报
回复
思归老大,真是太感谢了,困扰我整整两天的问题终于解决了,你上面提到的那个Knowledge Base中的文章里面的示例简直和我们的代码如出一辙,只是调用的dll文件不同而已,再次表示感谢,另外不知能否再看看这个问题:http://expert.csdn.net/Expert/topic/2471/2471119.xml?temp=.4450495

即如何在C#代码中调用 *.lib 文件中的API函数?
saucer 2003-11-20
  • 打赏
  • 举报
回复
>>>AccessDenied

because normally the webform runs under the ASPNET account which has limited privileges, consider to use impersonation

http://support.microsoft.com/default.aspx?scid=kb;en-us;Q306158

there is also probability that the network credentials are not being passed across machine boundary

110,546

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧