问题描述
[DllImport("Kernel32.DLL",SetLastError=true)]publicstaticexternboolSetEnvironmentVariable(stringlpName,stringlpValue);[DllImport("User32.dll",EntryPoint="SendMessage")]privatestaticexternintSendMessage(inthWnd,intMsg,intwParam,intlParam);privatevoidbutton1_Click(objectsender,System.EventArgse){constintHWND_BROADCAST=0xFFFF;constintWM_WININICHANGE=0x001A;strings="Environment";stringstrPath=Environment.GetEnvironmentVariable("PATH");if(strPath.IndexOf(@"C:ProgramFilesIPSGTechnologyProgram")<0){SetEnvironmentVariable("PATH",strPath+";"+@"C:ProgramFilesIPSGTechnologyProgram");}SendMessage(HWND_BROADCAST,WM_WININICHANGE,0,?);--这句不知道怎么写}
解决方案
解决方案二:
设置完毕->重启->生效...
解决方案三:
也许是这样[DllImport("Kernel32.DLL")]publicstaticexternboolSetEnvironmentVariable(stringlpName,stringlpValue);[DllImport("User32.dll")]privatestaticexternintSendMessage(inthWnd,intMsg,intwParam,stringlParam);//changedprivatevoidbutton1_Click(objectsender,System.EventArgse){constintHWND_BROADCAST=0xFFFF;constintWM_WININICHANGE=0x001A;strings="Environment";stringstrPath=Environment.GetEnvironmentVariable("PATH");Text=strPath;if(strPath.IndexOf(@"C:ProgramFilesIPSGTechnologyProgram")<0){SetEnvironmentVariable("PATH",strPath+";"+@"C:ProgramFilesIPSGTechnologyProgram");SendMessage(HWND_BROADCAST,WM_WININICHANGE,0,"PATH");//moveandchanged}}
解决方案四:
楼上的,你那种方法,我试过了,不生效
解决方案五:
没人回答吗?
解决方案六:
你是通过什么方法知道是否生效?