wafuの技術

技術習得の努力メモです。

Rubyでfiddle(1) メモ帳を操作

rubyでfiddleを使用して、windows11のメモ帳を操作して見ました。

windows10までのメモ帳は値の変更が必要です。

 

require "fiddle/import"
require 'fiddle/types'

module WIN32API
  extend Fiddle::Importer
  dlload 'C:\\Windows\\System32\\user32.dll'
  include Fiddle::Win32Types 
  extern 'HWND FindWindowEx(HWND,HWND,char*,char*)'
  extern 'int SendMessage(HWND,UINT,char*,char*)'

end

 

hwnd = WIN32API.FindWindowEx(0,0,"Notepad",0)

hwnd = WIN32API.FindWindowEx(hwnd, 0, "RichEditD2DPT", 0);    #Windows11

#メモ帳に文字列を送る
#WM_SETTEXTは12
WIN32API.SendMessage(hwnd, 12, 0, "kanji");

 

 

hwndのNULLの判定は、hwnd.null?でできるようです。