HSPからDirectSSTP経由でSSP(デスクトップマスコット)に通知するサンプル
HSPからDirectSSTP経由でSSP(デスクトップマスコット)に通知するサンプル
#include "kernel32.as"#include "user32.as"#define MUTEX_ALL_ACCESS 0x1f0001#define PAGE_READONLY 0x02#define ERROR_ALREADY_EXISTS 183#define FILE_MAP_READ 4#define WM_COPYDATA 0x004ahSakura = 0OpenMutex MUTEX_ALL_ACCESS, 0, "ssp"hMX = statif hMX != 0 {OpenFileMapping FILE_MAP_READ, 0, "Sakura"hObj = statif hObj != 0 {MapViewOfFile hObj, FILE_MAP_READ, 0, 0, 65536if stat != 0 {ptr = statdupptr tmp, ptr+4, 65536, 2size = strlen(tmp)sdim buf, sizememcpy buf, tmp, size, 0, 0UnmapViewOfFile ptrtmp = 0bell = "" : poke bell, 0, 1notesel bufrepeat notemaxnoteget tmp, cntsdim tmp2, 64, 1 : sdim tmp3, 64, 1split tmp, bell, tmp2split tmp2(0), ".", tmp3if tmp3(1) == "hwnd"{hSakura = int(tmp2(1))}loopnoteunsel}CloseHandle hObj}CloseHandle hMX}if hSakura != 0{data = "NOTIFY SSTP/1.1\nSender: テスト\nEvent: onTalk\nScript: \\t\\1\\s[10]\\\s[0]Test!!\\e\nHWnd: "+hwnd+"\nCharset: Shift_JIS\n\n"dim cds, 3cds(0) = data_idcds(1) = strlen(data)cds(2) = varptr(data)sendmsg hSakura, WM_COPYDATA, hwnd, varptr(cds)mes data}