是不是 findwindow 的结果有问题,楼主不妨用记事本窗口先测试一下,showwindow 应该可以的。

解决方案 »

  1.   

    findwindow没问题。返回句柄是正确的。因为发送sendmessage(handle,wm_close,0,0);可以把程序关闭掉。说明获取的句柄是正确的。
      

  2.   

    WinExec(pChar('*.exe'),SW_HIDE); 
      

  3.   

    var
      h:  HWND;
    begin
      h  :=  FindWindow(nil,'计算器');
      SetWindowLong(h,GWL_HWNDPARENT,WS_EX_TOOLWINDOW);
    end;
      

  4.   

    因为还有个application的句柄var
      h: THandle;
    begin
      //隐藏窗口
      h := FindWindow('TfrmUI2', 'frmUI2');
      if h <> 0 then
        ShowWindow(h, SW_HIDE);
      //隐藏application,prj是任务栏上面显示的名字
      h := FindWindow('TApplication', 'prj');
      if h <> 0 then
        ShowWindow(h, SW_HIDE);
      

  5.   

    楼上正解,ShowWindow(handle, SW_HIDE)
      

  6.   

    用ShowWindow(handle, SW_HIDE)就可以了呀。