社区
进程/线程/DLL
帖子详情
如何调用VC DLL显示界面?
huangxi1981
2003-08-25 10:16:33
我有个带界面的DLL,在定义导出函数的时候怎么定义才能正常的调用?
这是我写的DLL中导出函数实现部分:
extern "C" _declspec(dllexport) bool netpower()
{
CTD a;
a.DoModal();
return TRUE;
}
CTD是一个界面类
运行通过但测试的时候界面无法显示
请问错在那里?
...全文
300
5
打赏
收藏
如何调用VC DLL显示界面?
我有个带界面的DLL,在定义导出函数的时候怎么定义才能正常的调用? 这是我写的DLL中导出函数实现部分: extern "C" _declspec(dllexport) bool netpower() { CTD a; a.DoModal(); return TRUE; } CTD是一个界面类 运行通过但测试的时候界面无法显示 请问错在那里?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ripyu
2003-08-25
打赏
举报
回复
最好返回指针,在主程序中
显示
huangmin314
2003-08-25
打赏
举报
回复
关注
huangxi1981
2003-08-25
打赏
举报
回复
调用成功
非常感谢!
zhangyilan
2003-08-25
打赏
举报
回复
为了使用对话框资源,需要添加
extern "C" _declspec(dllexport) bool netpower()
{
// 这一句很重要
AFX_MANAGE_STATE(AfxGetStaticModuleState( ));
CTD a;
a.DoModal();
return TRUE;
}
huangxi1981
2003-08-25
打赏
举报
回复
哦,能说具体点吗?
我是用c++builder来调用
调用程序是:
TForm1 *Form1;
typedef bool (__cdecl *_netpower)();
typedef int (__stdcall *_maxvalue)(int val);
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
HINSTANCE hDLL;
_netpower netpower;
// SetResourceHandle(theApp.m_hInstance);
hDLL = LoadLibrary("testdll.dll");
netpower = (_netpower)GetProcAddress(hDLL, "netpower");
netpower();
FreeLibrary(hDLL);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::BitBtn1Click(TObject *Sender)
{
HINSTANCE hDLL;
_maxvalue maxvalue;
hDLL = LoadLibrary("testdll.dll");
maxvalue = (_maxvalue)GetProcAddress(hDLL, "maxvalue");
int j=maxvalue(1);
ShowMessage(IntToStr(j));
FreeLibrary(hDLL);
}
后面那个调用是测试调用VC写的不含界面的DLL,能成功调用
但调含界面的却不行
是调用程序的问题还是DLL的问题?
生成Qt
界面
动态库,用
VC
对话框
调用
显示
Qt做的仿360
界面
,然后打包成动态库。用
VC
++的MFC对话框按钮
调用
Qt
界面
动态库。 Qt_
VC
.rar解压后有4个包。 1,exe_dlg_call_qt
dll
.rar 没有源代码的产品包,里面只有exe和
dll
文件。 2,
VC
_CallQt
dll
.rar
VC
平台的MFC对话框
调用
Qt
界面
动态库源代码包。 3,Qt_qtdialog_360.rar Qt平台的仿360
界面
源代码包。 4,Qt_
DLL
.rar Qt的动态库生成及
调用
参考源代码包。 主要是针对我的 “Qt
界面
动态库被MFC对话框
调用
“ 做个优化修改完善。
QT编写
DLL
调用
示例 方法 参数 返回值 事件回调
QT编写
DLL
给外部程序
调用
示例 方法 参数 返回值 事件回调 : 1:C#或者 NET 第一步:引入命名空间; using System Runtime InteropServices; 第二步:声明函数 必须与实际
DLL
中函数名及参数一致; [
Dll
Import "qt
dll
dll
" ] public static extern int add int i ; 第三步:
调用
函数执行; Console WriteLine add 10 ToString ; 2:QT 第一步:引入头文件; #include <QLibrary> 第二步:定义函数指针 以备
调用
; typedef int Add int ; 第三步:载入
DLL
调用
函数执行; QLibrary lib "qt
dll
dll
" ; lib load ; Add add Add lib resolve "add" ; add 50 ; 3:C或C++ 第一步:引入头文件; #include <windows h> 第二步:定义函数指针; typedef int Add int ; 第三步:载入
DLL
调用
函数执行; HINSTANCE h
Dll
LoadLibrary "qt
dll
dll
" ; 载入
DLL
获取句柄 if h
Dll
NULL { Add add Add GetProcAddress h
Dll
"add" ; 获取函数地址 printf "%d" add 110 ; FreeLibrary h
Dll
; 释放
DLL
}">QT编写
DLL
给外部程序
调用
示例 方法 参数 返回值 事件回调 : 1:C#或者 NET 第一步:引入命名空间; using System Runtime InteropServices; 第二步:声明函数 必须与实际
DLL
中函数名及参数一致; [
Dll
Import "qt
dll
dll
" ] public static extern int add in [更多]
用
VC
#.NET开发交互式CAD系统
用
VC
#.NET开发交互式CAD系统,包括结合GDI+和OPENGL两种方案。 联系平台客服可开发票。
C#
调用
VC
++写的
DLL
(源码,可调试C++的
DLL
)
C#工程,
调用
VC
++写的
DLL
适用于:C#编写
界面
,核心封装
VC
代码 可对C++写的代码进行调试模式
创建及
调用
基于QT5 QML的
DLL
(举例QML中使用QZXing识别二维码)
Qt Quick 技术的引入,使得你能够快速构建 UI ,具有动画、各种绚丽效果的 UI 都不在话下。在许多情况下基于QML开发的漂亮的
界面
想将他设计成组件提供给其他人使用,又不想让别人看到QML源码,另外如果其他人是基于
vc
环境又如何使用你的QML
界面
呢?本例子代码实现将基于QT.6 QML开发的模块编译成可以在VS环境中直接使用的
DLL
库文件,并举例使用QZXing识别二维码。
进程/线程/DLL
15,471
社区成员
49,182
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章