|
하나의 함수를 만들어 놓으신다음, 그 함수에서 Assignfile 로 해당 실행파일을 오픈하신다음,
예외처리 루틴을 만드신다음, 예외처리문 안에 Reset 명령을 걸어줍니다.
만약 Reset 명령에서 에러가 나면, 현재 실행중이고, 그렇지 않으면 실행중이 아니란 것을
뜻하는 거겠죠.
파일을 실행하고 있으면 억세스가 안되는 특징을 살려 해본 경험입니다.. 사용시에는 전혀
문제가 없고요..
긁적.. 죄송합니다.. 철푸덕~~ v_-_v 항상 후룩만 하는 저라.. --;
jonglee 님이 쓰신 글 :
:
: 하나의 도스 프로그램이 있는데, 이것을 파라미터를 조금씩 바꿔가며
: 여러번 수행시키려고 합니다.
:
: 일단, 쓰레드를 만들고 여기서 루프를 돌면서 WinExec()로 도스 프로그램을
: 계속 호출하게 만들었는데요...
:
: WinExec()가 도스 프로그램을 호출하자마자 리턴을 해버리더군요.
: 그래서 도스창이 계속 만들어지고 쓰레드는 종료. 그리고 만들어진
: 도스창에서 도스 프로그램이 각각 실행되다가 알아서들 종료.
: 이런 식으로 되더군요.
:
: 그런데 루프 횟수가 아주 많아지니까 쓰레드가 (거의 동시에) 억수로
: 많이 만들어져서 시스템이 멈출락말락 하는 상태까지 갔다가
: 다시 돌아오네요. 이 때는 도스창이 아얘 뜨지 않는 경우도 있더군요.
: 아, 실행 자체는 정상적으로 됩니다.
:
: 저의 질문은, WinExec() 혹은 이와 유사한 다른 펑션이 다른 프로그램을
: 실행시킨 후 즉시 리턴하지 않고, 그 프로그램이 종료되면 리턴하게 하는
: 방법이 무엇인가 하는 것입니다.
:
: 도스 프로그램이 하나의 입력 파일을 오픈하는데, 위처럼 동시에 엄청
: 많은 쓰레드가 같은 파일을 오픈하는 것도 문제가 될 수도 있겠구요..
:
: OS는 Win2000 Pro, 빌더 5 Pro이구요..
: 호출하고 싶은 프로그램은 위에서 밝힌 바와같이 단순 도스프로그램입니다.
:
:
:
:
|