ExitProcessっていうのは自分でつなげてください。
とりあえずタスクマネージャーを探すプログラム。
質問者様が何に使うか分からないので全部のタイトル探す形式にしました。
#module
#uselib "user32.dll"
#cfunc GetDesktopWindow "GetDesktopWindow"
#cfunc GetWindow "GetWindow" int,int
#cfunc GetWindowText "GetWindowTextA" int,int,int
#cfunc IsWindowVisible "IsWindowVisible" int
#uselib "kernel32.dll"
#cfunc lstrcmp "lstrcmp" int,int
#define MAX_PATH 260
#define GW_OWNER $00000004
#define GW_HWNDNEXT $00000002
#define GW_CHILD $00000005
#deffunc getproclist var prm1
WndDesk=GetDesktopWindow()
if WndDesk!0 {
WndCurWin=GetWindow(WndDesk,GW_CHILD)
}else{
return -1
}
buf="" : sdim szClassName,MAX_PATH : sdim chWinTxt,MAX_PATH
count=0
while WndCurWin!0
await
ret=GetWindowText(WndCurWin,varptr(chWinTxt),MAX_PATH)
if chWinTxt!"" {
vs=IsWindowVisible(WndCurWin)
if vs!0 {
owhwnd=GetWindow(WndCurWin,GW_OWNER)
if owhwnd==0 {
if chWinTxt!"Program Manager" {
lpString="Progman"
cp=lstrcmp(varptr(szClassName),varptr(lpString))
if cp!0 {
i=WndCurWin : buf+=str(i)+","+chWinTxt+"\n"
count++
}
}
}
}
}
WndCurWin=GetWindow(WndCurWin,GW_HWNDNEXT)
wend
prm1=buf
sdim szClassName,0 : sdim chWinTxt,0 : sdim buf,0
return count
#global
//タイトル取得開始
sdim buf,256
sdim tit,256
temp=str(temp) : work=str(work)
getproclist temp : num=stat
notepos=0 : count=0
sdim mhwnd,8,num : sdim proctitle,260,num
repeat num
await
repeat 2
getstr work,temp,notepos,',' : notepos+=strsize
if cnt==1 : proctitle(count)=work
loop
buf+=proctitle(count)+"\n";bufにタイトルを詰め込む
count+
loop
mes "取得したタイトル:\n\n"+buf+"\n"
//「Windows タスク マネージャー」のタイトル調べる
notesel buf
count=0
repeat noteinfo(0)
noteget tit,cnt
if tit="Windows タスク マネージャー":count+
loop
if count=0{
mes "「Windows タスク マネージャー」は見つかりませんでした"
}else{
mes "「Windows タスク マネージャー」は"+count+"個見つかりました"
}
stop