精华内容
下载资源
问答
  • 结果:没有解决对应的问题,怀疑应用指示器并非是解决任务栏图标不显示的问题。而且存在一些文件copy修改的操作,在实际安装中不友好。 2. 创建软连接 在Electron中搜索无果后,便将注意力转移到Ubuntu上,其中找到...

    1.前言

    上帝在给你打开一扇窗的同时,会给你挖个坑

    最近在做Electron-Vue支持Linux系统的调研。发现坑太多了,由于Linux的发行版太多再加上还有不同的UI,导致要做版本的支持会是一个让人很崩溃的事情。

    首先让我们看看Linux系统下的表现形式。

    2.Linux支持Electron客户端

    先了解一下Linux世界用户较多的前2大主要分支,

    • RedHat Red Hat Enterprise Linux 简称RHEL rpm (RedHat, CentOS, Fedora, Oracle…)
    • Debian Ubuntu Server 简称Ubuntu deb (Debian, Ubuntu, Mint, MX Linux…)
    • 还有:Arch, Gentoo, SUSE, BSD, Android等…

    前两大分支的包管理有2大阵营,安装文件互不相融。

    • 安装文件:*.rpm,RedHat分支,CentOS等,使用yum命令安装…
    • 安装文件:*.deb,Debian分支,Ubuntu等,使用apt-get命令安装…

    然后2边都推出了新的规则,希望能一统江湖:

    • Flatpak 是 RedHat 的东西;
    • Snap 是 Canonical 的东西。

    因为我制作的deb包,所以主要在DebianUbuntu上的支持.

    2.1 DeBian支持

    关于Debian的支持,我是用的是Deepin系统去做的测试,从打包到安装,在Deepin系统上表现良好,可以正常的安装使用以及正常显示左面图标。

    在Deepin系统下,通过npm run build打包后能正常安装使用

    但是通过build命令生成时的package.json中关于icon的配置项,在实际打包时并没有被引用。而是使用了在创建deb包时的关于Icon的配置。

    	"mac": {
          "icon": "build/icons/icon.icns"
        },
        "win": {
          "icon": "build/icons/icon.ico"
        },
        "linux": {
          "icon": "build/icons"
        }
    

    package.json中的配置图片指向了build/icons
    在这里插入图片描述
    而该图片是electron-vue自带的图片
    在这里插入图片描述
    在打成deb文件时的配置如下
    在这里插入图片描述
    而其中的指向的图片确实我自己定义的
    在这里插入图片描述
    而在安装deb文件后,却发现不管是快捷方式启动还是任务栏图片都指向了我的deb文件中的配置
    在这里插入图片描述
    所以在这里可以得出结论:在Deepin系统中,关于Electron-vue项目中的package.json中的build关注与icon的配置其实在build过程中是不生效的。在Deepin系统中,其实生成的任务栏图标,快捷方式图标都依赖于你在.desktop文件中的配置icon。其生成后的安装包和windows下的exe文件表现形式是相似的几乎不需要修改任何代码就可以移植到deepin中使用.

    2.2 Ubuntu系统支持Electron项目

    一开始我是将windowsElectron-vue的项目copy到Ubuntu。然后正常的打包,通过DEBIAN的方式去创建deb文件,安装deb文件,发现在应用列表中显示的图片是用户自己在deb配置中配置的。可以在应用了列表中支持显示
    在这里插入图片描述
    在任务栏中却不显示任何图片,不管是官方的图片还是用户自己定制的图片
    在这里插入图片描述
    就很懵逼,所以我就去Electron-vue官网查找有没有对应的设置,由于Electron-vue从2019年就不维护了,即便我在上面提了问题,也久久收不到回复。

    于是我就尝试重新下载一个Electron-vue项目,不做任何修改,然后通过制作deb的方式去创建安装文件,发现在执行npm run dev的时候,在任务栏撒花姑娘依旧是一片空白(如上图所示)。
    在这里插入图片描述
    这么说,官方给出的Demo压根就不支持Ubuntu下的安装?还是说Demo中的配置有问题?

    由于Electron-vue也没有人维护,便尝试着去github上去查一下Electron,看看有没有类似的问题。

    大都碰到的问题都是托盘中的图标问题,跟我的问题有出入,因为我的应用程序是在托盘中显示正常,在任务栏显示不正常。

    而有一部分问题指向了应用指示器,在一片文章上看到了关于应用指示器,其中提到了Electron

    1.修改应用指示器

    参考:http://www.webupd8.org/2017/04/fix-appindicator-not-working-for.html

    It looks like Dropbox isn't the only AppIndicator that doesn't work in Ubuntu 17.04 Zesty Zapus (under Unity) due to the change of XDG_CURRENT_DESKTOP from "Unity" to "Unity:Unity7".
    

    译文:由于XDG_CURRENT_DESKTOPUnity改为Unity:Unity7,导致应用指示器无法在Unity下的Ubuntu 17.04 Zesty Zapus

    Electron applications (such as the new Skype For Linux, WMail, PB For Desktop and many others) are affected as well, but in a different way. For Electron applications, the indicator is not displayed at all in Ubuntu 17.04 Zesty Zapus under Unity.
    

    译文:Electron应用(比如linux下的Skype, WMail, PB和其他的一些桌面应用)也会受到影响,但表现的方式/形式不一样。对于Electron应用,在Unity下的Ubuntu 17.04 Zesty Zapus根本就没有这个应用指示器。

    The fix is similar to the one applied to the Dropbox indicator. Simply run the application with "env XDG_CURRENT_DESKTOP=Unity". For example, to start Skype For Linux, you would use:
    env XDG_CURRENT_DESKTOP=Unity skypeforlinux
    

    译文:Electron应用指示器的修复类似于Dropbox。使用env XDG_CURRENT_DESKTOP=Unity来简单的执行程序。例如,启动在linuxSkype,你可以这么做:

    env XDG_CURRENT_DESKTOP=Unity skypeforlinux
    
    To make the fix permanent, copy the application desktop file from /usr/share/applications/ to ~/.local/share/applications/, then edit the file and change the "Exec" line by adding "env XDG_CURRENT_DESKTOP=Unity" (without the quotes) immediately after "Exec=".
    

    译文:要想永久性的修复,需要将/usr/share/applications/下对应的应用.desktop文件copy到~/.local/share/applications/,然后编辑.desktop文件,在Exec所在行直接在"Exec="后面添加XDG_CURRENT_DESKTOP=Unity

    Some applications are set to start automatically and in that case, you'll have to edit the desktop file from ~/.config/autostart/ in the same way.
    

    译文:一些其他的应用如果设置了自启动,在这种情况下,你必须用相同的方式去修改~/.config/autostart/下应用对应的desktop文件。

    Note that some applications overwrite any changes made to their autostart files, located in ~/.config/autostart/. A way around this is to rename the autostart file, then in the application settings, set the application not to start on login. This way, the modified autostart file will be used (which has a different name and contains the workaround).
    

    译文:注意,一些应用程序会覆盖对位于~/.config/autostart/中的自动启动文件所做的任何更改。解决这个问题的方法是重命名自动启动文件,然后在应用程序设置中,将应用程序设置为登录时不启动。这样,将使用修改后的自动启动文件(它有不同的名称,并包含解决方案)。

    结果:没有解决对应的问题,怀疑应用指示器并非是解决任务栏图标不显示的问题。而且存在一些文件copy修改的操作,在实际安装中不友好。

    2. 创建软连接

    Electron中搜索无果后,便将注意力转移到Ubuntu上,其中找到了类似的情况
    在这里插入图片描述
    于是尝试创建软连接的方式,没有解决对应的问题,因为Ubuntu20+ Gnome并没有对应的Steam文件

    ln -s ~/.var/app/com.valvesoftware.Steam/.local/share/Steam ~/.local/share/Steam
    

    搜索之后也没有对应的解决方案。

    在开发环境下,在托盘菜单中显示的是三个点,并不是你的icon图片,但是在build之后是没有问题的,所以我就没有关注。

    3. 回归最初

    大概花了一周的时间去调研在Electron-vueElecctronUbuntu中任务栏图标不显示的的问题。都没有找到解决方案,所以不得不又把目光锁定到项目的最初。

    由于在github上有出现过类似的问题,但是问题都被关闭了。便考虑了下是不是Electron版本的问题导致的,然后在后期版本中修复了这个问题。

    查看了一下Electron-vue中的版本Electron版本居然还是v2版本,而Electron官方版本已经到v11了。决定升级一下Electron版本。

    抛开自己的Electron-vue项目,转而到Electron-React项目,发现这个项目一直有人在维护,而且electron版本也是最近的,便构建了一个纯净的Electron-vue项目,然后构建deb文件,发现现象跟Electron-vue一样。
    在这里插入图片描述
    我不得不再次问号,……&%%&……%&……@…………@……#@@%¥@%¥

    既然这样我就直接用Electron去构建一个项目,让一切回到最初,最简单的方式去验证。

    在这里插入图片描述

    "scripts": {
       "test": "echo \"Error: no test specified\" && exit 1",
       "dev": "electron ."
     },
    

    我草,这…还是不显示。
    我就&……&…………(&(&(&((

    官方在原Demo中使用的是这个命令

       "start": "electron",
    

    执行yarn start的时候,奇怪的事情发现了
    在这里插入图片描述
    在这里插入图片描述
    也就是我在构建原Electron项目时,通过yarn start启动的是原官方的项目,而执行yarn dev的时候执行的是自己构建的项目代码,也就是说官方的可以显示,而我自己的不能显示(在不改任何代码的情况下)。

    于是问题就开始变得清晰了,也许在官方原项目进行打包的时候它配置了图片的路径,而我在实际开发自己的项目时并没有设置对应的图片。

    那么开始coding…,在创建窗口的时候引入一张图片icon:'icon.png'

    function createWindow () {
      const win = new BrowserWindow({
        width: 800,
        height: 600,
        frame:false,
        useContentSize: false,
        resizable: false,
        webPreferences: {
          nodeIntegration: true
        },
        icon:'icon.png'
      })
      win.loadFile('index.html')
    }
    

    于是奇迹出现了,它来了,它来了,它带着图片过来了
    在这里插入图片描述
    那这样的话,我就知道问题在哪了,启动程序时,任务栏的图片是在程序中生成的,而不是在构建应用时产生的。

    所以在前面提到的关于package.json中的build配置并没有什么用
    在这里插入图片描述

    于是我又把目光转回到我的Electron-vue项目,加上了图片设置

    // 创建窗体
    function createWindow() {
      let appIcon 
       //创建系统通知区菜单
       if (process.env.NODE_ENV !== 'development') {//生产环境
        appIcon = path.join(__static, './icon.png')
      } else {//研发环境
        appIcon = path.join(__dirname, './icon.png')
      }
      /**
       * Initial window options
       */
      mainWindow = new BrowserWindow({
        height: 350,
        width: 400,
        useContentSize: false,
        resizable: false,
        frame: false,
        icon: appIcon
      })
    }
    

    需要注意的是:在Electron-vue生产环境的路径图片存放在static
    在这里插入图片描述
    然后我就尝试在开发环境和生产环境,程序均可正常运行
    在这里插入图片描述
    在这里插入图片描述
    无论是在任务栏,还是桌面快捷方式,还是在托盘中,均能正常显示。

    终于结束了我一周的调研,结论就是:在选择框架上一定要选择有近期持续更新的架构,否则你选择的结构不维护了,连问问题都没有给你解答。

    展开全文
  • C# 在任务栏显示应用程序图标

    千次阅读 2012-02-16 09:04:16
    在System.Windows.Form中有属性:ShowInTaskBar(bool类型) 通过设置Form的ShowInTaskBar属性,可设置窗体是否在任务栏中进行显示或隐藏... 则在任务栏不显示; 注意:默认情况下,该属性的取值为true,即在任务栏

    在System.Windows.Form中有属性:ShowInTaskBar(bool类型

    通过设置Form的ShowInTaskBar属性,可设置窗体是否在任务栏中进行显示或隐藏

    form1.ShowInTaskBar=true; 则在任务栏中进行显示;

    form1.ShowInTaskBar=false; 则在任务栏中不显示;

    注意:默认情况下,该属性的取值为true,即在任务栏中进行显示

    补充:

    系统任务栏和通知区域的区别,如下图

    

    展开全文
  • 电脑任务栏不显示音量图标

    千次阅读 2010-01-05 20:49:00
     右键单击任务栏 属性 自定义 找到小喇叭 在下拉框选择总是显示 应用 确定。任务栏小喇叭不见的完全彻底解决方案:===================================================(1)注销再进,小喇叭就会出现了。(2)...

    最全的解决答案。

     

    右键单击任务栏 属性 自定义 找到小喇叭 在下拉框选择总是显示 应用 确定。
    任务栏小喇叭不见的完全彻底解决方案:

    ===================================================
    (1)注销再进,小喇叭就会出现了。

    (2)任务管理器中结束explorer.exe进程(注意是结束进程,不是结束进程树),然后

    再新建任务explorer.exe即可。

    (3)双击 我的电脑--- 控制面板---声音和音频设备---将音量图标放入任务栏,勾选---应用

    确定,要是已经勾选了就去掉勾选---应用确定,然后再勾选---应用确定。

    上面三种方法只是“暂时”解决问题 一重启就不行了!

    (4)右击《任务栏》属性,再点击《自定义》,在小喇叭处(音量》右面的《行为》栏,把它更改为《总是显示》点击确定,就OK了。

    ===================================================
    下面介绍的是可以解决“文件损坏 键值丢失” 的方法。。。。。。

    (4)“开始”——“运行”输入regedit打开注册表以后,依次打开

    hkey_local_machine/software/microsoft/windows/currentversion/run

    在它的右窗口新建字串"systray"(在run上右键点新建),键值(在systray上双击编辑)

    为"c:/windows/system32/systray.exe",如果是win2000系统,则为"c:/winnt/system32

    /systray.exe"。

    (5)修复损坏的sndvol32.exe 替换到c:/windows/system32

    sndvol32.exe文件

    ==================================================
    并不是全部的都是可以用上面的方法来解决的

    下面的两个方法是我目前发现的可以“解决文件没损坏 找不到原因的”终极问题解决方法

    (6)在(2)的基础上新建个用户,使用新用户,这也是个可以彻底解决这问题,我摸索

    出来的偏方!

    (7)用hap_taskbarrepairtoolplus!.exe来解决。

    展开全文
  • 定位到如下目录(即Start Menu文件夹): C:\ProgramData\Microsoft\Windows\Start Menu\Programs ...关闭所有以该应用打开的文件 删除Start Menu 文件夹下异常的 Adobe PDF 快捷方式 然后随意打开一个.md文件 ...

    定位到如下目录(即Start Menu文件夹):
    C:\ProgramData\Microsoft\Windows\Start Menu\Programs

    以typora为例子

    你也可以通过在开始菜单中,搜索出错程序的名字,右键单击出错的程序 > “打开文件位置”,来跳转到这个目录

    接下来:

    1. 关闭所有以该应用打开的文件
    2. 删除Start Menu 文件夹下异常的 Adobe PDF 快捷方式

    然后随意打开一个.md文件

    展开全文
  • 在windows10系统中,右下角会显示很多图标,但是有些我们自己安装的应用程序的图标显示在右下角的任务栏中,而是需要点击那个上拉箭头,使之弹出。这很方便我们使用,下面我们就来看一下如何解决这个问题吧...
  • 窗口最小化,任务栏不显示图标的解决办法 具体症状:无论打开多少个浏览器窗口或文档或者是应用程序,任务栏上面一个都不显示,只要缩小窗口后就找不到了,要想关闭只能打开任务管理器从里面关闭 解决办法: 打开...
  • C#之使用NotifyIcon实现任务栏托盘菜单,图标闪烁效果及气泡提示 很多程序是只需要后台运行的,甚至需要自己的应用界面。NotifyIcon提供了程序在任务栏显示功能 程序下载链接如下: ...1.创建一个项目,向窗体...
  • 除了任务栏有些图标是透明的,作者发现文件夹里的.exe文件等等也都是显示不出来,不仅重新添加没有效果,重启电脑也不行。那这边作者是给出一个解决办法:重新启动我们的explorer.exe,也就是我们俗称的:Windows...
  • 如何在wince的任务栏显示窗口图标

    千次阅读 2005-02-05 10:10:00
     这天,发现自己写的wince程序,无论在任务栏,还是在任务切换列表中,都只显示标题而不显示标题左边的那个应用程序定义的小图标,而微软自己写的程序,还有一些厂商写的程序,运行的时候,在任务栏上是同时显示...
  • 任务栏通知区,即windows右下脚显示应用程序图标和系统时间 的区域,有时候我们会发现,某些应用程序的图标无法显示了,解决方法如下:方法一:开机运行systray.exe,但这能彻底解决,也一定能使消失的图标恢复...
  • 修改 Windows 10 UWP 应用任务栏图标

    千次阅读 2017-07-23 10:07:00
    修改 Windows 10 UWP 应用任务栏图标  Windows 7 时代,修改任务栏图标很简单...但是,万变离其宗,只要能显示图标,必然存在图标文件,也就是说,我们还是可以通过手动替换图标文件的方法达到修改任务栏图标的...
  • 1、任务栏变透明方法在微软应用商店搜索“TranslucentTB”,直接下载安装这个软件几乎占任何内存,不用担心会造成系统卡顿。安装完成之后,任务栏就会自动变透明,右击任务栏“B”形图标,可以对透明进行设置。2、...
  • WIN7系统的任务栏应用小图标中多了一个小三角形,电脑运行的软件会在右下角任务栏显示,那我们想要把运行的软件隐藏起来,让别人看到,今天的教程就是分享如何隐藏任务栏应用图标的方法。下面我就以图文形式展示...
  • 前几天碰到这个问题,Microsoft Edge和Stiky Notes无法从任务栏取消固定了,而且显示任务栏上的只有一个透明的框框,鼠标光标放到上面时可以看到,当时是直接把这两个移到任务栏的最后,这样就看上去没有什么问题...
  • 在解决该问题的过程中,发现打开InteliJ idea的时候,只有任务栏的小图标,并没有图形化界面 背景是之前曾经在两个显示器上显示过,导致拖拽到其他显示器上,现在单个显示器显示 解决方式: win+D两次即可...
  • 有时候有特殊需求,希望在任务栏上出现应用程序的图标。该怎么办呢?其实可以通过设置窗口标志来实现。调用QWidget的setWindowFlags()函数。 设置为Qt::Tool、Qt::SubWindow、Qt::Popup可以达到目的。但是这样做会...
  • Qt设置任务栏图标

    千次阅读 2017-10-13 14:35:25
    在做qt界面的时候发现。...这样的话,一个应用程序在任务栏显示多个图标,很美观。如果只想在任务栏显示一个图标,可以设置其他的窗口,继承于第一个窗口。 或者设置窗口的属性,setWindowFlags(Qt:
  • 随着电脑性能以及应用软件越累越丰富,很多朋友电脑...或者是工作的时候我们挂回QQ或者游戏什么的,却想让他在任务栏显示,想让们隐藏起来,那我们该怎么做呢?下面百事网小编格子告诉你。三种隐藏任务栏图标方法...
  • 让程序运行时任务栏显示图标

    千次阅读 2012-08-22 17:41:27
    =========================================== ...以SDI和MDI应用为例,你可以在CMainFrame中重载PreCreateWindow(),在其中加一句: cs.dwExStyle |= WS_EX_TOOLWINDOW;   对基于对话框
  • 获取 window任务栏已经打开...如下:(要获取到QQ,浏览器,文件夹的图标,但是任务栏中隐藏的图标不显示) 2.使用技术及工具 JAVA,JNA,eclipse。 需要去下载JNA的包(一个是jna.jar,一个时jna-platform...
  • IT之家1月10日消息 外媒 Windows Latest 报道,微软对 Windows 10X 的计划透露地并多,该系统早在 2019 年 10 月就针对 Surface Neo 旗舰双屏设备亮相。2020 年 5 月,微软表示将首先把 Windows 10X 带到单屏设备...
  • 如何隐藏任务栏图标

    2019-09-21 17:07:39
    随着电脑性能以及应用软件越累越丰富,很多朋友电脑上一起运行许许多...或者是工作的时候我们挂回QQ或者游戏什么的,却想让他在任务栏显示,想让们隐藏起来,那我们该怎么做呢?下面就让我来告诉你吧。 三种隐...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 543
精华内容 217
热门标签
关键字:

任务栏不显示应用图标