Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
다른 프로그램의 MessageBox 찾기 예제 부탁
제가 무엇을 잘못했는지 모르겠지만 예제를 보면 이해가 빠를것 같군요..
다른 프로그램의 버튼을 누른후 나오는 메세지박스를 찾아 닫는겁니다..
제가 코딩하는 부분에 A 버튼을 누르면 다른 프로그램의 [검색] 버튼을 눌러
메세지박스가 뜨면 닫는거지요..
그럼.........잘된다고 하시니 제가 질문하게 해결 가능한 얘기이군요...^^
실력이 딸려서리.....암튼 부탁드려요...^^
이곳을 자주 이용하게 될것 같은 느낌이 듭니다.....하하..^^
2
COMMENTS
최용일
•
2000.05.15 21:36
안녕하세요. 최용일입니다.
소스 입니다. (델파이5)
// 메세지 박스를 보이는 프로그램 유닛
unit MsgForm_Unit;
interface
uses
Windows, Messages, Classes, Forms, StdCtrls, Controls;
type
TMsgForm = class(TForm)
MsgButton: TButton;
Label1: TLabel;
procedure MsgButtonClick(Sender: TObject);
end;
var
MsgForm: TMsgForm;
implementation
{$R *.DFM}
procedure TMsgForm.MsgButtonClick(Sender: TObject);
begin
Application.MessageBox('메세지 박스입니다.', 'MsgBox', id_OK);
end;
end.
// 메세지 박스를 보이는 프로그램 유닛의 폼
object MsgForm: TMsgForm
Left = 447
Top = 24
Width = 276
Height = 96
Caption = 'MsgForm'
Color = clBtnFace
Font.Charset = HANGEUL_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = '굴림'
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 12
object Label1: TLabel
Left = 14
Top = 12
Width = 240
Height = 12
Caption = '아래의 버튼을 누르면 메세지 박스가 뜹니다.'
end
object MsgButton: TButton
Left = 96
Top = 36
Width = 75
Height = 25
Caption = 'MsgButton'
TabOrder = 0
OnClick = MsgButtonClick
end
end
// 메세지 박스를 찾는 프로그램 유닛
unit FindForm_Unit;
interface
uses
Windows, Messages, SysUtils, Classes, Forms, ExtCtrls, StdCtrls, Controls;
type
TForm1 = class(TForm)
Timer1: TTimer;
Label1: TLabel;
CheckBox1: TCheckBox;
Button1: TButton;
procedure Timer1Timer(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Timer1Timer(Sender: TObject);
var
DialogWnd, ButtonWnd: HWND;
begin
// 메세지 박스 찾기...
DialogWnd := FindWindow('#32770', 'MsgBox');
if DialogWnd <> 0 then
begin
// 메세지 박스의 버튼 핸들을 찾기
ButtonWnd := FindWindowEx(DialogWnd, 0, 'Button', '확인');
// 버튼에 클릭메세지를 보내 메세지 박스를 닫기
if ButtonWnd <> 0 then
begin
SendMessage(ButtonWnd, WM_LBUTTONDOWN, 0, 0);
SendMessage(ButtonWnd, WM_LBUTTONUP, 0, 0);
end;
end;
end;
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
Timer1.Enabled := CheckBox1.Checked;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
Path: string;
begin
Path := ExtractFilePath(Application.ExeName);
WinExec(PChar(Path + 'MsgForm_Prj.exe'), SW_SHOWDEFAULT);
end;
end.
// 메세지 박스를 찾는 프로그램 유닛의 폼
object Form1: TForm1
Left = 191
Top = 23
Width = 224
Height = 149
Caption = 'Form1'
Color = clBtnFace
Font.Charset = HANGEUL_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = '굴림체'
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 12
object Label1: TLabel
Left = 27
Top = 16
Width = 162
Height = 12
Caption = '메세지 박스를 먼저 띄우세요'
end
object CheckBox1: TCheckBox
Left = 59
Top = 48
Width = 97
Height = 17
Caption = '타이머 가동'
Checked = True
State = cbChecked
TabOrder = 0
OnClick = CheckBox1Click
end
object Button1: TButton
Left = 27
Top = 88
Width = 161
Height = 25
Caption = '메세지 프로그램 실행하기'
TabOrder = 1
OnClick = Button1Click
end
object Timer1: TTimer
Interval = 100
OnTimer = Timer1Timer
Left = 172
Top = 44
end
end
^^ 항상 즐코하세요.
안희준 wrote:
> 제가 무엇을 잘못했는지 모르겠지만 예제를 보면 이해가 빠를것 같군요..
>
> 다른 프로그램의 버튼을 누른후 나오는 메세지박스를 찾아 닫는겁니다..
>
> 제가 코딩하는 부분에 A 버튼을 누르면 다른 프로그램의 [검색] 버튼을 눌러
>
> 메세지박스가 뜨면 닫는거지요..
>
> 그럼.........잘된다고 하시니 제가 질문하게 해결 가능한 얘기이군요...^^
>
> 실력이 딸려서리.....암튼 부탁드려요...^^
>
> 이곳을 자주 이용하게 될것 같은 느낌이 듭니다.....하하..^^
0
0
삭제
수정
댓글
최용일
•
2000.05.15 19:59
안녕하세요. 최용일입니다.
저는 델파이 5를 씁니다. 실행 파일을 같이 보내니까 먼저 실행해 보세요.
한메일이 맛이 갔나? 갑자기 파일 첨부가 않되네요... 아뭏든 보내드렸습니다.
^^ 항상 즐코하세요.
안희준 wrote:
> 제가 무엇을 잘못했는지 모르겠지만 예제를 보면 이해가 빠를것 같군요..
>
> 다른 프로그램의 버튼을 누른후 나오는 메세지박스를 찾아 닫는겁니다..
>
> 제가 코딩하는 부분에 A 버튼을 누르면 다른 프로그램의 [검색] 버튼을 눌러
>
> 메세지박스가 뜨면 닫는거지요..
>
> 그럼.........잘된다고 하시니 제가 질문하게 해결 가능한 얘기이군요...^^
>
> 실력이 딸려서리.....암튼 부탁드려요...^^
>
> 이곳을 자주 이용하게 될것 같은 느낌이 듭니다.....하하..^^
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
강제훈
•
2000.05.15 21:16
1
COMMENTS
/
0
LIKES
exit 이부분에서 error가 나는데,,좀 도와주세요
smileye
•
2000.05.15 21:47
강제훈 wrote: > procedure Tmain_Form.fais_kvgaExecute(Sender: TObject); > var > i:byte; > begi...
황선희
•
2000.05.15 20:47
2
COMMENTS
/
0
LIKES
3 tier 데이타 입력, 수정, 삭제시 서버의 날짜와 시간을 세팅하려면...
하얀까마귀
•
2000.05.15 22:07
안녕하세요 하얀까마귀 입니다. 파라독스에도 보니까 TimeStemp라는 데이타 타입이 있는걸 본것 같네요....
황선희
•
2000.05.15 23:38
하얀까마귀 wrote: > 안녕하세요 하얀까마귀 입니다. > > 파라독스에도 보니까 TimeStemp라는 데이타 ...
우씌..
•
2000.05.15 20:36
1
COMMENTS
/
0
LIKES
C에서의 Union을 구현하려면..
최용일
•
2000.05.15 20:46
안녕하세요. 최용일입니다. 다음과 같이 레코드를 쓰시면 C의 유니온 형이 됩니다. UnionRec = recor...
황남철
2000.05.15 20:29
0
COMMENTS
/
0
LIKES
살려주세요
강인규
•
2000.05.15 20:26
4
COMMENTS
/
0
LIKES
쿠키를 영원히 받는법....
최석기
•
2000.05.15 21:56
이건 이 게시판이랑 성격이 좀 다른거 같은데.. ASP를 사용하셨나본데 ASP에 Cookies Collection에 Prop...
강인규
•
2000.05.15 23:44
답변 감사합니다. 그런데 오해가 있으신거 같아 몇자 적습니다. 저는 델파이의 웹모듈을 이용해 게시판...
최석기
•
2000.05.16 02:31
강인규 wrote: > 답변 감사합니다. 그런데 오해가 있으신거 같아 몇자 적습니다. > > 저는 델파이의 웹...
강인규
•
2000.05.16 02:45
뭐 제가 죄송하지요. 그런걸 가지구... 저는 아무리 찾아도 없던데 아무래도 공력의 차이인듯.... -_-; ...
김용진
•
2000.05.15 20:09
2
COMMENTS
/
0
LIKES
Active Form에서 다른 Active Form폼으로...
최석기
•
2000.05.15 21:51
저두 초보인데 요즘 그쪽으로 좀 해보구 있는데 ActiveForm은 일반 폼이랑은 좀 틀리더군요.. ActivForm...
김용진
•
2000.05.15 22:40
최석기 wrote: > 저두 초보인데 요즘 그쪽으로 좀 해보구 있는데 ActiveForm은 일반 폼이랑은 좀 틀리더군...
초보자
•
2000.05.15 19:49
1
COMMENTS
/
0
LIKES
[초보자]코딩좀 봐주세용!!!
cos
•
2000.05.15 20:14
초보자 wrote: > 소스는 다음과 같습니다. > 그런데 DBgrid에 입력된 값이 안 나타납니다. > 어떻게 ...
황선희
2000.05.15 19:42
0
COMMENTS
/
0
LIKES
사내에서만 사용가능한 메일기능을 구현할려고 합니다.
아무개
2000.05.15 19:23
0
COMMENTS
/
0
LIKES
ftp에서 file upload시 문제...
azure
2000.05.15 19:21
0
COMMENTS
/
0
LIKES
TTable 의 findfield
차니
•
2000.05.15 19:13
5
COMMENTS
/
0
LIKES
Cannot load an IDAPI service library.이게 무슨에려져
백영수
•
2000.05.16 00:57
차니 wrote: > Cannot load an IDAPI service library. > File:C:WINDOWSMSAPPSDAODAO3032.DLL > Alias:...
이재식
•
2000.05.15 22:12
차니 wrote: > Cannot load an IDAPI service library. > File:C:WINDOWSMSAPPSDAODAO3032.DLL > Alias:...
차니
•
2000.05.15 23:18
음...간단히 설명해 주시면 안되겠습니까? 지금 책을 구할수가 없어서여... 부탁입니다... > 이재식 W...
optech
•
2000.05.16 18:22
아마 환경설정이 잘못되어서 그럴겁니다. 지금 사용하는 alias가 mdb라면 bde administrator 에서 co...
차니
•
2000.05.16 19:06
확인해 봤는데...정말로 두개 뿐이더라구여...^^ 구런데..지금 사용하고 있느느 jet버젼을 확인하려면 어...
김영호
•
2000.05.15 18:47
1
COMMENTS
/
0
LIKES
시간경과시 자동실행
어린왕자
•
2000.05.16 03:53
전..암껏두 모르는 델초보인데요.. TTimer를 쓰면 안된가요? 저두 잘몰라서.. 마지막 클릭했을때나..마지...
안희준
•
2000.05.15 18:35
2
COMMENTS
/
0
LIKES
다른 프로그램의 MessageBox 찾기 예제 부탁
제가 무엇을 잘못했는지 모르겠지만 예제를 보면 이해가 빠를것 같군요.. 다른 프로그램의 버튼을 누른후 나오는 메세지박스를 찾아 닫는겁니다.. 제가 코딩하는 부분에 A 버튼을 누르면 다른 프로그램의 [검색] 버튼을 눌러 메세지박스가...
최용일
•
2000.05.15 21:36
안녕하세요. 최용일입니다. 소스 입니다. (델파이5) // 메세지 박스를 보이는 프로그램 유닛 unit M...
최용일
•
2000.05.15 19:59
안녕하세요. 최용일입니다. 저는 델파이 5를 씁니다. 실행 파일을 같이 보내니까 먼저 실행해 보세요. ...
로비
•
2000.05.15 18:29
3
COMMENTS
/
0
LIKES
실행안보이기(창문제?)
윤
•
2000.05.15 20:24
팁모아에서 봤는데 잘 찾아보세요.... 간단한 예제를 자료실에 올려주겠습니다. (tray icon)으로 검색해...
로비
•
2000.05.16 01:31
윤 wrote: > 팁모아에서 봤는데 잘 찾아보세요.... > 간단한 예제를 자료실에 올려주겠습니다. > (tray ...
로비
•
2000.05.16 17:41
로비 wrote: > 윤 wrote: > > 팁모아에서 봤는데 잘 찾아보세요.... > > 간단한 예제를 자료실에 올려주...
톰과 제리
2000.05.15 11:02
0
COMMENTS
/
0
LIKES
키보드 훅킹을 했는데 스크린세이브가 실행되면 먹통이.?
Mr.Q
•
2000.05.15 10:18
4
COMMENTS
/
0
LIKES
DBGrid문제입니다.
Mr.Q
•
2000.05.16 03:37
Mr.Q wrote: > 이 DBGrid가 문제가 많네요. 떱. > > 디비그리드에 포커스가 한번 들어가면, tab키 사용...
룡이친구
•
2000.05.15 19:34
Key Violation이 일어나는 이유는 님께서 DB를 잘못 구성하셨기 때문일 겁니다. 테스트를 위해 똑같은 예...
HART
•
2000.05.15 18:35
원하는 칼럼에 이동하는 방법은 DBGrid1.SelectedField := 이동하고 싶은 field DBGrid1.setfocus; ...
nilriri
•
2000.05.15 18:40
dbgrid1.Options := [dgEditing,dgAlwaysShowEditor,dgTitles,dgIndicator,dgColumnResize,dgColLines...
poppe
•
2000.05.15 09:32
1
COMMENTS
/
0
LIKES
form에 있는 플래시에 이벤트를 주려면........어떻게?
조규춘
•
2000.05.15 21:11
poppe wrote: > > Tshockwaveflash라는 콤포넌트를 폼에 띄어놓았는데 Onclick 이벤트를 줄수가 없 ...
DB
2000.05.15 08:09
0
COMMENTS
/
0
LIKES
DBGRID에 콤보박스 및 DB콤보박스 넣는 방법은요
mumu
2000.05.15 07:16
0
COMMENTS
/
0
LIKES
쿼리를 엑셀로 사용방법좀 일러주세요.
날나리
•
2000.05.15 03:15
1
COMMENTS
/
0
LIKES
파라독스DB 통합하는 방법이 있을까요??
임형호
•
2000.05.15 03:23
날나리 wrote: > 파라독스DB가 여러개있습니다.. > 물론 모든 구조는 똑같습니다... > > 여러개의 DB...
안희준
2000/05/15 18:35
Views
375
Likes
0
Comments
2
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
소스 입니다. (델파이5)
// 메세지 박스를 보이는 프로그램 유닛
unit MsgForm_Unit;
interface
uses
Windows, Messages, Classes, Forms, StdCtrls, Controls;
type
TMsgForm = class(TForm)
MsgButton: TButton;
Label1: TLabel;
procedure MsgButtonClick(Sender: TObject);
end;
var
MsgForm: TMsgForm;
implementation
{$R *.DFM}
procedure TMsgForm.MsgButtonClick(Sender: TObject);
begin
Application.MessageBox('메세지 박스입니다.', 'MsgBox', id_OK);
end;
end.
// 메세지 박스를 보이는 프로그램 유닛의 폼
object MsgForm: TMsgForm
Left = 447
Top = 24
Width = 276
Height = 96
Caption = 'MsgForm'
Color = clBtnFace
Font.Charset = HANGEUL_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = '굴림'
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 12
object Label1: TLabel
Left = 14
Top = 12
Width = 240
Height = 12
Caption = '아래의 버튼을 누르면 메세지 박스가 뜹니다.'
end
object MsgButton: TButton
Left = 96
Top = 36
Width = 75
Height = 25
Caption = 'MsgButton'
TabOrder = 0
OnClick = MsgButtonClick
end
end
// 메세지 박스를 찾는 프로그램 유닛
unit FindForm_Unit;
interface
uses
Windows, Messages, SysUtils, Classes, Forms, ExtCtrls, StdCtrls, Controls;
type
TForm1 = class(TForm)
Timer1: TTimer;
Label1: TLabel;
CheckBox1: TCheckBox;
Button1: TButton;
procedure Timer1Timer(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Timer1Timer(Sender: TObject);
var
DialogWnd, ButtonWnd: HWND;
begin
// 메세지 박스 찾기...
DialogWnd := FindWindow('#32770', 'MsgBox');
if DialogWnd <> 0 then
begin
// 메세지 박스의 버튼 핸들을 찾기
ButtonWnd := FindWindowEx(DialogWnd, 0, 'Button', '확인');
// 버튼에 클릭메세지를 보내 메세지 박스를 닫기
if ButtonWnd <> 0 then
begin
SendMessage(ButtonWnd, WM_LBUTTONDOWN, 0, 0);
SendMessage(ButtonWnd, WM_LBUTTONUP, 0, 0);
end;
end;
end;
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
Timer1.Enabled := CheckBox1.Checked;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
Path: string;
begin
Path := ExtractFilePath(Application.ExeName);
WinExec(PChar(Path + 'MsgForm_Prj.exe'), SW_SHOWDEFAULT);
end;
end.
// 메세지 박스를 찾는 프로그램 유닛의 폼
object Form1: TForm1
Left = 191
Top = 23
Width = 224
Height = 149
Caption = 'Form1'
Color = clBtnFace
Font.Charset = HANGEUL_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = '굴림체'
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 12
object Label1: TLabel
Left = 27
Top = 16
Width = 162
Height = 12
Caption = '메세지 박스를 먼저 띄우세요'
end
object CheckBox1: TCheckBox
Left = 59
Top = 48
Width = 97
Height = 17
Caption = '타이머 가동'
Checked = True
State = cbChecked
TabOrder = 0
OnClick = CheckBox1Click
end
object Button1: TButton
Left = 27
Top = 88
Width = 161
Height = 25
Caption = '메세지 프로그램 실행하기'
TabOrder = 1
OnClick = Button1Click
end
object Timer1: TTimer
Interval = 100
OnTimer = Timer1Timer
Left = 172
Top = 44
end
end
^^ 항상 즐코하세요.
안희준 wrote:
> 제가 무엇을 잘못했는지 모르겠지만 예제를 보면 이해가 빠를것 같군요..
>
> 다른 프로그램의 버튼을 누른후 나오는 메세지박스를 찾아 닫는겁니다..
>
> 제가 코딩하는 부분에 A 버튼을 누르면 다른 프로그램의 [검색] 버튼을 눌러
>
> 메세지박스가 뜨면 닫는거지요..
>
> 그럼.........잘된다고 하시니 제가 질문하게 해결 가능한 얘기이군요...^^
>
> 실력이 딸려서리.....암튼 부탁드려요...^^
>
> 이곳을 자주 이용하게 될것 같은 느낌이 듭니다.....하하..^^