칼무리 - 외부 명령으로 캡처 자동화하기

1. 기능 개요

  • 메시지 대상 윈도우 클래스명: TFrmKalmuri

  • 메시지 유형: WM_COPYDATA (0x004A)

  • 데이터 형식(JSON):

    {"command": "capture"}
  • 지원 명령

    • "capture" : 캡처 실행
    • "about" : 프로그램 정보창 표시

현재는 위 두 가지 명령만 지원하지만,
향후 버전에서 다양한 명령어를 추가할 예정입니다.


2. Python 예제 코드

아래 코드는 Python에서 WM_COPYDATA 메시지를 보내 캡처를 트리거하는 간단한 예시입니다.

import ctypes, json
from ctypes import wintypes

user32 = ctypes.WinDLL("user32", use_last_error=True)
WM_COPYDATA = 0x004A

class COPYDATASTRUCT(ctypes.Structure):
    _fields_ = [("dwData", wintypes.LPARAM),
                ("cbData", wintypes.DWORD),
                ("lpData", wintypes.LPVOID)]

# 전송할 데이터
data = json.dumps({"command": "capture"})
buf = ctypes.create_unicode_buffer(data)
cds = COPYDATASTRUCT(1, len(data.encode('utf-16le')), ctypes.cast(buf, wintypes.LPVOID))

# Kalmuri 윈도우 찾기
hWnd = user32.FindWindowW("TFrmKalmuri", None)

if hWnd:
    r = user32.SendMessageW(hWnd, WM_COPYDATA, 0, ctypes.byref(cds))
    print("전송 완료" if r == 1 else f"실패 (결과: {r})")
else:
    print("창을 찾을 수 없습니다.")

Python 3 이상 환경에서 실행하면
칼무리가 실행 중일 때 즉시 캡처가 동작합니다.


3. 배치파일에서도 간단하게 사용하기

파이썬 환경이 없는 경우를 위해
WM_COPYDATA 메시지를 직접 전송하는 경량 실행파일(kalmuri_cmd.exe) 을 제공합니다.

사용 방법

kalmuri_cmd.exe

실행 즉시 칼무리의 캡처 기능이 호출됩니다.

첨부 파일

  • kalmuri_cmd.c — 순수 WinAPI 기반 소스 코드
  • kalmuri_cmd.exe — 컴파일된 실행 파일 (약 4KB)

5. 마무리

칼무리의 캡처 기능은 이제 외부 스크립트나 자동화 환경에서도 제어할 수 있습니다.
배치 스크립트, 작업 스케줄러, 또는 다른 프로그램과 연동해
자동 캡처 및 후속 작업을 자유롭게 구성할 수 있습니다.

앞으로도 외부 명령을 확장하여
더 다양한 자동화 환경에서 활용할 수 있도록 지속적으로 개선하겠습니다.

감사합니다.

评论

  1. 좋은 기능 넣어주셔서 감사합니다!! 칼무리 이용해서 자동화 하는데 큰 도움이 되었습니다!!

精华帖

Linux Apache에서 GPTBot·Amazonbot·AhrefsBot의 게시판 이미…
其他 Midjourney, DALL·E, ChatGPT에서 Y2K 파스텔 UI 프롬프…
Linux Cloudflare R2 자동 업로드 구성하기. 특정 폴더에 파일…
WordPress 워드프레스 7.0 관리자 링크 색상 변경 후 이전 색상으…
WordPress 캐시 환경에서 AJAX 댓글(코멘트) 분리로 서버 응답시간…
Linux 아파치 일반 계정 파일 접근 권한 설정과 mod-ruid2 적…
Delphi Delphi IDE 메인 폼 안열림 dproj 설정으로 해결
开发技巧 VSCode 한국어 설정법, Configure Display Language로 U…
其他 RustDesk 자체 서버 구축으로 공용 서버 로그인 문제 해…
Linux Dante SOCKS5 프록시 서버 구축 및 설정
Windows 윈도우 실행파일(exe) 서비스 등록 자동화 쉽게 하는 방…
其他 CLIProxyAPI Windows 설치 가이드
WordPress 그누보드7 데이터를 WordPress WXR로 변환하기
其他 Ollama 설치 경로 C드라이브 고정 문제 해결 및 드라이…
开发技巧 Apache Access Log 기반 도메인별 방문자 카운터 구현
Windows ZImage AI 이미지 생성 환경 구축 방법
Windows 파일 복사 후 실행 배치파일 - 에러 감지 포함
开发技巧 네이버 검색 Open API
开发技巧 네이버 검색광고 키워드 도구 API 검색
开发技巧 MariaDB column_stats 테이블 오류 해결 방법
开发技巧 PHP-FPM 에러 로그 실시간 모니터링
Windows 윈도우11 업데이트 후 네트워크 드라이브 접근 불가 문…
开发技巧 다국어 번역 함수 구현 방법
WordPress "치명적인 오류가 발생했습니다" 디버깅 가이드
Linux Apache 웹 로그 분석하기 – awk와 GoAccess 활용
浏览 Kilho.net 칼무리 - 외부 명령으로 캡처 자동화하기
Windows 윈도11 강제업데이트 피하고 윈도10 계속 쓰기
Linux PHP 파일 업로드 용량 늘리기
开发技巧 애드센스 충돌 문제 해결하기
Python Python Playwright로 Edge 브라우저 제어하기