C#获取Windows快速启动项目(Windows XP)
本文关键字:Windows XP 项目 获取 启动 | 更新日期: 2023-09-27 18:27:42
我在Windows XP上,想用C#阅读所有快速启动项目(在窗口按钮旁边的任务栏中)。
我找到了从中读取所有文件的"解决方案"C:''Documents and Settings''USER''Application Data''Microsoft''Internet Explorer''Quick Launch"
但我想要和快速启动栏里一样的订单。
有人能帮我吗?
欢呼
快速启动排序顺序存储为二进制值TaskbarWinXP此处:
HKEY_CURRENT_USER''Software''Microsoft''Windows''CurrentVersion''Explorer''Streams''DDesktop
您需要对二进制文件进行反向工程以获得排序顺序。
快速启动文件夹的位置
如果用户选择添加"快速启动"快捷方式,我们需要确定创建快捷方式的文件夹的位置。快速启动栏的功能是Internet Explorer的一部分,快速启动快捷方式的文件夹位置是Internet Explorer应用程序数据的一部分。没有"所有用户"快速启动文件夹,因此快速启动快捷方式始终添加到当前用户的快速启动文件夹中,即使用户选择为"所有人"安装也是如此。
我们用来查找当前用户桌面的System.Environment.GetFolderPath方法也可以为我们提供当前用户"应用程序数据"文件夹的位置。我们需要对"快速启动"文件夹的"应用程序数据"文件夹中的位置进行硬编码。在演示项目中,我已经将快速启动文件夹的位置作为ShortcutsInstaller类的属性,这样我就不需要在多个地方重复位置代码。快速启动文件夹的位置代码为:
private string QuickLaunchFolder
{
get
{
return
Environment.GetFolderPath(
Environment.SpecialFolder.ApplicationData)
+ "''Microsoft''Internet Explorer''Quick Launch";
}
}
你可以转到这个链接,它会引导你离开链接
另一种方法是简单而稳定。
string apploc = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
string []files =Directory.GetFiles(@apploc+@"'Microsoft'Internet Explorer'Quick Launch");
//Loop the string "files" in which every way you want.
for(int i=0 ; i<files.Length; i++)
{ MessageBox.Show(files[i]); }
我希望这正是你所需要的。