窗口句柄无效

时间:2015-05-19 06:42:43

标签: c# window

我正在编写一个应用程序来改变c#中使用setwindowpos在screan上的位置,但是当我想使用MainWindowHandle从Process类获取主窗口句柄时,我一直得到零。我做错了什么。

public void run()
{

    string patch = "1.pdf";
    Process p = new Process();
    ProcessStartInfo pi = new ProcessStartInfo();
    pi.UseShellExecute = true;
    pi.FileName = @patch;
    p.StartInfo = pi;
    p.Start();
    Thread.Sleep(1000);
    p.Refresh();
    IntPtr id = p.MainWindowHandle;
    Console.Write(id);
    Load.SetWindowPos(id, (IntPtr)HWND_TOP, 0, 0, 0, 0, 0x0040);

}

1 个答案:

答案 0 :(得分:-1)

Here是一个很好的例子,可以帮助你。还要记住,这些窗口是根据它们在屏幕上的外观排序的。最顶层的窗口接收最高排名,是Z顺序中的第一个窗口。