无法建立全局Hook
全局Hook必须放到DLL中。
但据说VB通过特殊办法可以生成符合要求的DLL,但我没实验过,不敢说。
全局Hook必须放到DLL中。
但据说VB通过特殊办法可以生成符合要求的DLL,但我没实验过,不敢说。
解决方案 »
- VB中Dictionary如何使用?
- 請教是否可以在ListView中 , 當鼠標放在一個節點上會自動顯示節點的明細內容? 在什么事件中觸發呢?
- vsflexgrid控件如何實現數據更新
- 一个奇怪的问题!!!
- 我如何delete指定的數据表
- 怎样能使窗体没有边框,就像墙纸一样显示在桌面的某处?——高分
- 有关用printer做报表的分页问题
- 大侠们帮帮我啊!我搞了2天都没搞定头都大了!关于模拟点击的问题,我在这给大家跪下了
- 在VsFlexGrid中如何实现这样的功能 没分了 见谅
- 请教vb的常量
- 虽然这不是一个讲VB的贴子,但这里一个VB人很重要的贴子.我只能借这个地方向各位求助了.
- 有朋友知道如何在播放影音文件时,怎么才能截获图片或截获一个片断!
[email protected]
这个就够了
http://www.easthot.net/HotForum/topic.asp?topic_id=618&forum_id=1&Topic_Title=%C8%AB%BE%D6%B9%B3%D7%D3&forum_title=Visual+Basic&M=False&S=TrueBardo 写的 :)
作用是,在VC中调用VB中的函数,
DLL的名称为:test.dll
VC++的源代码:
BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}long ( __stdcall *ptest1)(long n);long __stdcall test1(long n)
{
ptest1 = (long (__stdcall *)(long))n;
(*ptest1)(2);
return n+1;
}在VB中:
把以下代码放在模块中
Public Function testCallBack(ByVal param As Long) As Long
MsgBox param
testCallBack = 0
End Function'把以下代码放在FORM中
Private Declare Function test1 Lib "test.dll" (ByVal n As Long) As Long
Private Sub Command1_Click()
MsgBox test1(AddressOf testCallBack)End Sub