首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Process/ProcessStartInfo图标

Process/ProcessStartInfo图标
EN

Stack Overflow用户
提问于 2016-10-04 14:07:52
回答 1查看 580关注 0票数 0

是否可以为进程定义图标?例如:

代码语言:javascript
复制
startInfo.Icon = 'C:\somepath\icon.ico';

图标应该显示在任务栏中。实现这一目标的唯一可能方法(据我所知)是链接,但我希望有一个其他选项,而不是动态创建一个链接并启动它。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-10-05 06:59:14

图标与该进程的可执行文件相关联,因此您不能更改它。作为唯一的解决办法,您可以创建可执行文件的快捷方式,并为快捷方式设置自定义图标。然后,您可以将快捷方式文件的路径传递给Process.Start (需要通过Project > add > COM >向添加COM引用):

代码语言:javascript
复制
using System;
using System.Diagnostics;
using IWshRuntimeLibrary;

class Program
{
    private static void Main(string[] args)
    {
        string shortcutAddress = Environment.GetFolderPath(
            Environment.SpecialFolder.Desktop) + @"\MyProcess.lnk";

        var shell = new WshShell();
        var shortcut = (IWshShortcut)shell.CreateShortcut(shortcutAddress);
        shortcut.Description = "New shortcut for a Notepad";
        shortcut.Hotkey = "Ctrl+Shift+N";
        shortcut.TargetPath = Environment.GetFolderPath(
            Environment.SpecialFolder.System) + @"\notepad.exe";
        shortcut.IconLocation = Environment.GetFolderPath(
            Environment.SpecialFolder.System) + @"\calc.exe";
        shortcut.Save();

        Process.Start(shortcutAddress);
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39854486

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档