2013-04-13 4 views
0

저는 C# .net 4.5를 사용하고 있습니다; 내 질문에 어떻게 cmd 위치를 얻을 수 있습니다. 예를 들어 내 양식 위치를 얻으려면 this.Location을 사용하고 x와 y를 얻습니다. 어떻게 실행되고 있지만 내 자신의 응용 프로그램과 관련이없는 응용 프로그램에 대해 수행 할 수 있습니까? Windows 8에서는 이와 비슷한 것을 사용할 수 있기 때문에 가능하다는 것을 알고 있습니다. :) 돕는cmd 위치를 얻는 방법?

덕분에 ... 첫눈에

+1

cmd.exe를의 위치의 % windir "% \ 인 것이

희망이 도움 system32 \ cmd.exe "...하지만 다른 것을 원한다고 생각합니다 ... 그러나 명확하지 않은 것은 무엇입니까? –

답변

3

귀하의 질문은 당신이 응용 프로그램 EXE의 위치가 아닌 윈도우의 위치를 ​​원하는 것 같다. 창 위치를 원하면 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