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
번호 분류 제목 날짜 조회 수
77 Excel Excel) 엑셀 콤보박스 대화상자 목록지정하기 2011.12.21 29390
76 컴퓨터잡담 한글 HEX 코드표 1 5 2010.03.17 29519
75 컴퓨터잡담 rss리더기 2010.03.12 29825
74 [Docs]스프레드시트 Google Spreadsheet (Docs) 에서 우리은행 환율정보 이용하기 2014.11.11 29869
73 AutoHotKey autohotkey) 윈도우 ahk_id 추출하기 2 2012.03.06 30088
72 컴퓨터잡담 eXCEL VBA)엑셀파일 열지않고 내용 불러오기 3 2011.10.23 30514
71 프로세스 PF사용...페이징 중지를 통한 시스템 성능개선 2011.04.10 30889
70 컴퓨터잡담 네이버, 다음지식 php로 RSS 출력 만들기 1 file 2009.08.05 31009
69 Excel Excel Vba) 현재 셀에서 한줄내림 (activecell.offset(1,0).Select) 3 2012.01.05 31016
68 파이썬 자바스크립트 종말각?! HTML에서 파이썬 실행하는 PyScript 등장! 2022.06.08 31254
67 컴퓨터잡담 VBA - 시트/셀, 엑셀 값만 복사하기! (VBA을 이용한 복사영역 조절) 2011.10.04 31413
66 컴퓨터잡담 엑셀에서 날짜와 시간 계산하는 법 2 2010.09.20 31664
65 컴퓨터잡담 컴퓨터 OS부팅도 이젠 초고속 전쟁이다. 3 2009.08.07 31752
64 컴퓨터잡담 네이버 만화 PHP로 RSS 출력 만들기 file 2009.08.05 31787
63 컴퓨터잡담 MySQL TABLE 손상시 대응방법(db 내용이 안 나올때) file 2009.08.24 31833
62 프로세스 reader_sl.exe , AdobeARM.exe 프로세스 삭제방법 3 2011.02.13 32053
61 컴퓨터잡담 mysql 재시작, 사용자 추가 명령어 1 2 2009.11.19 32229
60 AutoHotKey ahk) 열려진 엑셀창의 값 불러오기 1 2013.10.30 32526
59 컴퓨터잡담 현재 쿠키,세션 값 전부 보기 2009.06.30 32612
58 컴퓨터잡담 특정 파일을 제외한 현재 디렉토리 내의 모든 파일을 삭제하는 배치파일 2022.07.14 32728
Board Pagination Prev 1 ... 41 42 43 44 45 46 Next
/ 46

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


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

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

설치 취소