Skip to content
조회 수 45972 추천 수 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
번호 분류 제목 날짜 조회 수
577 컴퓨터잡담 svchost.exe cpu,memory 점유 문제 해결 4 2011.01.26 6477
576 [Docs]스프레드시트 [구글스프레드시트] 현재의 셀주소 참조(address, cell) 2022.01.26 6516
575 컴퓨터잡담 DLL Injection - SetWindowsHookEx()함수 이용방법 1 2011.09.15 6520
574 Server 아파치 MPM 모드와 nginx 비교(apache 2.4 vs nginx) 2016.03.05 6522
573 컴퓨터잡담 서버에 SSD 교체 작업을 해야되나? 2010.04.20 6522
572 컴퓨터잡담 미국판 싸이월드라고 하는 페이스북 CEO 마크 주커버그 2 2010.07.22 6543
571 WindowsTip 100M Full 속도내기(레지스터리) file 2013.01.11 6545
570 컴퓨터잡담 Windows XP 인증방법 개선으로 업데이트 기능 정상 사용하기 2010.11.03 6590
569 컴퓨터잡담 엑셀 2007에서 날짜표현 중 년도에서 7년이 지난 값 구하기 file 2010.11.18 6660
568 AutoHotKey IF문에서 변수와 상수 또는 변수와 변수 비교하기시 주의사항 2012.01.23 6679
567 컴퓨터잡담 arp란? arp 해킹방법 및 차단방법(MAC 다발변조로 인한 인터넷 차단방지) 4 2011.12.26 6681
566 컴퓨터잡담 한글(hwp) msvcr71.dll 오류 해결방법 1 1 file 2013.01.22 6702
565 [Docs]스프레드시트 구글 스프레드시트 ajax POST를 통한 기록 따라해보기 file 2018.01.13 6728
564 WindowsTip MS 에센셜 정식한글판 (MSE) 2 3 2012.08.07 6735
563 WindowsTip TCP/IP Network Communication without extra Tools(DB, 메신저 등등) 2012.07.03 6777
562 WindowsTip 악성코드 분석 프로그램 정리 2013.03.06 6809
561 컴퓨터잡담 인터넷 시간만료에 따른 증상 및 대처방법 2 2 file 2011.12.18 6816
560 컴퓨터잡담 [php] 외부이미지 파일이 정상인지 체크 2011.08.28 6823
559 컴퓨터잡담 nVIDIA GTX750Ti 드라이버 file 2019.02.19 6827
558 [Docs]스프레드시트 구글 앱스 스크립트(Google Apps Script) 외부에서 실행하기 2019.01.09 6829
Board Pagination Prev 1 ... 16 17 18 19 20 ... 46 Next
/ 46

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


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

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

설치 취소