欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

C# 實現設置系統環境變量設置

系統 2802 0
原文: C# 實現設置系統環境變量設置

以前實現系統環境變量設置時是要在電腦屬性--高級--環境變量設置,實現方式主要有2種,

  1. 修改注冊表,添加環境變量
  2. 調用系統Kernel32.DLL函數,設置環境變量

?

?

注冊表方式,是要修改注冊表的位置是[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment]

代碼我已經封裝,注意要引入命名空間

    
      using
    
     Microsoft.Win32;


    
      using
    
     System.Runtime.InteropServices;
  

如下:

        
          class
        
         SysEnvironment
        
{
/// <summary>
/// 獲取系統環境變量
/// </summary>
/// <param name="name"></param>
/// <returns></returns>
public static string GetSysEnvironmentByName( string name)
{
string result = string .Empty;
try
{
result = OpenSysEnvironment().GetValue(name).ToString(); //讀取
}
catch (Exception)
{

return string .Empty;
}
return result;

}

/// <summary>
/// 打開系統環境變量注冊表
/// </summary>
/// <returns>RegistryKey</returns>
private static RegistryKey OpenSysEnvironment()
{
RegistryKey regLocalMachine = Registry.LocalMachine;
RegistryKey regSYSTEM = regLocalMachine.OpenSubKey( "SYSTEM" , true ); //打開HKEY_LOCAL_MACHINE下的SYSTEM
RegistryKey regControlSet001 = regSYSTEM.OpenSubKey( "ControlSet001" , true ); //打開ControlSet001
RegistryKey regControl = regControlSet001.OpenSubKey( "Control" , true ); //打開Control
RegistryKey regManager = regControl.OpenSubKey( "Session Manager" , true ); //打開Control

RegistryKey regEnvironment = regManager.OpenSubKey( "Environment" , true );
return regEnvironment;
}

/// <summary>
/// 設置系統環境變量
/// </summary>
/// <param name="name">變量名</param>
/// <param name="strValue">值</param>
public static void SetSysEnvironment( string name, string strValue)
{
OpenSysEnvironment().SetValue(name, strValue);

}

/// <summary>
/// 檢測系統環境變量是否存在
/// </summary>
/// <param name="name"></param>
/// <returns></returns>
public bool CheckSysEnvironmentExist( string name)
{
if (! string .IsNullOrEmpty(GetSysEnvironmentByName(name)))
return true ;
else
return false ;
}

/// <summary>
/// 添加到PATH環境變量(會檢測路徑是否存在,存在就不重復)
/// </summary>
/// <param name="strPath"></param>
public static void SetPathAfter( string strHome)
{
string pathlist ;
pathlist = GetSysEnvironmentByName( "PATH" );
//檢測是否以;結尾
if (pathlist.Substring(pathlist.Length - 1, 1) != ";" )
{
SetSysEnvironment( "PATH" , pathlist + ";" );
pathlist = GetSysEnvironmentByName( "PATH" );
}
string [] list = pathlist.Split( ';' );
bool isPathExist = false ;

foreach ( string item in list)
{
if (item == strHome)
isPathExist = true ;
}
if (!isPathExist)
{
SetSysEnvironment( "PATH" , pathlist +strHome+ ";" );
}

}

public static void SetPathBefore( string strHome)
{

string pathlist;
pathlist = GetSysEnvironmentByName( "PATH" );
string [] list = pathlist.Split( ';' );
bool isPathExist = false ;

foreach ( string item in list)
{
if (item == strHome)
isPathExist = true ;
}
if (!isPathExist)
{
SetSysEnvironment( "PATH" , strHome + ";" + pathlist);
}

}

public static void SetPath( string strHome)
{

string pathlist;
pathlist = GetSysEnvironmentByName( "PATH" );
string [] list = pathlist.Split( ';' );
bool isPathExist = false ;

foreach ( string item in list)
{
if (item == strHome)
isPathExist = true ;
}
if (!isPathExist)
{
SetSysEnvironment( "PATH" , pathlist + strHome + ";" );

}

}


}
?
?
Kernel32.DLL內有SetEnvironmentVariable函數用于設置系統環境變量
C#調用要用DllImport,代碼封裝如下:
        
          class
        
         SetSysEnvironmentVariable
        
{
[DllImport( "Kernel32.DLL " , SetLastError = true )]
public static extern bool SetEnvironmentVariable( string lpName, string lpValue);

public static void SetPath( string pathValue)
{
string pathlist;
pathlist = SysEnvironment.GetSysEnvironmentByName( "PATH" );
string [] list = pathlist.Split( ';' );
bool isPathExist = false ;

foreach ( string item in list)
{
if (item == pathValue)
isPathExist = true ;
}
if (!isPathExist)
{
SetEnvironmentVariable( "PATH" , pathlist + pathValue+ ";" );

}

}
}

?

C# 實現設置系統環境變量設置


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 日韩精品久久久久久久电影 | 欧美激情亚洲激情 | 欧洲男女下面进出的视频 | 精品一区二区三区免费站 | 亚洲国产aⅴ成人精品无吗 国内成人自拍视频 | 天堂网成人 | 精品国产第一国产综合精品gif | 国产美女小视频 | 国产一区二区精品丝袜 | 免费观看成人碰视频公开 | 91婷婷色| 亚洲最大视频网站 | 国产精品123区 | 香港三级大全 | av黄色在线| 亚洲国产精品久久网午夜 | 日韩欧美综合在线二区三区 | 91精品观看91久久久久久国产 | 精品卡1卡二卡3卡 | 欧美精品亚洲一区二区在线播放 | 奇米影视555 | 国产高清一区二区三区 | 亚洲天堂久久 | 成人无码髙潮喷水A片 | 欧美日韩在线视频不卡一区二区三区 | 亚洲精品久久国产高清 | 欧美国产中文 | 国产美女被爽到高潮免费A片小说 | 多男操一女视频 | 九色九色久综色鬼在线 | 婷婷综合色 | 亚洲精品自产拍在线观看app | 日韩电影中文字幕 | 亚洲精品一区二区三区福利 | 欧美一级毛片欧美大尺度一级毛片 | 黄在线 | 亚洲精品久久久一区二区三区 | 国产亚洲一区二区三区在线观看 | 9966av| 日本老熟妇毛茸茸 | 久久精品国产清自在天天线 |