2014-06-06 37 views
1

我的剧本后退出测试中的WPF应用程序,很多时候我觉得鬼应用程序图标在通知area.It留下的只是消失当我做了鼠标悬停manually.If这个动作是自动的,它抛出一个错误说“对象不存在“(因为当TC采取行动时图标会消失)。 有没有更好的方法来解决这个问题? Iam使用TC9和jscript。如何从通知区域删除我的应用程序的幽灵图标?

感谢您的帮助!

回答

2

您可以使用Windows API函数SendMessage发送WM_MOUSEMOVE消息通知区域中的对象。我从this question的答案中取出代码并将其修改为TestComplete:

// JScript 
function RefreshNotificationArea() 
{ 
    var WM_MOUSEMOVE = 0x0200; 

    var explorer = Sys.Process("explorer"); 
    var toolbars = [ 
    explorer.Window("Shell_TrayWnd").Window("TrayNotifyWnd").Window("SysPager").Window("ToolbarWindow32"), 
    explorer.Window("NotifyIconOverflowWindow").Window("ToolbarWindow32") // toolbar with hidden icons 
    ]; 

    for (var i = 0; i < toolbars.length; i++) 
    { 
    var toolbar = toolbars[i]; 
    for (var x = 0; x < toolbar.Width; x += 5) 
     for (var y = 0; y < toolbar.Height; y += 5) 
     Win32API.SendMessage(toolbar.Handle, WM_MOUSEMOVE, 0, (y << 16) + x); 
    } 
} 
相关问题