Skip to content
조회 수 45965 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

VBS) PostMessage or SendMessage to external program

 

  vbscript code

  const WM_CUSTOMMSG = 1024

      retval = System.SendMessage(hdl,WM_CUSTOMMSG)  
   or 
      retval = System.PostMessage(hdl,WM_CUSTOMMSG)

 

 

 

 

I wrote a little test program using Visual Studio 2003 in C++ unmanage code (SimpleApp.cpp source supplied below) and tried it against ArcPad to test the SendMessage (test script supplied below too). 
 
// Code fragment 1: SimpleApp.cpp
// (contains a single icon resource IDI_SIMPLEAPP)

#include "stdafx.h"
#include "Resource.h"

const TCHAR szTitle[] = TEXT("SimpleApp");
const TCHAR szWindowClass[] = TEXT("SimpleApp");

LRESULT CALLBACK	WndProc(HWND, UINT, WPARAM, LPARAM);

int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR	lpCmdLine, int nCmdShow)
{
	WNDCLASSEX wcex;
	wcex.cbSize = sizeof(WNDCLASSEX); 
	wcex.style			= CS_HREDRAW | CS_VREDRAW;
	wcex.lpfnWndProc	= (WNDPROC)WndProc;
	wcex.cbClsExtra		= 0;
	wcex.cbWndExtra		= 0;
	wcex.hInstance		= hInstance;
	wcex.hIcon			= LoadIcon(hInstance, (LPCTSTR)IDI_SIMPLEAPP);
	wcex.hCursor		= LoadCursor(NULL, IDC_ARROW);
	wcex.hbrBackground	= (HBRUSH)(COLOR_WINDOW+1);
	wcex.lpszMenuName	= NULL;
	wcex.lpszClassName	= szWindowClass;
	wcex.hIconSm		= LoadIcon(wcex.hInstance, (LPCTSTR)IDI_SIMPLEAPP);
	RegisterClassEx(&wcex);
	HWND hWnd = CreateWindow(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW,
		CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInstance, NULL);
	if (!hWnd)
		return FALSE;
	ShowWindow(hWnd, nCmdShow);
	UpdateWindow(hWnd);
	MSG msg;
	while (GetMessage(&msg, NULL, 0, 0)) 
	{
		TranslateMessage(&msg);
		DispatchMessage(&msg);
	}
	return (int) msg.wParam;
}

LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
	PAINTSTRUCT ps;
	HDC hdc;
	switch (message) 
	{
	case WM_PAINT:
		hdc = BeginPaint(hWnd, &ps);
		EndPaint(hWnd, &ps);
		break;
	case WM_DESTROY:
		PostQuitMessage(0);
		break;
	case 1024:
		MessageBox(hWnd, TEXT("1024 received"), TEXT("debug"), MB_OK);
		break;
	default:
		return DefWindowProc(hWnd, message, wParam, lParam);
	}
	return 0;
}

--------------------------------------------------

REM Code fragment 2: test script

Dim w
w = System.FindWindow("SimpleApp", "SimpleApp")
Call System.SendMessage(w, 1024, 0, 0)

 

 

 

 

로그인 후 댓글쓰기가 가능합니다.

?

List of Articles
번호 분류 제목 날짜 조회 수
37 Server XE 업데이트 후 모듈업데이트가 안될때 참고 file 2015.03.13 1440
36 WindowsTip Windows XP 부팅속도 개선 팁 file 2015.01.24 1413
35 Server XE 리퍼러 모듈로 트래픽 발생에 대처방법 file 2016.04.17 1410
34 컴퓨터잡담 [오류해결방법] 200, Stream not found, NetStream.Play.StreamNotFound, clip: '[Clip] ... 2015.11.30 1356
33 Server 아파치 모듈 mod_deflate 압축하기 1 2016.03.17 1352
32 Server XE 어느날 갑자기 다운로드가 되지 않을때 해결방법 file 2016.04.07 1351
31 컴퓨터잡담 파이썬 키움증권 open api 분할매매 수식구하기 2021.09.04 1344
30 컴퓨터잡담 Python Requests post() Method 2021.08.31 1343
29 컴퓨터잡담 파이썬 파일로 읽어올 때 \n이 \\n으로 변경되는 현상 대처방법 2021.08.15 1342
28 Server PHP Opcache 적용 전과 후의 비교 1 2016.03.07 1325
27 Server MySQL - 속도저하에 따른 웹페이지 접속 지연 2016.03.03 1302
26 컴퓨터잡담 자주쓰는 파이썬 명령어 2021.06.05 1249
25 Server CSS, JS파일, gzip으로 한꺼번에 압축해서 전송하기 2016.03.08 1248
24 Server Windows APM Install(Apache 2.4, PHP 6.0, Mysql) 최신버전 설치해보기 2015.11.27 1246
23 Server WAPM에서 Database 접속 속도 개선하기 2016.03.03 1224
22 컴퓨터잡담 농업경영에 이용하지 않는 농지의 처분 의무 2021.06.11 1223
21 Server XE 카카오톡 글전송 2015.07.08 1223
20 Server XE ckeditor 모바일에서 사용하기 2015.07.13 1152
19 Server php.ini 파일설정으로 파일업로드 용량늘리기 2015.03.03 1152
18 컴퓨터잡담 [안드로이드] 키캣 4.4 버전 플래시 동영상 안될때 해결방법 file 2015.12.04 1148
Board Pagination Prev 1 ... 42 43 44 45 46 Next
/ 46

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소