vbs中提示没有在该机执行windows脚本宿主的权限怎么解决

发布时间:2020-11-09 15:26:50 作者:Leah
来源:亿速云 阅读:840

vbs中提示没有在该机执行windows脚本宿主的权限怎么解决?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

以管理员身份运行程序的vbs命令

1、检查系统是否禁止使用了脚本运行,即打开“INTERNET选项”的“安全”选项卡里“自定义级别”,看看“ActiveX空件及服务”禁用的选项。
2、运行 regsvr32 scrrun.dll,即打开运行输入CMD,输入regsvr32 scrrun.dll,再回车。
3、最关键的一步,即看看注册表里的这个位置HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Script Host\Settings在右边的窗口中是不是有个名为 Enabled的DWORD键值,有的话把它删除或者把值该为 1 即可。
4、重新运行VBS文件即将正常。

VBS批量导入图片功能

'****************** Const ****************
'---- CuRsorTypeEnum Values ----
Const adOpenForwardOnly = 0
Const adOpenKeyset = 1
Const adOpenDynamic = 2
Const adOpenStatic = 3

'---- LockTypeEnum Values ----
Const adLockReadOnly = 1
Const adLockPessimistic = 2
Const adLockOptimistic = 3
Const adLockBatchOptimistic = 4

'---- CuRsorLocationEnum Values ----
Const adUseServer = 2
Const adUseClient = 3

'---- Custom Values ----
Const cuDSN = "test"

Const cuUsername = "sa"
Const cuPassword = ""

'*************** main sub ******************

Call ImageExport()

'*************** define function ***********

Function ImageExport()
  'on error resume next
  Dim sSQL,Rs,Conn,sfzRs,sFilePath,sImgFile,xml
  Dim Ados,fso,f,oShell,sErrFile,sSucFile,iErr,iSuc
  Set fso = CreateObject("Scripting.FileSystemObject")
  
    ' Create Stream Object
  set Ados=CreateObject("Adodb.Stream")
    Ados.Mode=3
    Ados.Type=1

  Set Conn=CreateObject ("adodb.Connection")
  Conn.CuRsorLocation =adUseClient
  Call Init_Connection(Conn)
  Set Rs=CreateObject ("adodb.recordset")
  Set sfzRs=CreateObject ("adodb.recordset")
  
  sFilePath=WScript.ScriptFullName
  sFilePath=left(sFilePath,len(sFilePath)-len(WScript.ScriptName))  
ssql="SELECT RYBH, PHOTO FROM TP_ZPXX WHERE (RYBH IN (SELECT DISTINCT RYBH FROM TP_BMKM WHERE (KSZQBH = 18) AND (JFBZ = 1)))"
  sfzRs.Open sSQL,Conn,adOpenForwardOnly 
  iSuc=sfzRs.RecordCount 
  
  'Get SFZH From DataBase and import images
  while not sfzRs.EOF 
    sImgFile= sFilePath & sfzRs("RYBH") & ".jpg"  
    Ados.Open     
    Ados.Write (sfzRs("PHOTO").GetChunk(4500000))    
    Ados.SaveToFile sImgFile,1     
    sfzRs.MoveNext     
    Ados.Close 
  wend 
  
  sfzRs.Close 
  Conn.Close 
  
  'Release Object
  set Rs=nothing:set sfzRs=nothing:set Conn=nothing:set Ados=nothing
  
  msgbox iSuc & "张照片导出成功",64 ,"照片导出"
    
  

  'Quit 
  WScript.Quit
  
End Function

Function Init_Connection(Conn)
  on error resume next  
ConnStr = "Provider=SQLOLEDB;Data Source=192.168.64.114;" & _
        "Initial Catalog=VoteInfo;User Id=sa;Password=123456;timeout=50"
  Conn.Open ConnStr  

  If Err.number Then    
    msgbox "数据库联接失败",16 ,"照片导出"
    exit function
  End If
End Function

VBS批量删除图片功能

'****************** Const ****************
'---- CuRsorTypeEnum Values ----
Const adOpenForwardOnly = 0
Const adOpenKeyset = 1
Const adOpenDynamic = 2
Const adOpenStatic = 3

'---- LockTypeEnum Values ----
Const adLockReadOnly = 1
Const adLockPessimistic = 2
Const adLockOptimistic = 3
Const adLockBatchOptimistic = 4

'---- CuRsorLocationEnum Values ----
Const adUseServer = 2
Const adUseClient = 3

'---- Custom Values ----
Const cuDSN = "test"

Const cuUsername = "sa"
Const cuPassword = ""

'*************** main sub ******************

Call ImageExport()

'*************** define function ***********

Function ImageExport()
  'on error resume next
  Dim sSQL,Rs,Conn,sfzRs,xml
  Dim Ados,fso,f,oShell,sErrFile,sSucFile,iErr,iSuc  'iSuc 文件总数
  Dim PicPath,PhysicPath,DelCount '删除文件数
  Set fso = CreateObject("Scripting.FileSystemObject")
  
    ' Create Stream Object
  set Ados=CreateObject("Adodb.Stream")
    Ados.Mode=3
    Ados.Type=1

  Set Conn=CreateObject ("adodb.Connection")
  Conn.CuRsorLocation =adUseClient
  Call Init_Connection(Conn)
  Set Rs=CreateObject ("adodb.recordset")
  Set sfzRs=CreateObject ("adodb.recordset")  
  
  sSQL="select sPath,sFile from ScanFile"
  sfzRs.Open sSQL,Conn,adOpenForwardOnly 
  iSuc=sfzRs.RecordCount 
  
  'Get SFZH From DataBase and import images
  while not sfzRs.EOF 
    PhysicPath="E:\VBS删除照片小程序" '物理路径    
    Ados.Open   
    PicPath =PhysicPath & sfzRs("sPath") &"\" &  sfzRs("sFile")    
    If (fso.FileExists(PicPath)) Then
      fso.DeleteFile(PicPath)  
      DelCount=DelCount+1
    end if    
    sfzRs.MoveNext     
    Ados.Close 
    if iSuc-DelCount=iSuc Then
      DelCount=0
    end if    
  wend 
  
  sfzRs.Close 
  Conn.Close 
  
  'Release Object
  set Rs=nothing:set sfzRs=nothing:set Conn=nothing:set Ados=nothing:set fso=nothing
  
  msgbox "共需要删除" & iSuc & "张照片,其中" & DelCount & "张照片删除成功," &iSuc-DelCount & "张照片未找到!",64 ,"照片删除"
    
  

  'Quit 
  WScript.Quit
  
End Function

Function Init_Connection(Conn)
  on error resume next  
ConnStr = "Provider=SQLOLEDB;Data Source=192.168.64.114;" & _
        "Initial Catalog=VoteInfo;User Id=sa;Password=123456;timeout=50"
  Conn.Open ConnStr  

  If Err.number Then    
    msgbox "数据库联接失败",16 ,"照片删除"
    exit function
  End If
End Function

关于vbs中提示没有在该机执行windows脚本宿主的权限怎么解决问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

推荐阅读:
  1. 解决Win10无法执行登录vbs脚本
  2. 通过vbs脚本不显示cmd 窗口执行bat 脚本

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

windows vbs bs

上一篇:利用易语言实现用符号表示文本型的方法

下一篇:javaScript代码飘红怎么办

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》