为了账号安全,请及时绑定邮箱和手机立即绑定

请问我该怎么用vb重写这个函数?

请问我该怎么用vb重写这个函数?

C++
蝴蝶不菲 2023-04-10 13:09:48
这是调用一个dll里面的。void __stdcall JPR_SetCallBack(int nHandleClient,MyDVRCallBack lpfnCallBack ,void* pContext);函数说明:设置系统回调函数参数说明:int nHandleClient: 连接句柄,对应于JPR_ClientStartUp返回的可用值MyDVRCallBack lpfnCallBack 回调函数指针Void *pContext 回调函数的上下文,由用户提供备注: 在所有函数前必须调用 Void *pContext 这个是什么意思啊?我要疯了,还有回调函数怎么处理啊。期待那位给解答下。不胜感激!!
查看完整描述

2 回答

?
炎炎设计

TA贡献1808条经验 获得超4个赞

假如你的dll的路径是这样的:c:\1.dll
那么应该在使用前先申明一下这个函数:
Public Declare Sub JPR_SetCallBack Lib "c:\1.dll" (int nHandleClient,long lpfnCallBack ,long pContext)
注意:
1、Void *pContext 代表一个指针,具体是什么类型要看上下文,这里用long类型数据来存放指针。
2、MyDVRCallBack lpfnCallBack,按字面上理解是一个函数地址,存放的也是指针,这里也用long型变量存放指针。调用的时候要用addressof()函数(貌似是这么写的。)来获得函数指针。

查看完整回答
反对 回复 2023-04-12
?
汪汪一只猫

TA贡献1898条经验 获得超8个赞

其实这是一个XML文件搞的鬼,将以下内容复制到记事本中,保存为“应用程序文件名.exe.manifest”
比如程序是singun.exe,就保存为singun.exe.manifest,放在程序同一文件夹下,再启动程序!

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
type="win32"
name="DelphiApplication"
version="1.0.0.0" 
processorArchitecture="*"/>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
publicKeyToken="6595b64144ccf1df"
language="*"
processorArchitecture="*"/>
</dependentAssembly>
</dependency>
</assembly>  

还有一个更好的方法,下载eXeScope,打开你的exe文件,点击工具栏上的XP风格按钮,再打开你的程序看看!

查看完整回答
反对 回复 2023-04-12
  • 2 回答
  • 0 关注
  • 148 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信