안녕하세요, 정상적으로 최소화하는 대신 모든 프로그램을 시스템 트레이에 최소화하는 프로그램을 만들려고합니다. 이것이 가능한가? 나는 구글에서 주변을 둘러 보았지만 아무것도 찾을 수 없다.모든 프로그램을 시스템 트레이로 최소화
답변
시스템 트레이의 아이콘을 "알림 아이콘"이라고합니다.
자신의 응용 프로그램에이 작업을 수행하려면 WinForms를 사용하는 경우 NotifyIcon 클래스를 사용하여 시스템 트레이에 아이콘을 표시 할 수 있습니다. 그런 다음 작업 표시 줄에 창을 표시하지 않도록 설정하면됩니다.
WPF를 사용하는 경우 대체가 필요하지 않으며 이전 WinForms NotifyIcon 클래스를 사용해야합니다. 이에 대한 자세한 내용은 MSDN sample을 확인하십시오. 다른 응용 프로그램을 숨기려면
은, 당신이해야 할 것은 사용 API는 응용 프로그램 윈도우의 상태로 변경하는 호출이다.
FindWindow을 사용하여 숨기려는 창에 대한 핸들을 얻을 수 있습니다. 그러면 GetWindowLong을 사용하여 창 상태를 가져올 수 있습니다. 그런 다음 상태에서 WS_EX_APPWINDOW 플래그를 제거하고 SetWindowLong 메서드를 사용하여 새 스타일을 적용해야합니다. 이렇게하면 작업 표시 줄에서 제거됩니다. 그런 다음 Get/SetWindowState 메서드를 사용하여 창의 상태를 찾아 숨기거나 최소화 할 수 있습니다.
여전히 시스템 트레이에 자신의 아이콘을 표시하려면 NotifyIcon 클래스를 사용해야합니다.
그 모두와 행운을 비네. 개인적으로 시도한 것이 아니지만 이러한 방법 호출을 다른 방식으로 사용했습니다. C#에서 API를 작성하지 않은 경우 버전 API 메소드에 대한 DllImport를 알아 내야 할 때가 있습니다. 너무 어렵지 않아야합니다.
Crazyd22는 API 방식의 약간 다른 세트를 사용하지만 거의 같은 효과를 달성하는 codeproject article을 발견했다. (아래 의견을 참조하십시오.)
- 1. 시스템 트레이로 최소화 할 때 WM_QUERYENDSESSION을받지 못함
- 2. 시스템 트레이로 작업
- 3. Chrome 브라우저를 트레이로 최소화 하시겠습니까?
- 4. silverlight 3 트레이로 최소화 + 데스크탑에서 드래그 앤 드롭?
- 5. C# - 시스템 시작시 최소화 트레이
- 6. 바탕 화면 표시/모든 최소화/모든 창이 최소화 될 때 내 응용 프로그램에 알리는 방법? 쇼 바탕 화면/모든를 최소화 할 때 내 응용 프로그램을 통지하는 방법
- 7. Win32 C++에서 백그라운드에서 프로그램을 실행하는 동안 KeyPress를 감지하는 방법
- 8. C++에서 Win32 API를 사용하여 시스템 트레이로 창을 최소화하는 방법은 무엇입니까?
- 9. 시스템/프로그램을 악용에 취약하게 만들기
- 10. 모든 시스템 모뎀 나열
- 11. 응용 프로그램을 최소화 한 후 복원시 Windows에서 마우스 포인터를 찾음
- 12. 응용 프로그램을 최소화 할 때 UI를 업데이트하는 방법
- 13. Listview의 내용 최소화
- 14. 최소화, 최대화 exe 프로그램
- 15. android에서 최대화 및 최소화
- 16. 브라우저 창 최소화
- 17. 최소화 된 응용 프로그램을 캡쳐 할 수 있습니까?
- 18. 모든 시스템 인증서 저장소 나열
- 19. 단축키를 시스템 전체에서 수신하는 AppleScript 프로그램을 만듭니다
- 20. 내 프로그램을 특수 키로 활성화하려면 어떻게해야합니까?
- 21. Applescript로 앱 최소화 취소
- 22. div를 최소화/최대화
- 23. OpenGL에서 glDrawArray 호출 최소화
- 24. Java 의존성 최소화
- 25. 클러스터의 모든 노드를 모니터링하는 시스템 작성
- 26. 시스템 트레이 응용 프로그램을 만드는 효과적인 방법
- 27. commons-exec : 시스템 PATH에서 프로그램을 실행 하시겠습니까?
- 28. C# 프로그램을 사용하여 시스템 매개 변수 결정
- 29. Android - 앱 최소화 처리
- 30. 메인 애플리케이션 윈도우 상단에 최소화 할 수있는 최소화 가능한 JFrame
네, iTunes와 같은 다른 응용 프로그램을 의미합니다. – Crazyd22
아, 다른 프로그램을 최소화하고 싶습니다. 그래도 여전히 시스템 트레이에 아이콘을 표시하기 위해 NotifyIcon을 사용해야하지만 프로그램 작업 표시 줄 창을 숨기려면 API 호출을 찾아야합니다. 잠깐만, 내가 뭔가를 찾을 수 있는지 알게 될거야. –
알겠습니다, 감사합니다. ^^ – Crazyd22