i found these code from Tzackel. And I change it little bit.
Is it help.
CODEFunc ChangeYahooStatus($status)
if(Not ProcessExists("YahooMessenger.exe")) Then
MsgBox(4096,"Yahoo Messenger is closed","Please open yahoo messenger and login")
Return
Elseif WinExists("Yahoo! Messenger","YLoginWnd") Then
MsgBox(4096,"Yahoo Messenger is logged out","Please login to yahoo messenger")
Return
EndIf
$read=RegRead("HKEY_CURRENT_USER\SOFTWARE\Yahoo\pager\profiles\" & $user & "\Custom Msgs","1")
if($status<>$read) Then
$hex=_StringToHex($status)
RegWrite("HKEY_CURRENT_USER\SOFTWARE\Yahoo\pager\profiles\" & $user & "\Custom Msgs", "5_bin", "REG_BINARY", $hex & "00")
RegWrite("HKEY_CURRENT_USER\SOFTWARE\Yahoo\pager\profiles\" & $user & "\Custom Msgs", "5", "REG_SZ", $status)
RegWrite("HKEY_CURRENT_USER\SOFTWARE\Yahoo\pager\profiles\" & $user & "\Custom Msgs", "5_DND", "REG_DWORD", $busy)
$handle = WinGetHandle("Yahoo! Messenger","")
PostMessage($handle, "0x111", "0x188", "0");
EndIf
EndFunc