Tôi muốn tạo tệp .vbs chạy tệp .xlsm với đặc quyền quản trị viên [trùng lặp]
Tôi muốn tạo tệp .vbs chạy tệp .xlsm với đặc quyền của quản trị viên.
Phương pháp tôi nghĩ ra là
- Chạy tệp excel với tư cách quản trị viên
- Mở tệp .xlsm từ Excel được mở bằng đặc quyền của quản trị viên
Tôi đã mở .xlsx với tư cách là quản trị viên, nhưng ...
Set objShell = CreateObject("Shell.Application")
objShell.ShellExecute "C:\Program Files (x86)\Microsoft Office\Office16\EXCEL.EXE", "" , "", "runas", 0
Tôi không thể kiểm soát tệp .xlsx mà tôi đã mở với tư cách quản trị viên bằng GetObject (, Excel.application)
Em kính nhờ anh chị giúp đỡ.
Trả lời
Hackoo
Bạn có thể thử với tệp vbs này:
Option Explicit
Call Run_as_Admin() ' We execute our script with admin rights !
Dim Ws,EXCEL_FILE_PATH
Set Ws = CreateObject("Wscript.Shell")
EXCEL_FILE_PATH = "C:\Path\file.xlsm" ' Just change this line into your path file
Ws.run EXCEL_FILE_PATH,1,True
'----------------------------------------
Sub Run_as_Admin()
If Not WScript.Arguments.Named.Exists("elevate") Then
CreateObject("Shell.Application").ShellExecute DblQuote(WScript.FullName) _
, DblQuote(WScript.ScriptFullName) & " /elevate", "", "runas", 1
WScript.Quit
End If
End Sub
'--------------------------------------
Function DblQuote(Str)
DblQuote = Chr(34) & Str & Chr(34)
End Function
'-------------------------------------