“C#如何获取快捷方式指向的目标文件”,这个问题在百度上搜索的大多数结果是打开快捷方式文件,把快捷方式文件按字节读入指数组中,然后自己编写代码逐字节读出目标文件路径,这种方法初学者就有点搞不清楚,特别是不了解捷方式文件组织方式的,用这个方法很费劲。
其实C#解决起来很简单,原理就是利用IWshRuntimeLibrary中的IWshShortcut类,就可以获取快捷方式指向的目标文件了。
以下是具体步骤:
一、在项目中添加“Windows Script Host Object Model”的引用
在项目上单击右键,选择“添加引用”,在“添加引用”对话框中选择“COM”组件选项卡,然后单击选择“Windows Script Host Object Model”,最后确定。在项目中就会出现“IWshRuntimeLibrary”,下面就可以编写代码了。
二、代码
用以下代码可以实现了。
1、首先引用这些:
using System.IO;
using IWshRuntimeLibrary;
2、编写函数:
private string 获取快捷方式文件指向的路径(string 快捷方式文件的路径)
{
//快捷方式文件的路径 = @"d:\Test.lnk";
if (System.IO.File.Exists(快捷方式文件的路径))
{
WshShell shell = new WshShell();
IWshShortcut 当前快捷方式文件IWshShortcut类 = (IWshShortcut)shell.CreateShortcut(快捷方式文件的路径);
//快捷方式文件指向的路径.Text = 当前快捷方式文件IWshShortcut类.TargetPath;
//快捷方式文件指向的目标目录.Text = 当前快捷方式文件IWshShortcut类.WorkingDirectory;
return 当前快捷方式文件IWshShortcut类.TargetPath;
}
else
{
return "";
}
}
相关推荐
刚刚开发完成的一个Winform项目,使用VS2008自带的打包工具对它进行打包(设置开始菜单的快捷方式),安装后,发现快捷方式的目标指向有问题。(winform程序的打包过程参见网络上的相关资源),这里我主要想说明打包后...
在Windows操作系统中,快捷方式是一种方便用户快速访问目标文件或程序的方法。在编程领域,特别是在C#编程中,处理快捷方式是常见的需求。本篇将详细介绍如何在C#中创建快捷方式,以及如何获取和解析快捷方式的参数...
在这个例子中,`shortcutPath`是快捷方式的保存位置,`targetPath`是快捷方式指向的目标文件路径,`description`是快捷方式的描述。通过`Save`方法,我们可以将快捷方式保存到指定的位置。 接下来,我们可能需要...
在C#中,可以通过简单的文件操作来完成这一过程。 ### 2.1 创建`.url`文件的过程 1. **选择存储路径**:首先确定要将快捷方式存放在哪个位置,例如桌面、收藏夹或启动菜单等。 2. **创建文件**:在选定的位置创建...
1. “查找目标”:这是快捷方式的属性之一,显示了快捷方式指向的原始文件位置。在安装过程中,我们通常会设定这个属性为程序的实际安装路径。用户通过右键点击快捷方式并选择"属性"可以查看和编辑这个信息。 2. ...
总结来说,"c# 生成桌面快捷方式 无需调用DLL"这一主题是关于如何在C#中利用.NET Framework的内建功能,不依赖额外的DLL文件,来创建指向应用程序或文件的桌面快捷方式。通过学习和应用这些知识点,开发者可以增强...
在C#中,我们通常会使用`System.IO.Directory`和`System.IO.File`类来处理文件和目录操作,但创建快捷方式则需要用到`System.Windows.Forms.Shell32`命名空间中的`ShellLinkObject`类。这个类提供了创建、修改和删除...
在Windows系统中,快捷方式实际上是一种指向实际可执行文件的特殊链接,包含了目标文件的位置信息。我们可以通过解析快捷方式文件来获取到.exe的完整路径。 在C#中,我们可以使用`System.IO`命名空间中的`FileInfo`...
快捷方式图标通常带有小箭头标识,它并不直接包含目标文件的内容,而是存储了指向目标文件的位置信息。本篇文章将深入探讨如何通过编程接口获取快捷方式所指向的目标文件名,以"rhi.rar_RHI_获取快捷方式"为主题,...
3. **快捷方式**:在Windows操作系统中,快捷方式是一种指向其他文件或程序的指针,通过快捷方式,用户可以快速访问常用的应用或文档,无需每次都从开始菜单或文件夹中寻找。 4. **窗体**:在C#中,窗体(Form)是...
创建快捷方式在C#中可以通过.NET Framework提供的外壳接口(Shell32库)来实现。以下是一些关键知识点: 1. **Shell32库**:这是Windows API的一部分,提供了对操作系统外壳功能的访问,如文件管理、桌面图标等。在...
然而,随着时间的推移,系统中可能会出现一些无效的快捷方式,这些快捷方式指向的原始文件可能已被移动、重命名或删除。这不仅可能导致用户在尝试通过这些快捷方式访问文件时遇到问题,还可能占用不必要的资源。因此...
4. **图标集成**:为了在快捷方式上显示实际的文件图标,你需要获取该快捷方式的目标文件的图标。这可以通过`System.Drawing.Icon.ExtractAssociatedIcon`方法完成。然后,使用`DrawIcon`或`DrawImage`方法将图标...
在C#中,我们可以利用`System.IO.File`和`System.IO.Path`类以及`Microsoft.Win32.Shell`命名空间下的`Shell32`类来实现这一目标。首先,确保引入`using Microsoft.Win32;`,然后创建一个`ShellLinkObject`实例,并...
在编程环境中,特别是在C#开发中,有时我们需要获取这些快捷方式的路径信息以便进行更高级的操作,比如执行快捷方式指向的程序或者修改快捷方式的目标。本篇将深入探讨如何使用C#语言来实现Windows快捷方式路径的...
该资源中的DEMO(演示)部分,可能是用一种编程语言(如C#、Java或Python)编写的一个实例应用,展示了如何使用这些控件进行快捷方式的增删改查。通过DEMO,开发者可以学习到以下关键知识点: 1. **快捷方式的创建*...
在Windows操作系统中,快捷方式实际上是一个指向目标程序或文件的特殊类型的文件,其扩展名为.lnk。这种文件包含了指向实际程序或文件的路径信息,当用户点击快捷方式时,系统会根据这些信息启动目标程序。 要实现...
通过编程方式获取快捷方式的所有信息,我们可以获取到以下几个关键点: 1. **目标路径**:这是快捷方式所指向的实际文件或程序的完整路径。这对于了解快捷方式所关联的资源至关重要。 2. **工作路径**:某些快捷...
快捷方式包含了指向目标文件的路径,以及可能的命令行参数、工作目录等信息。 在C#中,我们可以使用`System.IO`命名空间下的`Shortcut`类(来自`Microsoft.Win32`)来创建和操作快捷方式。以下是创建快捷方式的基本...