您的位置:首页 > 其它

Windows 7下VS引用Com组建编译错误的一个解决方法

2011-03-14 09:44 501 查看
项目中引用了C++写的COM组件,以前在windows server 2008 R2+VS 2010下没有问题,重装系统后使用windows 7+ VS 2010,编译报错:

Error 1 Cannot register assembly "E:\WorkFolder\CardManagement\SourceCode\CardMW\Rare.Card.Libary\bin\Debug\Rare.Card.Libary.dll" - access denied. Please make sure you're running the application as administrator. Access to the registry key 'HKEY_CLASSES_ROOT\Rare.Card.Libary.MifareOneHelper' is denied. Rare.Card.Libary

解决办法:

若将项目-属性-编译-Register for com interop前面的勾去掉,会出现运行时错误

解决方法:用Regasm进行手工注册

Win7下必须以管理员身份运行,否则注册不会成功。

C:\Windows\Microsoft.NET\Framework\v2.0.50727\Regasm.exe

如果不行,则重新启动VS,选择以管理员身份运行,则可以进行自动注册

实际上,还有一个变通的办法,直接使用管理员身份在开始菜单中打开VS就可以了,不过每次都这样打开有些麻烦而已。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐