-
-
Save danmaispace/c27a0445681b99cf3b08 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| :: //*************************************************************************** | |
| :: // ***** Script Header ***** | |
| :: // ======================================================= | |
| :: // Elevation PowerToys for Windows Vista v1.1 (04/29/2008) | |
| :: // ======================================================= | |
| :: // | |
| :: // File: Elevate.cmd | |
| :: // | |
| :: // Additional files required: Elevate.vbs | |
| :: // | |
| :: // Purpose: To provide a command line method of launching applications that | |
| :: // prompt for elevation (Run as Administrator) on Windows Vista. | |
| :: // | |
| :: // Usage: elevate.cmd application <application arguments> | |
| :: // | |
| :: // Version: 1.0.0 | |
| :: // Date : 01/02/2007 | |
| :: // | |
| :: // History: | |
| :: // 1.0.0 01/02/2007 Created initial version. | |
| :: // | |
| :: // ***** End Header ***** | |
| :: //*************************************************************************** | |
| @setlocal | |
| @echo off | |
| :: Pass raw command line agruments and first argument to Elevate.vbs | |
| :: through environment variables. | |
| set ELEVATE_CMDLINE=%* | |
| set ELEVATE_APP=%1 | |
| start wscript //nologo "%~dpn0.vbs" %* |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| ' //*************************************************************************** | |
| ' // ***** Script Header ***** | |
| ' // ======================================================= | |
| ' // Elevation PowerToys for Windows Vista v1.1 (04/29/2008) | |
| ' // ======================================================= | |
| ' // | |
| ' // File: Elevate.vbs | |
| ' // | |
| ' // Additional files required: Elevate.cmd | |
| ' // | |
| ' // Purpose: To provide a command line method of launching applications that | |
| ' // prompt for elevation (Run as Administrator) on Windows Vista. | |
| ' // | |
| ' // Usage: (Not used directly. Launched from Elevate.cmd.) | |
| ' // | |
| ' // Version: 1.0.1 | |
| ' // Date : 01/03/2007 | |
| ' // | |
| ' // History: | |
| ' // 1.0.0 01/02/2007 Created initial version. | |
| ' // 1.0.1 01/03/2007 Added detailed usage output. | |
| ' // | |
| ' // ***** End Header ***** | |
| ' //*************************************************************************** | |
| Set objShell = CreateObject("Shell.Application") | |
| Set objWshShell = WScript.CreateObject("WScript.Shell") | |
| Set objWshProcessEnv = objWshShell.Environment("PROCESS") | |
| ' Get raw command line agruments and first argument from Elevate.cmd passed | |
| ' in through environment variables. | |
| strCommandLine = objWshProcessEnv("ELEVATE_CMDLINE") | |
| strApplication = objWshProcessEnv("ELEVATE_APP") | |
| strArguments = Right(strCommandLine, (Len(strCommandLine) - Len(strApplication))) | |
| If (WScript.Arguments.Count >= 1) Then | |
| strFlag = WScript.Arguments(0) | |
| If (strFlag = "") OR (strFlag="help") OR (strFlag="/h") OR (strFlag="\h") OR (strFlag="-h") _ | |
| OR (strFlag = "\?") OR (strFlag = "/?") OR (strFlag = "-?") OR (strFlag="h") _ | |
| OR (strFlag = "?") Then | |
| DisplayUsage | |
| WScript.Quit | |
| Else | |
| objShell.ShellExecute strApplication, strArguments, "", "runas" | |
| End If | |
| Else | |
| DisplayUsage | |
| WScript.Quit | |
| End If | |
| Sub DisplayUsage | |
| WScript.Echo "Elevate - Elevation Command Line Tool for Windows Vista" & vbCrLf & _ | |
| "" & vbCrLf & _ | |
| "Purpose:" & vbCrLf & _ | |
| "--------" & vbCrLf & _ | |
| "To launch applications that prompt for elevation (i.e. Run as Administrator)" & vbCrLf & _ | |
| "from the command line, a script, or the Run box." & vbCrLf & _ | |
| "" & vbCrLf & _ | |
| "Usage: " & vbCrLf & _ | |
| "" & vbCrLf & _ | |
| " elevate application <arguments>" & vbCrLf & _ | |
| "" & vbCrLf & _ | |
| "" & vbCrLf & _ | |
| "Sample usage:" & vbCrLf & _ | |
| "" & vbCrLf & _ | |
| " elevate notepad ""C:\Windows\win.ini""" & vbCrLf & _ | |
| "" & vbCrLf & _ | |
| " elevate cmd /k cd ""C:\Program Files""" & vbCrLf & _ | |
| "" & vbCrLf & _ | |
| " elevate powershell -NoExit -Command Set-Location 'C:\Windows'" & vbCrLf & _ | |
| "" & vbCrLf & _ | |
| "" & vbCrLf & _ | |
| "Usage with scripts: When using the elevate command with scripts such as" & vbCrLf & _ | |
| "Windows Script Host or Windows PowerShell scripts, you should specify" & vbCrLf & _ | |
| "the script host executable (i.e., wscript, cscript, powershell) as the " & vbCrLf & _ | |
| "application." & vbCrLf & _ | |
| "" & vbCrLf & _ | |
| "Sample usage with scripts:" & vbCrLf & _ | |
| "" & vbCrLf & _ | |
| " elevate wscript ""C:\windows\system32\slmgr.vbs"" -dli" & vbCrLf & _ | |
| "" & vbCrLf & _ | |
| " elevate powershell -NoExit -Command & 'C:\Temp\Test.ps1'" & vbCrLf & _ | |
| "" & vbCrLf & _ | |
| "" & vbCrLf & _ | |
| "The elevate command consists of the following files:" & vbCrLf & _ | |
| "" & vbCrLf & _ | |
| " elevate.cmd" & vbCrLf & _ | |
| " elevate.vbs" & vbCrLf | |
| End Sub |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| @echo off | |
| @rem %stPath% : Path to Sublime Text installation dir. | |
| @rem %elevatePath% : Path to elevated privilege script installation dir. | |
| @rem %entryName%: Key name for the registry entry. | |
| @rem %menuText% : Context menu text. Set your preferred menu text (e.g.: translate to your language). | |
| @rem %entryNameAsAdmin%: Key name for the registry entry. | |
| @rem %menuTextAsAdmin% : Context menu text. Set your preferred menu text for administrator privilege (e.g.: translate to your language). | |
| call :check_Permissions | |
| SET stPath=\"%~dp0sublime_text.exe\" | |
| SET elevatePath=\"%~dp0__elevate.cmd\" | |
| SET entryName=Sublime Text | |
| SET menuText=Open with Sublime Text | |
| SET entryNameAsAdmin=Sublime Text As Admin | |
| SET menuTextAsAdmin=Open with Sublime Text As Admin | |
| echo # add it for all file types | |
| reg add "HKEY_CLASSES_ROOT\*\shell\%entryName%" /t REG_SZ /v "" /d "%menuText%" /f | |
| reg add "HKEY_CLASSES_ROOT\*\shell\%entryName%" /t REG_EXPAND_SZ /v "Icon" /d "%stPath%,0" /f | |
| reg add "HKEY_CLASSES_ROOT\*\shell\%entryName%\command" /t REG_SZ /v "" /d "%stPath% \"%%1\"" /f | |
| echo # add it for all file types as admin. You need to close all sublime instance inorder to open target with Administrative permission. | |
| reg add "HKEY_CLASSES_ROOT\*\shell\%entryNameAsAdmin%" /t REG_SZ /v "" /d "%menuTextAsAdmin%" /f | |
| reg add "HKEY_CLASSES_ROOT\*\shell\%entryNameAsAdmin%" /t REG_EXPAND_SZ /v "Icon" /d "%stPath%,0" /f | |
| reg add "HKEY_CLASSES_ROOT\*\shell\%entryNameAsAdmin%\command" /t REG_SZ /v "" /d "%elevatePath% %stPath% -n \"%%1\"" /f | |
| echo # add it for folders | |
| reg add "HKEY_CLASSES_ROOT\Folder\shell\%entryName%" /t REG_SZ /v "" /d "%menuText%" /f | |
| reg add "HKEY_CLASSES_ROOT\Folder\shell\%entryName%" /t REG_EXPAND_SZ /v "Icon" /d "%stPath%,0" /f | |
| reg add "HKEY_CLASSES_ROOT\Folder\shell\%entryName%\command" /t REG_SZ /v "" /d "%stPath% \"%%1\"" /f | |
| pause | |
| goto :EOF | |
| :check_Permissions | |
| echo # Administrative permissions required. Detecting permissions... | |
| net session >nul 2>&1 | |
| if %errorLevel% == 0 ( | |
| echo Administrative permissions confirmed. | |
| goto :EOF | |
| ) else ( | |
| echo Failure: Current permissions inadequate. | |
| echo You will need to "Run as Administrator" if using Vista/Win7/Win8. | |
| pause >nul | |
| exit | |
| ) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment