2010-04-29 2 views
0
나는 두 개의 프로세스를 실행하고

을, 프로세스 A는 다음과 같은 예를 사용하여 프로세스 B가 열립니다 : 당신은 프로세스가 주어진 경로에 의존 볼 수 있듯이다른 컴퓨터간에 작동하는 작업 디렉토리를 찾는 방법. - C

createProcessHandle = CreateProcess(
TEXT("C:\\Users\Jamie\\Documents\\Application\\Debug\\ProcessA.exe"), 
        TEXT(""), 
        NULL, 
        NULL, 
        FALSE, 
        0, 
        NULL, 
        NULL, 
        &startupinfo, 
        &process_information 
        ); 

를, 내가 가지고있는 문제이다 내 ProcessA.exe의 위치를 ​​변경하면 (예 : 백업/복제본) 경로를 계속 기록하는 것은 지루한 프로세스입니다. 수동으로 경로를 레코딩하지 않아도 어디서나 실행할 수 있기를 원합니다.

아무도 해결책을 제안 할 수 있습니까?

편집 : 경로 환경 변수에 대한 액세스 권한이 없습니다.

답변

2

기본적으로 두 가지 옵션이 있습니다.

  1. 상대 경로를 사용하십시오.
  2. PATH 환경 변수에 디렉토리를 넣으십시오. 이 경우 lpApplicationName이 아닌 lpCommandLine을 사용하십시오.
+0

불행히도 옵션 2를 수행 할 수 없습니다. 옵션 1을 설명해 주시겠습니까? –

+1

http://msdn.microsoft.com/en-us/library/aa365247(VS.85).aspx를 참조하십시오. 기본적으로 ProcessA와 ProcessB가 같은 디렉터리에 있다면 ProcessA.exe를 넣을 수 있습니다. ProcessA가 subdir이라는 하위 디렉토리에 있다면 subidir/ProcessA.exe를 넣을 수 있습니다. –

+0

우수 감사합니다! –

관련 문제