DIY

[完美解决]请大神赐教 ...

小08de军团[果猿] Rank: 1 果壳币: 6

发表于 2020-11-13 17:11:14 | 1 条回复 | 45 次浏览

RunApp "D:\ChangZhi\dnplayer2\dnplayer.exe"
Delay 3000
Hwnd1 = Plugin.Window.Foreground
Delay 1000
Plugin.Window.CloseEx Hwnd1
Delay 5000

这个运行就了好像会卡死脚本,还有更好的办法么?
最佳答案
2020-11-16 04:14:37
注册大漠
RunApp "notepad.exe"
Delay 1000
Hwnd1 = dm.EnumWindow(0, "无标题", "Notepad", 1 + 2) //调用大漠插件命令绑定计事本
TracePrint Hwnd1
Call dm.SetWindowState(Hwnd1, 13)//调用大漠插件命令杀掉该计事本进程
Sub 注册大漠
  need_ver = "3.1233"
  // 插件需要用到atl系统库,有些XP精简系统会把atl.dll精简掉. 为了防止注册失败,这里手动注册一下atl.dll
  Set ws = createobject("Wscript.Shell")
  ws.run "regsvr32 atl.dll /s"
  set ws=nothing
  // 释放附件>>>>>>>>>>>>>>>>>>>
  PutAttachment ".\Plugin", "RegDll.dll"
  PutAttachment "c:\梦幻资源", "dm.dll"
  Delay 100
  Dim iPath_
  iPath_ = Plugin.SysEx.GetDir(0)
  If Plugin.RegDll.Reg("c:\梦幻资源\dm.dll")=1 Then 
    TracePrint "——大漠注册成功——"
  End If
  // 这里判断是否注册成功
  set dm = createobject("dm.dmsoft")
  ver = dm.Ver()
  TracePrint "大漠版本号:"&ver
  if ver <> need_ver then
    // 先释放先前创建的dm
    set dm = nothing
    // 再尝试用regsvr32 来注册. 这里必须使用绝对路径。以免有别人把dm.dll释放在系统目录.造成版本错误.
    Set ws = createobject("Wscript.Shell")
    ws.run "regsvr32 c:\梦幻资源\dm.dll /s"
    set ws=nothing
    Delay 1500  
    // 再判断插件是否注册成功
    set dm = createobject("dm.dmsoft")
    ver = dm.Ver()
    if ver <> need_ver then
      // 这时,已经确认插件注册失败了。 弹出一些调试信息,以供分析.
      messagebox "插件版本错误,当前使用的版本是:"&ver&",插件所在目录是:"&dm.GetBasePath()
      messagebox "请关闭程序,重新打开本程序再尝试"
      ExitScript
    end if
  End If
End Sub

本题已回复代码,手机版浏览请
点击此处
发新帖
果壳王子[果壳校长] [王子殿下] Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20 果壳热讲师 独家品牌学院 果壳热大导师 果壳学院创始人 果壳热教职工 果壳热平台站长 果壳学院校长/副校长 果壳学长 果壳热研究生 果壳币: 6541

发表于 2020-11-16 04:14:37

果壳王子 —— 来自果壳热互助团队
注册大漠
RunApp "notepad.exe"
Delay 1000
Hwnd1 = dm.EnumWindow(0, "无标题", "Notepad", 1 + 2) //调用大漠插件命令绑定计事本
TracePrint Hwnd1
Call dm.SetWindowState(Hwnd1, 13)//调用大漠插件命令杀掉该计事本进程
Sub 注册大漠
  need_ver = "3.1233"
  // 插件需要用到atl系统库,有些XP精简系统会把atl.dll精简掉. 为了防止注册失败,这里手动注册一下atl.dll
  Set ws = createobject("Wscript.Shell")
  ws.run "regsvr32 atl.dll /s"
  set ws=nothing
  // 释放附件>>>>>>>>>>>>>>>>>>>
  PutAttachment ".\Plugin", "RegDll.dll"
  PutAttachment "c:\梦幻资源", "dm.dll"
  Delay 100
  Dim iPath_
  iPath_ = Plugin.SysEx.GetDir(0)
  If Plugin.RegDll.Reg("c:\梦幻资源\dm.dll")=1 Then 
    TracePrint "——大漠注册成功——"
  End If
  // 这里判断是否注册成功
  set dm = createobject("dm.dmsoft")
  ver = dm.Ver()
  TracePrint "大漠版本号:"&ver
  if ver <> need_ver then
    // 先释放先前创建的dm
    set dm = nothing
    // 再尝试用regsvr32 来注册. 这里必须使用绝对路径。以免有别人把dm.dll释放在系统目录.造成版本错误.
    Set ws = createobject("Wscript.Shell")
    ws.run "regsvr32 c:\梦幻资源\dm.dll /s"
    set ws=nothing
    Delay 1500  
    // 再判断插件是否注册成功
    set dm = createobject("dm.dmsoft")
    ver = dm.Ver()
    if ver <> need_ver then
      // 这时,已经确认插件注册失败了。 弹出一些调试信息,以供分析.
      messagebox "插件版本错误,当前使用的版本是:"&ver&",插件所在目录是:"&dm.GetBasePath()
      messagebox "请关闭程序,重新打开本程序再尝试"
      ExitScript
    end if
  End If
End Sub

本题已回复代码,手机版浏览请
点击此处

回复 道具 举报

发新帖
您需要登录后才可以回帖 登录 | 注册成为果猿 微信登录

手机版

© 2020-2030 果壳热 All rights reserved.

Powered by GUOHOT XS8.8. Theme designed by GUOKEHOT.

top bottom