내 응용 프로그램에서 시스템 네트워크 아이콘을 설정/해제하려면 제어판을 통해 수행 할 수있는 작업을 좋아합니다. "HideSCANetwork"레지스트리 항목을 알고 있지만이 솔루션을 사용하려면 설정을 변경 한 후 탐색기를 다시 시작해야합니다. 시스템과 같이 원활하게이 작업을 수행 할 수있는 다른 솔루션이 있습니까?프로그래밍 방식으로 Windows 시스템 네트워크 아이콘을 켜고 끄는 방법
답변
는 thois을 수행하기위한 공식적인 API가 없습니다. 그 이유는 Microsoft가 사용자에게 알림 영역이 너무 꽉 차는 것을 막을 수 있기를 원했기 때문입니다. 문제는 사용자가 신경 쓰지 않는 알림 아이콘을 시작하는 응용 프로그램이 너무 많다는 것입니다.
많은 사용자가이 아이콘을 제거하는 방법을 모르기 때문에 Microsoft는 기본적으로 숨기기로 결정했습니다. 응용 프로그램이 이러한 숨기기/표시 설정에 액세스 할 수있는 경우 응용 프로그램은 기본적으로 알림을 표시하고 우리가 시작한 곳으로 돌아갑니다. 따라서 프로그래밍 방식으로 이러한 설정을 수정하기위한 메커니즘은 제공되지 않습니다.
당신은 똑같이 악의적 인 것, 즉 중요한 시스템 아이콘을 숨기려면 뭔가 다른 것을하고 싶습니다. 이 작업을 수행하기로 결정한 경우 설정이 저장되는 방식 (레지스트리에있을 가능성이 있음)을 리버스 엔지니어링하고 해당 방식으로 설정을 변경할 수 있습니다. 그러나 그렇게하면 시스템 디자인에 반대하게됩니다.
데이비드에게 감사드립니다. 내 응용 프로그램 (네트워크 관련 기능 제공)은 알림 영역의 시스템 네트워크 아이콘과 유사한 아이콘을 표시합니다. 두 개의 유사한 아이콘을보고 싶지 않은 사용자가 응용 프로그램을 실행하는 동안 시스템을 숨길 수 있도록 응용 프로그램에서 설정 항목을 만들고 싶습니다. – Shawnone
이제 불완전한 해결책을 찾았습니다. 기본적인 아이디어는 여기에서 온다 : http://www.codeproject.com/Articles/10807/Shell-Tray-Info-Arrange-your-system-tray-icons
몇 가지 팁 :
- 이 솔루션은 윈도우 7을 지원, 당신은 XP 확인 코드를 제거 할 수 있습니다. 당신이 (팁 텍스트 플러스 소유자 프로세스를 사용하여) 숨길 아이콘을 찾을 때, TB_HIDEBUTTON 메시지를 보내
struct TRAYDATA { DWORD64 hwnd; UINT uID; UINT uCallbackMessage; DWORD Reserved[2]; DWORD64 hIcon; }; typedef struct _TBBUTTON64 { int iBitmap; int idCommand; BYTE fsState; BYTE fsStyle; BYTE bReserved[6]; DWORD64 dwData; DWORD64 iString; } TBBUTTON64, NEAR* PTBBUTTON64, *LPTBBUTTON64; typedef const TBBUTTON64 *LPCTBBUTTON64;
- :
는 WOW64에, 당신은 TBUTTON64를 구조체 TRAYDATA을 변경하고 사용할 필요가 알림 영역 창으로 이동하십시오.
불완전한 부분은 트레이 아이콘이 숨겨져 있지만 알림 영역의 크기가 조정되지 않는다는 것입니다. 따라서 알림 영역에 빈 공간이 있습니다.
- 1. Windows Phone 7에서 GPS를 프로그래밍 방식으로 켜고 끄는 방법
- 2. 프로그래밍 방식으로 네트워크를 켜고 끄기
- 3. 프로그래밍 방식으로 백그라운드 가져 오기를 켜고 끄는 방법
- 4. 안드로이드에서 접근성 설정의 모든 소리를 프로그래밍 방식으로 켜고 끄는 방법?
- 5. Windows CE에서 WLAN을 켜고 끄는 방법 - 어떻게?
- 6. Android에서 3G를 켜고 끄는 방법
- 7. 사운드 버튼을 켜고 끄는 방법
- 8. 테이블 행을 켜고 끄는 방법
- 9. 비활성화 버튼을 켜고 끄는 방법
- 10. BlackBerry 메뉴를 켜고 끄는 방법?
- 11. 이온 라디오를 켜고 끄는 방법?
- 12. 안드로이드에서 블루투스를 켜고 끄는 방법?
- 13. OSX에서 네트워크 연결을 켜고 끄는 명령 줄 방법
- 14. 프로그래밍 방식으로 Windows 시스템 시간을 변경하는 방법?
- 15. 프로그래밍 방식으로 시스템 네트워크 (프록시) 설정 변경
- 16. 안드로이드 젤리에서 프로그래밍 방식으로 모바일 네트워크 연결을 켜고 끄기
- 17. 프로그래밍 방식으로 WiFi를 켜고 끌 수 있습니까?
- 18. 프로그래밍 방식으로 자동 밝기를 끄는 방법?
- 19. 안드로이드에서 프로그래밍 방식으로 위치를 끄는 방법
- 20. TStringGrid의 셀 색상과 텍스트를 켜고 끄는 방법
- 21. 시스템 작동 안드로이드의 애니메이션을 프로그래밍 방식으로 끄는 법
- 22. 안드로이드에서 USB 대용량 저장 장치를 프로그래밍 방식으로 끄는 방법?
- 23. Android 게임에서 소리를 전세계에서 켜고 끄는 방법
- 24. 자동 밝기를 켜고 끄는 방법? (반복이 아님)
- 25. JQPlot 라인 스무딩을 켜고 끄는 방법
- 26. 토글 버튼으로 gprs를 켜고 끄는 방법?
- 27. selectmenu를 켜고 끄는 방법 JQuery mobile
- 28. 서비스에서 플래시 카메라를 켜고 끄는 방법
- 29. PyQt - 맞춤법 검사를 켜고 끄는 방법
- 30. 파이썬을 사용하여 마이크를 켜고 끄는 방법
응용 프로그램에 권한이 없으므로 사용자의 독점권입니다. –
기업 환경에서는 GPO를 사용하지 않도록 설정할 수 있습니다. 다른 환경에서는 그대로 둘 수 있습니다! 이 경우 자신을 위해 레지스트리 키를 업데이트 한 후 WM_SETTINGCHANGE 브로드 캐스트 시도하십시오. –