我需要停止一些服务,所以我创建了一个 cmd 文件,但它不起作用,因为它需要以管理员身份运行。当我右键单击该文件并选择“属性”时,我看到“以管理员身份运行此程序”被禁用。为什么?我该如何打开它?
UAC 已启用(但设置为不使屏幕变暗),并且对于其他程序(exe 文件),该框也已启用。
答案1
作为一种解决方法,您可以尝试一下。
创建批处理文件的快捷方式
右键单击快捷方式并选择属性
(忽略兼容性选项卡上仍然被禁用的选项)
选择快捷方式选项卡
单击高级
选择“以管理员身份运行”
单击确定
答案2
我在这里找到了一个非常有用的批处理文件:
http://jagaroth.livejournal.com/63875.html
我引用您需要的 CMD 文件:
@ECHO OFF
REM Changing working folder back to current directory
%~d0
CD %~dp0
REM Folder changed
REM Check first if Windows XP
for /f "tokens=3*" %%i IN ('reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v ProductName ^| Find "ProductName"') DO set vers=%%i %%j
echo %vers% | find "XP" > nul
if %ERRORLEVEL% == 0 goto ver_xp
REM Ask for admin access
if exist "admincheckOK.txt" goto adminOK1
del /Q admincheckOK.vbs
ECHO.
ECHO. Please wait...
echo.Set objShell = CreateObject("Shell.Application") > admincheckOK.vbs
echo.Set FSO = CreateObject("Scripting.FileSystemObject") >> admincheckOK.vbs
echo.strPath = FSO.GetParentFolderName (WScript.ScriptFullName) >> admincheckOK.vbs
echo.If FSO.FileExists(%0) Then >> admincheckOK.vbs
echo. Dim oShell >> admincheckOK.vbs
echo. Set oShell = WScript.CreateObject ("WScript.Shell") >> admincheckOK.vbs
echo. oShell.run "cmd.exe /c echo admincheckOK > admincheckOK.txt" >> admincheckOK.vbs
echo. Set oShell = Nothing >> admincheckOK.vbs
echo. objShell.ShellExecute "cmd.exe", " /c " ^& %0 ^& " ", "", "runas", 1 >> admincheckOK.vbs
echo.Else >> admincheckOK.vbs
echo. MsgBox "Script file not found" >> admincheckOK.vbs
echo.End If >> admincheckOK.vbs
cscript //B admincheckOK.vbs
goto timeend
:adminOK1
del /Q admincheckOK.txt
del /Q admincheckOK.vbs
:ver_xp
REM Admin Access allowed
REM CMD CODE TO RUN AS ADMIN HERE!!
REM Following statement required if Admin access denied
:timeend
del /Q admincheckOK.vbs
之后REM CMD CODE TO RUN AS ADMIN HERE!!
您将拥有管理员权限。要实现这一点需要很多技巧。
它实际上创建了一个.vbs
VBScript 文件。VBScript 可以触发 UAC。它还将创建一个,admincheckOK.txt
在下次运行时(使用 后立即发生objShell.ShellExecute
)告知批处理文件它现在处于管理员模式
与使用链接文件的变体不同,大多数情况下,您只需要目录中的一个文件。在批处理文件执行期间的某一秒内,其中将有 3 个文件,但之后它们将被删除。
答案3
right-click
只需尝试通过文件
选择来获得文件的所有权Security
- 然后您可以使用编辑或Advance settings
更改文件的权限。我认为这会对你有所帮助。