请教一个VC++2010的使用外部dll的问题

betagain 2012-02-29 10:40:13
有一个dll,以前是在vb中使用,使用方式如下:
SET TAS = CreateObject("TAS180.TAS")
TAS.InitX "http://127.0.0.1:8080/tas/"
TAS.Login "username", "password"
.......

类似这样

现在被要求用vc++2010做成dll,目前为止做了下面这些

HINSTANCE hInst = LoadLibrary(L"TAS\\TAS.dll");
if(!hInst == NULL)
{
typedef void (* MYFUNC )(char*);
MYFUNC youFuntionNameAlias = NULL;
youFuntionNameAlias = (MYFUNC)GetProcAddress(hInst, "InitX");
if(youFuntionNameAlias) //到这里无法成功了,就是无法实例化InitX这个方法?
另外还请教,如果经过修改initX函数可用了,请问用法用VC++怎么写

}


因为是新手,很多写的不好的地方,还请谅解。

谢谢!
...全文
292 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
betagain 2012-02-29
  • 打赏
  • 举报
回复
谢谢大家,本人是新手,能不能直接帮我改写几句代码?
多谢了
Saleayas 2012-02-29
  • 打赏
  • 举报
回复
看看这个 CreateInstance
betagain 2012-02-29
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 zhao4zhong1 的回复:]
对ActiveX的dll不应该用LoadLibrary;应该用AfxOleRegisterTypeLib
[/Quote]

是吗?请问我这段代码该怎么改写啊,谢谢了
赵4老师 2012-02-29
  • 打赏
  • 举报
回复
对ActiveX的dll不应该用LoadLibrary;应该用AfxOleRegisterTypeLib
betagain 2012-02-29
  • 打赏
  • 举报
回复
修改后现在是这个状态了

HINSTANCE hInst = LoadLibrary(L"TAS\\TAS.dll");
if(!hInst == NULL)
{
typedef void (* MYFUNC )(char*);
MYFUNC youFuntionNameAlias = NULL;
youFuntionNameAlias = (MYFUNC)GetProcAddress(hInst, "InitX");
if(youFuntionNameAlias!=NULL)

请教,请问用法用VC++怎么写,怎么使用InitX这个函数?

}

betagain 2012-02-29
  • 打赏
  • 举报
回复
是非托管方式的mfc程序
Jim_King_2000 2012-02-29
  • 打赏
  • 举报
回复
隐式使用dll比较方便。
  • 打赏
  • 举报
回复
vs2010调用么

#import "xxx.dll"
betagain 2012-02-29
  • 打赏
  • 举报
回复
大家多帮忙啊~~
大家多帮忙啊~~
betagain 2012-02-29
  • 打赏
  • 举报
回复
大家多帮忙啊~~

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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