主頁(yè) > 知識(shí)庫(kù) > 自動(dòng)以管理員身份運(yùn)行批處理bat文件(vbs與bat兩種方法)

自動(dòng)以管理員身份運(yùn)行批處理bat文件(vbs與bat兩種方法)

熱門標(biāo)簽:百度地圖標(biāo)注點(diǎn)距離代碼 佛山真人電銷機(jī)器人廠家 神行者美術(shù)館地圖標(biāo)注 如何用機(jī)器人進(jìn)行電銷 地圖標(biāo)注政府哪個(gè)部門管 除了地圖標(biāo)注還有這種生意嗎 齊齊哈爾高德地圖標(biāo)注店 哪里有便宜的地圖標(biāo)注公司 東營(yíng)快遞外呼系統(tǒng)

但是,批處理腳本不會(huì)默認(rèn)已管理員身份運(yùn)行,一般情況下,我會(huì)將腳本命名為"XXXXXX(請(qǐng)右鍵點(diǎn)擊,用管理員身份運(yùn)行!).bat",但總有些用戶會(huì)忽略這條提示,直接運(yùn)行,此時(shí)由于權(quán)限不足,導(dǎo)致腳本運(yùn)行失敗。

我們可以使用一種變通的方法,讓bat啟動(dòng)時(shí),首先調(diào)用vbs腳本,通過(guò)vbs腳本,以管理員身份調(diào)用該bat的 runas 部分

我們的腳本可以寫在runas 下,這樣就點(diǎn)擊該bat腳本,就可以已管理員身份運(yùn)行了

示例代碼如下

@ECHO OFF
setlocal EnableDelayedExpansion
color 3e
title 添加服務(wù)配置
 
PUSHD %~DP0  cd /d "%~dp0"
%1 %2
mshta vbscript:createobject("shell.application").shellexecute("%~s0","goto :runas","","runas",1)(window.close)goto :eof
:runas
 
::填寫自己的腳本
 
echo 執(zhí)行完畢,任意鍵退出
 
pause >nul
exit

VBS使用管理員權(quán)限啟動(dòng)BAT2

Set objShell = CreateObject(“WScript.Shell”)
strPath = Replace(WScript.ScriptFullName, 文件名, “”)
objShell.Run("runas /user:administrator "  strPath  “cmd.Bat”)
WScript.Sleep 1000
objShell.SendKeys “password{ENTER}”
WScript.Sleep 1000

注意:runas是無(wú)法傳遞參數(shù)的

bat腳本中以管理員權(quán)限執(zhí)行命令

把寫好的bat設(shè)置為開機(jī)啟動(dòng)后,但是默認(rèn)不是以管理員身份運(yùn)行,所以開機(jī)啟動(dòng)的時(shí)候就會(huì)導(dǎo)致有一些命令執(zhí)行不了

首先:如果windows每次獲取管理員權(quán)限的時(shí)候都會(huì)彈窗,那么首先就要把彈窗關(guān)閉

關(guān)閉方法是每次彈出提示的時(shí)候提示框有一個(gè)深色字體,提示可以修改彈出設(shè)置,點(diǎn)進(jìn)去,設(shè)置為永不或者無(wú)彈窗

接下來(lái),只需要在.bat腳本中添加一下代碼 即可實(shí)現(xiàn) 以管理員身份運(yùn)行

在bat腳本文件第一行加上下面命令:

::強(qiáng)制獲取管理員運(yùn)行權(quán)限

%1 mshta vbscript:CreateObject(“Shell.Application”).ShellExecute(“cmd.exe”,"/c %~s0 ::","",“runas”,1)(window.close)exit

cmd/bat如何自動(dòng)請(qǐng)求管理員權(quán)限而不需要右鍵管理員運(yùn)行

先上完整代碼:

@echo off
>nul 2>1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
if '%errorlevel%' NEQ '0' (
echo 請(qǐng)求管理員權(quán)限...
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
exit /B
:gotAdmin

原理如下:

訪問(wèn)一個(gè)需要授權(quán)的文件夾,如(%SYSTEMROOT%\system32\config\system)

如果被允許了,說(shuō)明顯然有管理員權(quán)限

如果被拒絕了,就要申請(qǐng)權(quán)限了。

申請(qǐng)權(quán)限的方法是:

(看echo的代碼)

創(chuàng)建一個(gè)運(yùn)行器,運(yùn)行相對(duì)目錄(相對(duì)目錄就是運(yùn)行批處理的目錄)里面的程序,以管理員權(quán)限。

然后自然就申請(qǐng)管理員了哇到此這篇關(guān)于vbs之自動(dòng)以管理員身份運(yùn)行批處理(bat)文件的文章就介紹到這了,更多相關(guān)管理員身份運(yùn)行批處理內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

標(biāo)簽:四平 西安 銅川 文山 鶴壁 邢臺(tái) 湖州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《自動(dòng)以管理員身份運(yùn)行批處理bat文件(vbs與bat兩種方法)》,本文關(guān)鍵詞  自動(dòng),以,管理員,身份,運(yùn)行,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《自動(dòng)以管理員身份運(yùn)行批處理bat文件(vbs與bat兩種方法)》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于自動(dòng)以管理員身份運(yùn)行批處理bat文件(vbs與bat兩種方法)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章