델파이왕입니다..
아래에 답변이 있지만 참고하시라고 글을 올립니다...
아래에 있는 글들은 하이텔의 비파툴의 델파이 Q&A에서 갈무리 한 글입니다.
참고하시기 바랍니다.
************************************************************************
제목 : [참고] 델파이와 외부프로그램의 연결
#16955/17053 보낸이:민성기 (minske ) 05/01 02:58 조회:195 1/2
아래 소스를 참고 하세요...
(*-------------------------------------------------------------------*)
FUNCTION WINRUN(COMMAND,PARAMS,WORKDIR:STRING) : BOOLEAN;
(* 명령어, 파라미터, 작업디렉토리를 인수로 받아서 실행한다.
(*-------------------------------------------------------------------*)
BEGIN
COMMAND:=COMMAND+#0;
PARAMS:=PARAMS+#0;
WORKDIR:=WORKDIR+#0;
RESULT := TRUE;
IF SHELLEXECUTE(0{HANDLE},Nil{'OPEN'{},@COMMAND[1],@PARAMS[1],
@WORKDIR[1],SW_SHOWNORMAL)<32 THEN
BEGIN
RESULT := FALSE;
MESSAGEDLG('FAILED TO EXECUTE '+COMMAND,MTERROR,[MBOK],0);
END;
END;
위의 ShellExecute() API를 사용하기 위해서는, Uses구문에
ShellAPI를 추가하셔야 합니다. 위의 함수를 이용하면, 확장자가
연결된 파일뿐 아니라 디렉토리 까지 실행시킬 수 있습니다.
그럼..
제목 : [답변] 외부프로그램 실행
#5070/17053 보낸이:이용우 (AIII ) 12/19 09:35 조회:264 1/4
두가지 방법을 알려드리겠습니다.
한가지는 델파이 버전에 상관없는 방법이고,
다른 한가지는 델파이 2.0 에서만 되는 방법입니다.
첫번째는 API함수인 WinEXEC();를 이용하시는 것입니다.
이 함수는 16비트용입니다만......
WIN32용 프로그램에서도 호환성을 위해서 남아있습니다.
델파이 1.0과 2.0에서 사용하실때에는
다음과 같이 사용하세요.
예1) WinExec('rar.exe', SW_NORMAL);
첫번째 파라메터는 경로까지 포함해서 받을 수 있습니다.
예2) 델1.0에서
먼저 CHAR형 배열을 선언하시고 StrPcopy()를 사용하여
var
exename : array[0...12] of char;
begin
WinExec(StrPcopy(exename, 'rar.exe'), SW_NORMAL);
end
이때 rar.exe를 쓰는 부분을 string형 변수로 만들면 실행파일을 임의
로 지정 할 수 있을 겁니다.
예3) 델2.0에서
begin
WinExec(PChar('rar.exe'), SW_NORMAL);
end
마찬가지로 rar.exe를 쓰는 부분을 string형 변수로 만들면 실행파일을
임의로 지정 할 수 있겠죠.
그리고.....
둘째로 델2.0에서만 사용할 수 있는 방법은...
예1) 위의 예제3)을 이용하거나...
예2) win32전용 API인 CreateProcess()함수를 이용해서 실행하는 방법입니다.
이것은 소스가 긴 관계로 각종 델파이 서적을 참고 하세요.
그럼.....
도움이 되시기를......
나도 강좌나 써볼까...............?
11 델파이 Q&A (이능훈) ()
제목 : [답변] 외부프로그램 실행.......
#5068/17053 보낸이:김희준 (kor90 ) 12/19 08:20 조회:160 1/1
안냐세요......외부 프로그램 실행 방법을 질문하신거 같기에..
제가 쓰는 방법이 너무 간단할지 모르겠지만......
var
Pst : array[0..128] of char;
begin
messageBeep(3);
StrPCopy(Pst,'calc.exe');
WinExec(Pst,SW_SHOWNORMAL);
end;
위와 같습니다........아시겠죠?
쩝.....잘 알지도 못하면서.....답변하자니 쑥스럽군요....
도움을 주고 싶은......[부산] 김희준....
**************************************************************
도움이 되었으면 합니다..
- 델파이왕 -
P.S. 델파이 작은 모임에서 지역 모임을 결성하고 있습니다..
뜻이 있으신 분은 저에게 메일을 또는 델피아에 글을 올려 주세요.
|