ברצוני ליצור תוכנית ב #C שיכולה להסתיר ולהחזיר תכנית אחרת , אפילו אם התכנית
האחרת לא נפתחה על ידי התוכנית שיצרתי.
מצאתי קוד שמשתמש בשפת C לצורך הסתרה, אבל לא מצאתי איך ניתן להחזיר את מה
שהוסתר.
להלן חלק מהקוד (כרגע מה שהוא עושה זה להסתיר את כל התוכניות ששם התהליך שלהן
הוא של notepad (פנקס הרשומות) :
[DllImport("User32")]
private static extern int ShowWindow(int hwnd,int nCmdShow);
private const int SW_HIDE=0;
private const int SW_SHOWNORMAL=1;
private const int SW_NORMAL=1;
private const int SW_SHOWMINIMIZED=2;
private const int SW_SHOWMAXIMIZED=3;
private const int SW_MAXIMIZE=3;
private const int SW_SHOWNOACTIVATE=4;
private const int SW_SHOW=5;
private const int SW_MINIMIZE=6;
private const int SW_SHOWMINNOACTIVE=7;
private const int SW_SHOWNA=8;
private const int SW_RESTORE=9;
private const int SW_SHOWDEFAULT=10;
private const int SW_FORCEMINIMIZE=11;
private const int SW_MAX=11;
private void notifyIcon1_MouseDown(object sender,MouseEventArgs e)
{
int hWnd;
Process[] processRunning=Process.GetProcessesByName("notepad");
hWnd=pr.MainWindowHandle.ToInt32();
ShowWindow(hWnd,SW_HIDE);
}
ניסיתי המון דרכים להחזיר את מה שהוסתר (כולל להשתמש בערכים אחרים בקריאה
לפונקציה), אבל ללא הצלחה.
מישהו יכול לעזור?