2013-04-13 6 views
0

Я использую C# .net 4.5; Мой вопрос: как я могу получить местоположение cmd. например, чтобы получить свое собственное расположение формы, я использую this.Location, и я получаю x и y. Как я могу сделать это для приложения, которое работает, но не имеет ничего общего с моим собственным приложением? Я знаю, что это возможно, потому что Windows 8 использует что-то подобное. :)Как получить местоположение cmd?

спасибо за помощь ...

+1

Расположения cmd.exe является «% WINDIR% \ system32 \ cmd.exe "... но я подозреваю, что вы хотите что-то еще ... но не понятно, что? –

ответ

3

Ваш вопрос на первый взгляд кажется, что вы хотите, расположение ехе приложения, а не положение окна. Если вам нужна позиция окна, вам нужно использовать API.

[StructLayout(LayoutKind.Sequential)] 
public struct Rect 
{ 
    public int left; 
    public int top; 
    public int right; 
    public int bottom; 
} 

[DllImport("user32.dll")] 
public static extern IntPtr GetWindowRect(IntPtr hWnd, ref Rect rect 

И затем использовать его так:

var proc = Process.GetProcessesByName(proccessName)[0]; 
Rect rect = new Rect(); 
GetWindowRect(proc.MainWindowHandle, ref rect); 

Надеется, что это помогает

Для получения дополнительной информации смотрите на MSDN и pInvoke

+1

+1 для ответа и телепатических сил :) –

+0

+1 для умственной гимнастики. ^^ – C3PO

Смежные вопросы