Delphi XE7开发的直接以管理员模式启动CMD命令行界面

2022-10-14 09:06:32 作者:admin

本文整理自网络,侵删。

 介绍

本文章介绍了Delphi XE7开发的直接以管理员模式启动CMD对话框,一般情况下如果是win7的电脑,在开始里面输入cmd是普通模式启动的cmd界面,如果需要启动管理员模式,需要到开始菜单中找到命令提示符,然后右键用管理模式运行,本程序可以直接启动cmd,并以管理员模式启动,省得再去开始菜单里去执行,大家可以下载试试,完整代码是:

program AdminCMD;


//{$APPTYPE CONSOLE}

uses
  Winapi.Windows, Winapi.ShellApi, System.SysUtils;


function RunAsAdmin(const iExeName, iParam: String): Boolean;
var
  SEI: TShellExecuteInfo;
begin
  Result := False;


  if (CheckWin32Version(6)) then begin
    ZeroMemory(@SEI, SizeOf(SEI));

    with SEI do begin
      cbSize := SizeOf(SEI);
      Wnd := 0;
      fMask := SEE_MASK_FLAG_DDEWAIT or SEE_MASK_FLAG_NO_UI;
      lpVerb := 'runas';
      lpFile := PChar(iExeName);
      lpParameters := PChar(iParam);
      nShow := SW_SHOW;
    end;

    Result := ShellExecuteEx(@SEI);
  end;
end;

var
  CmdPath: String;
begin

  CmdPath := StringOfChar(#0, MAX_PATH);
  ExpandEnvironmentStrings(
    PChar('%ComSpec%'),
    PChar(CmdPath),
    Length(CmdPath));

  CmdPath := Trim(CmdPath);


  RunAsAdmin(CmdPath, '');
end.


在线咨询 拨打电话