我显示Load入DLL成功了,却初始化不成功。高手来帮帮忙啊

ghjkl998 2008-09-12 11:14:50
我装载入DLL返回成功了,可是初始化硬件却不成功。返回的值总是为0;
HINSTANCE hModule = LoadLibrary("GLIB.dll");//加载DLL
if (NULL == hModule)
{
AfxMessageBox("load GLIB.dll error");
return ;
}
KKInit = (PLVGA_Init)GetProcAddress(hModule,"KKInit");

if (NULL == KKInit)
{
AfxMessageBox(" load kkinit error");
FreeLibrary(hModule);
}
else
{
HWND hWnd;
// hWnd=AfxGetMainWnd()->GetSafeHwnd();/*AfxGetApp()->m_pMainWnd->m_hWnd*/
BOOL SUCCE;
SUCCE = KKInit(this->GetSafeHwnd(),TRUE,800,600); // 我想要SUCCE返回值为TRUE,可是现在却总是返回为0;
if (!SUCCE){
AfxMessageBox(" load kkinit failed");
return;
}

我想要SUCCE返回值为TRUE,可是现在却总是返回为0; 上面注释过的是我都试过的方法,但还是不行。...
我在.h文件中是这样定义的:
typedef int(WINAPI *PLKK_Init)(HWND hWnd,BOOL bNewZoom, int NewZoomW, int NewZoomH);
PLVGA_Init KK_Init;

这硬件的SDK是这样的:
int EXPORT WINAPI KK_Init (HWND hWnd, BOOL bNewZoom, int NewZoomW, int NewZoomH);

调用此函数对板卡进行初始化。hWnd为接收消息的窗口句柄(hWnd为调用此函数的窗口句柄)。在所采集信号的分辨率、刷新频率发送变化时,板卡会给该窗口发送数值为WM_USEG+100的消息

我做的是从板卡采集数据后直接保存为视频文件。所有没有窗口。只做了一个对话框,上面有两个BUTTON。一个开始,一个停止。
现在我估计SUCCE = KKInit(this->GetSafeHwnd(),TRUE,800,600);这个hWnd写出问题了,一直没有取到值。不知取什么值好,后面的参数都是对的了吧。
谁给帮忙解决一下啊。弄了蛮久了搞不定了。
我现在没分了。等有分了一定给补上:)
...全文
163 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
ghjkl998 2008-09-14
  • 打赏
  • 举报
回复
我没有创建窗口呢~~是不是就不行的呀。
还有这个是初始化的,初始化都不行了,那窗口怎么创建呀?
谁能给说一下么
菜牛 2008-09-12
  • 打赏
  • 举报
回复
对话框中也是GetSafeHwnd()获取窗口句柄,不过要确保窗口已经创建,可以在C...Dlg::OnInitDialog()中执行。

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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