프로그램에서 PATH를 지정하여 바로 적용시키기
//98이전은 autoexec.bat에 path를 지정하지만 NT, 2000, XP 그 이상은 레지스터리에 path를 가지고
있습니다.
//대충 아래와 같지요...
environment env
GetEnvironment(env)
if env.OSType <> Windows!
then
RegistryGet("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session
Manager\Environment", "Path", l_nt_path)
if Pos(l_nt_path,"c:\test")
<=0 then // 해당 path가 없다면 추가
l_nt_path +=
";c:\test"
RegistrySet("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session
Manager\Environment", "Path", l_nt_path)
end if
end if
// 단 위의 코드는 설정후 리부팅 또는 바탕화면 내컴퓨터 환경변수에서 일부수정후 다시 적용 후 먹기 때문에
FUNCTION boolean SetEnvironmentVariableA( string lpszName, string lpszValue
) LIBRARY "kernel32.dll"
boolean lb_ret
RegistryGet("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session
Manager\Environment", "Path", l_nt_path)
l_nt_path += ";c:\test"
lb_ret = SetEnvironmentVariableA(
"path", l_nt_path )
IF lb_ret <> TRUE THEN
MessageBox("오류",
"Path 설정 중 오류 발생" )
END IF
// 적용 후 바로 적용이 된다는 것이죠....
출처 : http://cafe.naver.com/pentaeduclub (하하맨(haha****) 님의 글)
있습니다.
//대충 아래와 같지요...
environment env
GetEnvironment(env)
if env.OSType <> Windows!
then
RegistryGet("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session
Manager\Environment", "Path", l_nt_path)
if Pos(l_nt_path,"c:\test")
<=0 then // 해당 path가 없다면 추가
l_nt_path +=
";c:\test"
RegistrySet("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session
Manager\Environment", "Path", l_nt_path)
end if
end if
// 단 위의 코드는 설정후 리부팅 또는 바탕화면 내컴퓨터 환경변수에서 일부수정후 다시 적용 후 먹기 때문에
FUNCTION boolean SetEnvironmentVariableA( string lpszName, string lpszValue
) LIBRARY "kernel32.dll"
boolean lb_ret
RegistryGet("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session
Manager\Environment", "Path", l_nt_path)
l_nt_path += ";c:\test"
lb_ret = SetEnvironmentVariableA(
"path", l_nt_path )
IF lb_ret <> TRUE THEN
MessageBox("오류",
"Path 설정 중 오류 발생" )
END IF
// 적용 후 바로 적용이 된다는 것이죠....
출처 : http://cafe.naver.com/pentaeduclub (하하맨(haha****) 님의 글)