Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
현재 실행중인 다른프로그램(AutoCAD, Excel..) 실행위치 ?
현재 실행중인 다른프로그램(AutoCAD, Excel..) 실행 디렉토리를 알수 있는 방법이 없을까요 ?
고수님들 꼭 좀 갈켜 주세요 ..^^
1
COMMENTS
김동환
•
2001.03.20 03:39
//현재는 win98에서 찾는 방법만 사용 하였습니다.
그리구 밑의 SeekProcess함수는 제가 중복으로 실행이 되는지를 Check하기 위하여 작성 하였습니
다.
밑의 내역을 사용하시면 현재의 위치를 알아 볼수 있습니다.
인자인 pszExeName은 프로그램의 실행명을 던지면 됩니다.
글구 즐프 하세용,,,,,
function SeekProcess(const pszExeName : string) : HWND;
var info : TOSVERSIONINFO;
function WinProcessID(pID : DWORD) : HWND;
var data : TEnumData;
begin
data.pID := pID;
data.hW := 0;
EnumWindows(@EnumProc, longint(@data));
WinProcessID := data.hW;
end;
function SeekProcess98(const pszExeName : string) : HWND; //현재 실행되어 있는 프로세서 목록을 구합니다.
var
snapshot : Thandle;
processinfo : TProcessEntry32;
status : boolean;
wHandle : HWND;
szExeName, szPrcName : string;
begin
processinfo.dwSize := sizeof(processinfo);
snapshot := CreateToolhelp32Snapshot(TH32CS_SNAPALL, 0);
SeekProcess98 := 0;
szExeName := ExtractFileName(pszExeName);
if (snapshot <> 0) then
begin
status := Process32First(snapshot, processinfo);
while status do
begin
szPrcName := ExtractFileName(processinfo.szExeFile);
if StrIComp(PChar(szExeName), PChar(szPrcName)) = 0 then
begin
wHandle := WinProcessID(processinfo.th32ProcessID);
SeekProcess98 := wHandle;
Break;
end;
status := Process32Next(snapshot, processinfo);
end;
end;
end;
begin
info.dwOSVersionInfoSize := sizeof(info);
GetVersionEx(info);
SeekProcess := 0;
if info.dwPlatformId = VER_PLATFORM_WIN32_WINDOWS then
begin
SeekProcess := SeekProcess98(pszExeName);
end;
end;
구상도 wrote:
> 현재 실행중인 다른프로그램(AutoCAD, Excel..) 실행 디렉토리를 알수 있는 방법이 없을까요 ?
> 고수님들 꼭 좀 갈켜 주세요 ..^^
>
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
칠라기
•
2001.03.19 21:18
1
COMMENTS
/
0
LIKES
데이타의 중복성 문제..
성더기
•
2001.03.20 01:21
칠라기 wrote: > 책을 보다가 다음과 같은 문제를 보게 되었습니다. > > -- 데이터의 중복성이 완전히 ...
bean
2001.03.19 21:15
0
COMMENTS
/
0
LIKES
폼에 기냥 그림을 그렸는데, 스크롤이 안되요...
느티나무
2001.03.19 20:45
0
COMMENTS
/
0
LIKES
【급질문】델파이로 서비스 프로그램 만들기---
구상도
•
2001.03.19 20:37
1
COMMENTS
/
0
LIKES
현재 실행중인 다른프로그램(AutoCAD, Excel..) 실행위치 ?
현재 실행중인 다른프로그램(AutoCAD, Excel..) 실행 디렉토리를 알수 있는 방법이 없을까요 ? 고수님들 꼭 좀 갈켜 주세요 ..^^
김동환
•
2001.03.20 03:39
//현재는 win98에서 찾는 방법만 사용 하였습니다. 그리구 밑의 SeekProcess함수는 제가 중복으로 실행이 ...
호야
•
2001.03.19 20:12
1
COMMENTS
/
0
LIKES
내가 지정한 콤포넌트의 OWNER에 있는 다른 콤포넌트에..
최용일
•
2001.03.20 02:06
안녕하세요. 최용일입니다. Components(Owner)과 Controls(Parent)속성을 혼동하신거 같군요. Component...
과객
•
2001.03.19 19:56
3
COMMENTS
/
0
LIKES
TQueue 사용시 에러 발생...
컴맹..
•
2001.03.19 20:21
안녕하세여... 컴맹입니다... 위에 코드에는 두가지 문제가 있군여... Queue := TQueue.Create;// ...
과객
•
2001.03.19 21:30
컴맹.. wrote: > 안녕하세여... 컴맹입니다... > > 위에 코드에는 두가지 문제가 있군여... > > Q...
컴맹..
•
2001.03.19 22:45
안녕하세여... 전체 소스를 올림니다.. 이런식으로 사용하심이 맞는것 같네여... unit Unit1; int...
초보델파이...
•
2001.03.20 11:29
3
COMMENTS
/
0
LIKES
프로그램 종료를 취소할 수 있도록 하려면
까마귀
•
2001.03.20 11:29
초보델파이... wrote: > 프로그램을 제작하여 실행도중에 > > 창 오른쪽 위에 있는 X를 클릭하면 종료...
컴맹..
•
2001.03.20 11:29
안녕하세여.. 컴맹입니다... 일단 폼의 CloseQuery 이벤트에 다음과 같이 하시면 종료가 되지 않습니...
김동환
•
2001.03.20 11:30
CloseQuery에 대한 보충 설명입니다. 종료 이밴트에 속하는 CloseQuery는 Windows상의 모든 종료를 막아...
김신광
•
2001.03.19 20:07
1
COMMENTS
/
0
LIKES
Dcu파일루 콤포넌트 인스톨 할수 있나여? 흑흑~ 누구 Tcsquery가지고 계신분...
최용일
•
2001.03.20 01:54
안녕하세요. 최용일입니다. 델파이 버전만 맞다면 인스톨 가능합니다. 패키지에 dcu를 직접 넣으시지...
아라
2001.03.19 20:34
0
COMMENTS
/
0
LIKES
onCalcFields인 누계를 조인테이블을 사용한 DBGrid에서 보여주려고...
쫑아랍니다..
•
2001.03.19 19:39
1
COMMENTS
/
0
LIKES
스트링그리드에 콤마넣어서 자료를 뿌리고 싶은데..
까마귀
•
2001.03.19 21:46
쫑아랍니다.. wrote: > 스트링 그리드의 arow3값을 금액형(3,000,000)으루 뿌리고 싶은데... > > 델파...
jun o
2001.03.19 19:18
0
COMMENTS
/
0
LIKES
wave 파일 출력시 이퀄라이저 구현
김명찬
2001.03.19 19:00
0
COMMENTS
/
0
LIKES
treeview에서의 인덱스
델초보.....ㅜ.ㅜ
2001.03.19 18:43
0
COMMENTS
/
0
LIKES
메모장에서 리턴값제거 방번 다시 질문합니다.....ㅡㅡ;;
조승식
•
2001.03.19 16:05
1
COMMENTS
/
0
LIKES
Tcomport로 RS232자료 송수신때 STX,ETX를 어떻게 알아내죠?
신태균
•
2001.03.23 02:25
조승식 wrote: > 232 통신은 첨인데 먹고는 살아야 하구...어휴 힘들다.. > 부탁드립니다. > > 송신쪽...
김진규
2001.03.19 10:31
0
COMMENTS
/
0
LIKES
델파이에서 유니코드 문자를 출력할려면?
민
•
2001.03.19 07:38
1
COMMENTS
/
0
LIKES
델파이에서 엔터키, 텝키..어떻게 인식?
whitetree
•
2001.03.19 18:53
민 wrote: > procedure TForm_main.Edit_messageKeyPress(Sender: TObject; var Key: Char); > begin > ...
델피언
2001.03.19 07:20
0
COMMENTS
/
0
LIKES
도와주세요 급해요 stringGrid 에서
김광수
•
2001.03.19 06:03
1
COMMENTS
/
0
LIKES
메인폼 포커스 유지한 상태로 다른폼 보이기.
아폴론
•
2001.03.19 18:32
김광수 wrote: > > 제목 그대롭니다 > > 메인폼 포커스 유지한 상태로 다른폼 보이게 하는 방법 좀 ...
zerodog
•
2001.03.19 05:46
1
COMMENTS
/
0
LIKES
퀵레포트...
아폴론
•
2001.03.19 18:35
zerodog wrote: > landscape 으로 레포트를 눕혔는데(폼에서는 가로로 돼있는데) preview에는 세로로 출력...
아기코알라
•
2001.03.19 04:19
4
COMMENTS
/
0
LIKES
중복데이타 입력 안되게...조금만 보아 주세요.
바보감자
•
2001.03.19 18:54
아기코알라 wrote: > 오늘도 프로그램하시느라 수고가 많으시네요… > 오늘도 여전히 염치불구하고 고수님...
아기코알라
•
2001.03.20 01:03
답변 정말 정말 감사드립니다. 바보감자님의 앞날에 많은 행운이 있으시길 바랍니다… 제가 질문을 좀 ...
바보감자
•
2001.03.20 19:21
아기코알라 wrote: > 답변 정말 정말 감사드립니다. > 바보감자님의 앞날에 많은 행운이 있으시길 바랍니...
아폴론
•
2001.03.20 01:39
> > 예) 필드명 SuperNo / CardNo / ~~~~ > 레코드1 1-1 / 1 / ~~~ >...
구상도
2001/03/19 20:37
Views
256
Likes
0
Comments
1
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
그리구 밑의 SeekProcess함수는 제가 중복으로 실행이 되는지를 Check하기 위하여 작성 하였습니
다.
밑의 내역을 사용하시면 현재의 위치를 알아 볼수 있습니다.
인자인 pszExeName은 프로그램의 실행명을 던지면 됩니다.
글구 즐프 하세용,,,,,
function SeekProcess(const pszExeName : string) : HWND;
var info : TOSVERSIONINFO;
function WinProcessID(pID : DWORD) : HWND;
var data : TEnumData;
begin
data.pID := pID;
data.hW := 0;
EnumWindows(@EnumProc, longint(@data));
WinProcessID := data.hW;
end;
function SeekProcess98(const pszExeName : string) : HWND; //현재 실행되어 있는 프로세서 목록을 구합니다.
var
snapshot : Thandle;
processinfo : TProcessEntry32;
status : boolean;
wHandle : HWND;
szExeName, szPrcName : string;
begin
processinfo.dwSize := sizeof(processinfo);
snapshot := CreateToolhelp32Snapshot(TH32CS_SNAPALL, 0);
SeekProcess98 := 0;
szExeName := ExtractFileName(pszExeName);
if (snapshot <> 0) then
begin
status := Process32First(snapshot, processinfo);
while status do
begin
szPrcName := ExtractFileName(processinfo.szExeFile);
if StrIComp(PChar(szExeName), PChar(szPrcName)) = 0 then
begin
wHandle := WinProcessID(processinfo.th32ProcessID);
SeekProcess98 := wHandle;
Break;
end;
status := Process32Next(snapshot, processinfo);
end;
end;
end;
begin
info.dwOSVersionInfoSize := sizeof(info);
GetVersionEx(info);
SeekProcess := 0;
if info.dwPlatformId = VER_PLATFORM_WIN32_WINDOWS then
begin
SeekProcess := SeekProcess98(pszExeName);
end;
end;
구상도 wrote:
> 현재 실행중인 다른프로그램(AutoCAD, Excel..) 실행 디렉토리를 알수 있는 방법이 없을까요 ?
> 고수님들 꼭 좀 갈켜 주세요 ..^^
>