首页 > 分享 > 用Delphi修改系统环境变量

用Delphi修改系统环境变量

最新推荐文章于 2020-05-03 22:58:13 发布

小蚂蚁_CrkRes 于 2017-09-29 17:29:46 发布

第一个是复制Oracle客户端文件。

第二个是写注册表。

第三个是注册环境变量。

用Delphi怎么修改系统的环境变量呢,上网找了一下,写了下面的程序,怕以后忘记了,贴上来。

unit Unit1;      interface      uses     Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,     Dialogs, StdCtrls,Registry,ShellAPI;      type     TForm1 = class(TForm)       btnAddOraCli: TButton;       procedure btnAddOraCliClick(Sender: TObject);     private            public            procedure SetEnvPath;      function CopyOraFiles(const SourDir,DestDir :string) :Boolean;      end;      var     Form1: TForm1;      implementation      {$R *.dfm}      procedure TForm1.btnAddOraCliClick(Sender: TObject);   var     sbtnCaption : string;   begin     sbtnCaption := btnAddOraCli.Caption;     btnAddOraCli.Enabled := False;     btnAddOraCli.Caption := '正在复制文件';     if not CopyOraFiles('Ora_Cli', 'C:/') then     begin       ShowMessage('复制文件出错,Oracle客户端没有设置成功');       Exit;     end;     WinExec('merge.bat',sw_hide);       btnAddOraCli.Caption :='正在设置环境变量';     SetEnvPath;     btnAddOraCli.Enabled := True;     btnAddOraCli.Caption := sbtnCaption;   end;      function TForm1.CopyOraFiles(const SourDir, DestDir: string): Boolean;   var     fOPStruct :TSHFileOpStruct;   begin          FillChar(fOPStruct,SizeOf(fOPStruct),0);     with fOPStruct do     begin       Wnd := 0;       wFunc := FO_COPY;       pFrom := PChar(SourDir + #0);       pTo := PChar(DestDir +#0);       fFlags := FOF_NOCONFIRMATION + FOF_NOCONFIRMMKDIR ;     end;     if (SHFileOperation(fOPStruct) = 0) and (fOPStruct.fAnyOperationsAborted = False) then        Result := True     else       Result := False;   end;         procedure TForm1.SetEnvPath;   var     reg : TRegistry;     sLMKey : string;     sCurStr : string;     sStrToAdd: string;     sName: string;   begin     sLMKey := 'System/CurrentControlSet/Control/Session Manager/Environment';       sName := 'Path';      sStrToAdd := 'C:/Ora_Cli/bin';      reg := TRegistry.Create;     try       reg.RootKey := HKEY_LOCAL_MACHINE;       if reg.OpenKey(sLMKey,False) then       begin         sCurStr := reg.ReadString(sName);          if Pos(sStrToAdd,sCurStr) = 0 then           begin           sCurStr := sCurStr + ';' + sStrToAdd;                                                reg.WriteExpandString(sName,sCurStr);             reg.CloseKey;           SetEnvironmentVariable(PChar(sName),PChar(sCurStr));           SendMessage(HWND_BROADCAST,WM_SETTINGCHANGE,0,Integer(PChar('Environment')));            ShowMessage('Oracle客户端安装成功');         end         else           ShowMessage('此环境变量已经存在');       end;     except       on E: Exception do       begin         reg.Free;         ShowMessage('Error: ' + E.Message);         Exit;       end;     end;     reg.Free;   end;      end.  

merge.bat批处理文件的内容如下:

regedit /s Instal_Ora_Cli.reg

注册表文件内容如下:

Windows Registry Editor Version 5.00      [HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE]   "ORACLE_HOME"="C://Ora_Cli"   "ORACLE_HOME_NAME"="OraHome92"   "ORACLE_GROUP_NAME"="Oracle - OraHome92"   "NLS_LANG"="AMERICAN_AMERICA.US7ASCII"   "VOBHOME2.0"="C://Ora_Cli"      [HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/ALL_HOMES]   "HOME_COUNTER"="1"   "DEFAULT_HOME"="OraHome92"   "LAST_HOME"="0"      [HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/ALL_HOMES/ID0]   "NAME"="OraHome92"   "PATH"="C://Ora_Cli"   "NLS_LANG"="NA"      [HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/HOME0]   "ID"="0"   "ORACLE_GROUP_NAME"="Oracle - OraHome92"   "ORACLE_HOME_NAME"="OraHome92"   "ORACLE_HOME"="C://Ora_Cli"   "NLS_LANG"="AMERICAN_AMERICA.US7ASCII"   "ORAMTS_CP_TRACE_LEVEL"="0"   "ORAMTS_CONN_POOL_TIMEOUT"="120"   "ORAMTS_SESS_TXNTIMETOLIVE"="120"   "ORAMTS_NET_CACHE_MAXFREE"="5"   "ORAMTS_NET_CACHE_TIMEOUT"="120000"   "ORAMTS_OSCREDS_MATCH_LEVEL"="OS_AUTH_LOGIN"   "ORACLE_HOME_KEY"="Software//ORACLE//HOME0"  

相关知识

配置 Windows 环境变量的方法
该系统为花店销售管理系统 rar压缩包免费下载
基于Delphi 的疾病智能诊断系统.pdf
交通建设工程计量与支付系统
电商项目需求分析
基于MapInfo的棉花土壤施肥推荐及信息管理系统的研究
用idea花店管理系统
一种花卉种植监控系统及其使用方法与流程
基于PLC的植物工厂监控系统的研究
在PLSQL, sql语句中带有中文的查询条件查询不到数据

网址: 用Delphi修改系统环境变量 https://m.huajiangbk.com/newsview1125728.html

所属分类:花卉
上一篇: 深入JVM 原理(五)Java堆
下一篇: Windows下使用anacon