winio.dll加载失败注册失败 求有经验的高手解答

KingOfPorcupine 2018-06-25 09:08:32
如题 以前学做外挂的时候 用到了winio.dll
代码基本抄的 当时程序做好 被抓住 号给封了 就没做了
现在想做个脚本 把当时的程序翻出来 再运行时一直提示加载winio失败
代码是没问题的 当初运行是良好的
但我重装了系统 XP的 原来也是XP的
重装之后就不能运行了
网上说要把winio的3个文件放在system32下 然后运行 regsvr32 注册winio.dll 但一直提示
“已加载 winio.dll,但没有找到 DllRegisterServer 输入点。无法注册这个文件。”

搞的人都晕了 求有经验的高手解答
...全文
935 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
舉杯邀明月 2018-06-30
  • 打赏
  • 举报
回复
引用 13 楼 KingOfPorcupine 的回复:

真的没人可以解决这个问题吗

我在网上找到一个WinIO 2.0的文件。
试了一下,WinXP下这样可以成功:
1. 系统System32放上一份 WinIO.dll和WinIO.sys;
2. 在“程序”所在的目录中,同样放一份 WinIO.dll和WinIO.sys 。

注意在IDE中运行时,你的 App.Path 具体是哪个路径!

反正我这样试的时候,应该是“成功”了的。
之前只放“程序”目录,只放System32目录,调用 InitializeWinIo( ) 是失败的。
当“两处放文件”后,成功了……
然后,试了一下这个“运用”的代码:获取CPU温度
http://bbs.eyuyan.com/read.php?tid=221625

不过唯有 GetPortVal( )执行失败, 得到的值是 -1 (是否“端口号”不对?或硬件不支持了?)
那两个“写端口数据”的操作都是返回1(TRUE,执行成功)的。

KingOfPorcupine 2018-06-29
  • 打赏
  • 举报
回复

真的没人可以解决这个问题吗
舉杯邀明月 2018-06-28
  • 打赏
  • 举报
回复
哦,这是“最高级管理员登录”的了。
你这是WinXP系统的吧,网上下载的Ghost镜像WinXP系统,几乎都是直接启用了Administrator登录计算机的。

当然,你现在的“winio.dll加载失败”我也就不清楚是何原因了。
舉杯邀明月 2018-06-28
  • 打赏
  • 举报
回复
引用 7 楼 KingOfPorcupine 的回复:
[quote=引用 6 楼 Chen8013 的回复:]
会不会是需要“权限”,你要在IDE中运行,试下“以管理员身份运行”启动VB6,再执行代码。

已经是管理员权限了 个人电脑 [/quote]
是直接以“Administrator”账号登录系统的?

如果是自己创建的“管理员”,没有全部的权限,比“Administrator”的权限要低一截。
KingOfPorcupine 2018-06-28
  • 打赏
  • 举报
回复
引用 6 楼 Chen8013 的回复:
会不会是需要“权限”,你要在IDE中运行,试下“以管理员身份运行”启动VB6,再执行代码。

已经是管理员权限了 个人电脑
KingOfPorcupine 2018-06-28
  • 打赏
  • 举报
回复

这应该是管理员权限了 如果不是 还请楼上 再费心解答 谢谢
KingOfPorcupine 2018-06-28
  • 打赏
  • 举报
回复

是Administrator啊
不过不需密码 上传图片失败 不然我发图给你看看
舉杯邀明月 2018-06-27
  • 打赏
  • 举报
回复
会不会是需要“权限”,你要在IDE中运行,试下“以管理员身份运行”启动VB6,再执行代码。
KingOfPorcupine 2018-06-27
  • 打赏
  • 举报
回复
If InitializeWinIo = False Then
MsgBox "驱动程序加载失败!"
Unload Me
End If '这是form load事件中的代码

Public Declare Function MapPhysToLin Lib "WinIo.dll" (ByVal PhysAddr As Long, ByVal PhysSize As Long, ByRef PhysMemHandle) As Long
Public Declare Function UnmapPhysicalMemory Lib "WinIo.dll" (ByVal PhysMemHandle, ByVal LinAddr) As Boolean
Public Declare Function GetPhysLong Lib "WinIo.dll" (ByVal PhysAddr As Long, ByRef PhysVal As Long) As Boolean
Public Declare Function SetPhysLong Lib "WinIo.dll" (ByVal PhysAddr As Long, ByVal PhysVal As Long) As Boolean
Public Declare Function GetPortVal Lib "WinIo.dll" (ByVal PortAddr As Integer, ByRef PortVal As Long, ByVal bSize As Byte) As Boolean
Public Declare Function SetPortVal Lib "WinIo.dll" (ByVal PortAddr As Integer, ByVal PortVal As Long, ByVal bSize As Byte) As Boolean
Public Declare Function InitializeWinIo Lib "WinIo.dll" () As Boolean
Public Declare Function ShutdownWinIo Lib "WinIo.dll" () As Boolean
Public Declare Function InstallWinIoDriver Lib "WinIo.dll" (ByVal DriverPath As String, ByVal Mode As Integer) As Boolean
Public Declare Function RemoveWinIoDriver Lib "WinIo.dll" () As Boolean


'这是本身就有的模块中的代码

我认为代码是没有问题的 问题出在这几次的重装系统中 之前没有重装的时候程序是可用的 运行也是没问题的
重装之后就不行了。。。。
of123 2018-06-26
  • 打赏
  • 举报
回复
3个文件是
WinIo.sys (用于win xp下的驱动程序),
WINIO.VXD (用于win 98下的驱动程序),
WinIo.dll (封装函数的动态链接库)。

无需注册。
of123 2018-06-26
  • 打赏
  • 举报
回复
在一个 .bas 文件中声明:
Declare Function MapPhysToLin Lib "WinIo.dll" (ByVal PhysAddr As Long, ByVal PhysSize As Long, ByRef PhysMemHandle) As Long
Declare Function UnmapPhysicalMemory Lib "WinIo.dll" (ByVal PhysMemHandle, ByVal LinAddr) As Boolean
Declare Function GetPhysLong Lib "WinIo.dll" (ByVal PhysAddr As Long, ByRef PhysVal As Long) As Boolean
Declare Function SetPhysLong Lib "WinIo.dll" (ByVal PhysAddr As Long, ByVal PhysVal As Long) As Boolean
Declare Function GetPortVal Lib "WinIo.dll" (ByVal PortAddr As Integer, ByRef PortVal As Long, ByVal bSize As Byte) As Boolean
Declare Function SetPortVal Lib "WinIo.dll" (ByVal PortAddr As Integer, ByVal PortVal As Long, ByVal bSize As Byte) As Boolean
Declare Function InitializeWinIo Lib "WinIo.dll" () As Boolean
Declare Function ShutdownWinIo Lib "WinIo.dll" () As Boolean
Declare Function InstallWinIoDriver Lib "WinIo.dll" (ByVal DriverPath As String, ByVal Mode As Integer) As Boolean
Declare Function RemoveWinIoDriv
舉杯邀明月 2018-06-25
  • 打赏
  • 举报
回复
winio.dll有哪“3个文件”?
regsvr32注册dll,提示“已加载 winio.dll,但没有找到 DllRegisterServer 输入点。无法注册这个文件。”
一般来说,说明这个不是AcitveX dll,是不用注册的(也不能注册)。
应该是有导出函数的dll,在VB6中用Declare声明相应的导出函数,代码中进行调用。
也可以通过LoadLibrary、GetProcAddress,采用一定的手段实现动态调用。

742

社区成员

发帖
与我相关
我的任务
社区描述
VB 版八卦、闲侃,联络感情地盘,禁广告帖、作业帖
社区管理员
  • 非技术类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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