응용 프로그램을 시작할 때 아이콘이 없습니다


12

/usr/share/applicationsrdesktop을 시작 하는 응용 프로그램 실행기를 만들었습니다 . 파일은 아이콘 이름을 지정하고 아이콘을 다음에 추가했습니다.

/usr/share/icons/HighContrast/48x48/apps
/usr/share/icons/HighContrast/22x22/apps
/usr/share/icons/HighContrast/256x256/apps
/usr/share/icons/HighContrast/32x32/apps
/usr/share/icons/HighContrast/scalable/apps-extra
/usr/share/icons/HighContrast/24x24/apps
/usr/share/icons/HighContrast/16x16/apps
/usr/share/icons/hicolor/scalable/apps
/usr/share/icons/hicolor/128x128/apps
/usr/share/icons/hicolor/16x16/apps

그런 다음 런처를 작업 표시 줄에 바르고 올바른 로고가있는 실행기가 작업 표시 줄에 표시됩니다. 그러나 작업을 시작하면 작업 표시 줄에 가운데에 물음표가있는 사각형 인 새 아이콘이 만들어집니다.

작업 표시 줄이 실행될 때 작업 표시 줄에 올바른 아이콘이 표시되도록 필요한 아이콘과 위치는 무엇입니까?

.desktop 파일 내용 :

[데스크탑 항목]
버전 = 1.0
터미널 = 거짓
Icon = mswindows
유형 = 응용
Categories = 네트워크;
Exec = rdesktop win7shared1 -g 1680x1000

이름 = win7shared1
GenericName = rdesktop
Comment = 창 데스크탑 열기

키워드 = Windows
StartupNotify = 거짓

답변:


15

문제를 해결할 가능성이 가장 큰 것은 다음을 수행하는 것입니다.

  1. 응용 프로그램을 엽니 다
  2. 실행 중이면 터미널을 열고 다음을 입력하십시오.

    xprop WM_CLASS
    
  3. 그런 다음 열린 응용 프로그램 창을 클릭하십시오.

  4. 출력은 다음과 같습니다 (예제 gedit).

    WM_CLASS(STRING) = "gedit", "Gedit"
    
  5. 파일 gedit에서 한 줄을 작성 하려면 첫 번째 부분 (이 경우 )을 사용하십시오 .desktop.

    StartupWMClass=<string>
    

    ( 예 : <string>의 실제 (첫 번째 부분) 출력으로 교체 )xprop WM_CLASSStartupWMClass=gedit

이제 다시 시도하십시오 (로그 아웃 / 로그인해야 할 수도 있음). 응용 프로그램이 시작 프로그램의 자체 아이콘 아래에 나타날 가능성이 큽니다.

설명

  • 응용 프로그램이 런처 ( .desktop파일) 에서 올바르게 시작 하지만 다른 아이콘이 일반 아이콘 (물음표) 으로 만 나타나는 경우 응용 프로그램 창과 런처가 어떤 이유로 연결되지 않고 런처가 연결되지 않을 가능성이 높습니다 응용 프로그램의 창을 "his"로 인식하십시오. 스크립트 또는 비표준 응용 프로그램 (-명령)을 사용하는 경우가 종종 있습니다. 그러한 경우에는 그 StartupWMClass=선이 종종 해결책입니다.

고마워 야곱 문제가 해결되었습니다. 레코드의 경우 WM_CLASS 문자열은 "rdesktop", "rdesktop"입니다.
clayton

@clayton 완벽합니다.
Jacob Vlijm

1
xprop를 사용하면 반환하려는 원자를 전달할 수 있으므로 실행 xprop WM_CLASS이 충분합니다
johndrinkwater

@johndrinkwater 힌트를 주셔서 감사합니다. 1 년 이상 전에, 14 개월 이상이 다른 사람이 쓴 것과 같습니다. :).
Jacob Vlijm

@ jacob-vlijm :) 어색한 xprop 행동을 조사하는 동안 방금 나왔습니다
johndrinkwater

2

나를 위해 xprop|grep WM_CLASSWM_CLASS(STRING) = "sun-awt-X11-XFramePeer", "jetbrains-pycharm-ce"(I 파이썬에 대한 pycharm이 문제가 발생했다)

그것은이었다 sun-awt-X11-XFramePeer(따옴표없이) 내의 .desktop 파일의 문자열로 필요하다고 - 감사합니다!


나는 StartupWMClass=sun-awt-X11-XFramePeer내 추가 하고 아무 일도 일어나지 않았다! 는 IS .desktop홈 폴더에있는 파일은?
anon58192932

0

아이콘을 올바른 위치에 놓은 후 xserver를 다시 시작하면됩니다 (로그 아웃 및 다시 로그인).
또한 아이콘 캐시를 업데이트하십시오 (단순히 아래 코드를 터미널에 붙여 넣으십시오).

for d in ~/.icons/*; do gtk-update-icon-cache -f $d; done
for d in /usr/share/icons/*; do sudo gtk-update-icon-cache -f $d; done
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.