|
장성호 님이 쓰신 글 :
: 어떤윈도우를 top에 오게 하려면
: 제일 위로 올린다고 한다면?
: 어플리케이션(window 프로그램)이겠네요
:
: 대게 어떤 window(Form)을 화면의 맨 앞으로 나오게 하기위해서는
:
: SetForgroundWindow라는 함수를 이용합니다.
:
: 중복실행확인
: ShellExecute로 process를 실행시키구..
: 다시 또 실행하지 않으려면..
: 기 실행한 process 가 살아있는지 확인하면 되겠죠
:
: 방법1.
: 이경우는 주로..
: Toolhelp32 의
: Process32First , Process32Next 등의 함수로 찾을수 있습니다.
: Process32First 로 검색해보면 관련예제 엄청 많을것입니다.
:
: 방법2.
: MainForm의 window-class이름이나 caption을 정확히 알고있으면
: FindWindow로 좀더 쉽게 찾을수도 있습니다.
:
:
:
: 주의1
: psapi로 찾은 process-Handle과
: 해당process의 MainForm의 Window-Handle은 다른것이라는것 기억하시구요
:
:
: 주의2.
: 단 SetForgroundWindow 라는 함수를 호출하는 process가
: 키입력을 받을수 있는 상태(현재프로그램이 active되어있는 상태)에서만 제대로 동작합니다.
:
: 걍 Mouse-Click등으로 동작한다면 별 문제없습니다.
:
: 이상입니다.
:
: 그럼..
:
: 궁금이 님이 쓰신 글 :
: : 내 프로그램에서 버튼을 누르면 제가 원하는 다른 프로그램을
: :
: : ShellExecute 로 실행은 시켯는데...
: :
: : 버튼을 누를때 마다 그 프로그램이 실행되면 안되거든요...
: :
: : 실행시킨 다른 프로그램을 종료시키고 다시 실행 시키거나
: :
: : 아니면 실행되어있으면 화면 맨 위로 올리는 방법이 없을까요???
|