모달 양식을 보여주는 Delphi 응용 프로그램 플러그인이 있습니다. 별도의 양식의 코드에서 다른 exe 파일을 호출하여 일부 파일을 처리 한 다음 닫습니다. 플러그인의 두 번째 부분은 exe에서 생성 된 파일을 조작합니다.파일이 존재할 때까지 기다렸다가 프로그램을 계속 진행하십시오.
내 문제는 프로그램이 외부 파일이 실제로 생성되기 전에 계속된다는 것입니다. Delphi 플러그인을 일시 중지하고 반복하기 전에 FileExists가 true를 반환 할 때까지 기다리는 방법이 있습니까?
의사 코드 :
Launch form (ShowModal)
Form runs exe, manipulates external files
Close Form
Form released
if ExternalFiles exist, do stuff.
외부 파일이 내 플러그인 외부에서 조작되고 있기 때문에, 나는 그들이 완성하고 생성 된 때 말할 수 없다.
우수, 폴링 및 수면을 피하는 솔루션! –
@ikathegreat - 어떻게 실행 파일을 시작 하시겠습니까? ShellExecute? CreateProcess? – Vector
'ShellExecuteEx()'를 사용한다면'SEE_MASK_NOCLOSEPROCESS' 플래그가 지정되어 있는지 확인하여 대기 할'HANDLE '프로세스를 되 찾을 수 있습니다. 'CreateProcess()'는 항상'HANDLE'을 반환합니다. –