未能添加对""的应用。请确保此文件可访问并且是一个有效的程序集或COM组件

分类:.Net知识问答| 发布:camnprbubuol| 查看: | 发表时间:2011/3/22

C#添加引用不成功,提示:  
未能添加对HD.dll的引用。请确保此文件可访问并且是一个有效的程序集或COM组件

我需要用到这个Dll文件中的接口函数

 

非.NET的dll需要DllImport。

 

C#添加引用需要这个dll本身是.net的程序集,或者是一个COM组件。

如果是一个标准的C导出Dll,那么需要用DllImport导入函数,参考互操作内容

实际调用类似于这样的代码

 public class MPwdMngAPI
  {
  [DllImport("PwdMng.dll", CharSet = CharSet.Ansi, EntryPoint = "SetUserFirstLogin")]
  public extern static bool ResetUserToFirstUse(String username);

  [DllImport("PwdMng.dll", CharSet = CharSet.Ansi, EntryPoint = "ChangePassword")]
  public extern static int ChangePassword(String userName, String oldPwd, String newPwd);

 

补充一点:SetUserFirstLogin和ChangePassword是C++ dll的导出API

#ifdef PWDMNG_EXPORTS
#define PWDMNG_API __declspec(dllexport)
#else
#define PWDMNG_API __declspec(dllimport)
#endif

#ifdef __cplusplus
extern "C" {
#endif

PWDMNG_API BOOL SetUserFirstLogin(const char* username, BOOL isFirstLogin);
PWDMNG_API int ChangePassword(const char* username, const char* oldPwd, const char* newPwd);

#ifdef __cplusplus
}
#endif

365据说看到好文章不转的人,服务器容易宕机
原创文章如转载,请注明:转载自郑州网建-前端开发 http://camnpr.com/
本文链接:http://camnpr.com/archives/244.html