WIN启动无法加载VBScript.dll

WIN启动无法加载VBScript.dll,第1张

下载一个VBScriptdll或从别的电脑拷过来 建立一个文件夹,里边包含VBScriptdll,然后建立abat文件, 内容: copy c:\windows\system32\VBScriptdll VBScriptbak /y

copy VBScriptdll c:\windows\system32\VBScriptdll /y

c:\windows\system32\regsvr32 c:\windows\system32\VBScriptdll

保存好,然后执行该abat文件 重启

HMODULE hModule = GetModuleHandle(_T("bdll")); // 获取bdll句柄

MODULEINFO mi;

GetModuleInformation(NULL, hModule, &mi, sizeof(MODULEINFO)); // 获取bdll信息

// milpBaseOfDll就是bdll的加载起始地址

加载dll后获取dll句柄:GetModuleHandle(lpModuleName) lpModuleName是模块的名称,可以是dll或者exe,如果没有扩展名,则默认为dll 如果模块名称通过路径来指定,则路径中必须使用"\",而不是"/" 执行时,该函数通过名称(大小写不敏感)来查看调用进程已映射的模块,返回符合的模块句柄。 如果GetModuleHandle(NULL),则返回调用进程本身的句柄

Vbs吧?Vb不是这样调用的。

试试改下代码:

Dim dm As Object '声明 DM 为控件类型

Shell "regsvr32 dmdll /s" '注册大漠插件到系统

Set dm = CreateObject("dm") '创建大漠插件对象

dmdmsoft '调用dm的函数或者方法

问题补充:

Vb的话就放在过程窗体模块的声明部分,或者标准模块;在Vbs应该是放在过程外面vbs代码的所有过程之前。

在窗体的声明过程直接写Dim dm as Object

在标准模块写Public dm as Object

后面这两句不变

Shell "regsvr32 dmdll /s" '注册大漠插件到系统

Set dm = CreateObject("dmdmsoft") '创建大漠插件对象

至于Shell的这句建议还是要给定dmdll的文件完整路径吧!!!!!

放在和程序相同目录就可以Shell "regsvr32exe /s " & AppPath & "\dmdll"

canusbdrvdll文件缺失的问题,修复步骤如下:

1、通过一定的途径获取到canusbdrvdll文件,例如网上寻找并下载。

2、将canusbdrvdll文件复制到“C:\Windows\System32”这个目录下。

3、然后,点击“开始菜单”中的“运行”按钮,输入:regsvr32 canusbdrvdll,点击确定。

4、最后,在d出的安装完成canusbdrvdll的提示上,点击确定。

dim wshshell

set wshshell = createobject("wscriptshell")

wshshellrun "xcopy d:\gffxdll c:\windows /y", vbhide

wshshellrun "regsvr32 gffxdll"

代码假定你的文件在d:\,如果路径带有空格,在路径字符串前后加chr(34)并用&号连接。

如 wshshellrun "xcopy " & chr(34) & "D:\Program Files\Kingsoft\Powerword 2007\avbs" & chr(34) & " c:\ /y"

以上就是关于WIN启动无法加载VBScript.dll全部的内容,包括:WIN启动无法加载VBScript.dll、怎么获取自身程序指定DLL模块的入口地址、加载dll后获取dll句柄等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9664868.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存