【问题标题】:C# Getting the Windows Quick Launch Items (Windows XP)C# 获取 Windows 快速启动项 (Windows XP)
【发布时间】:2012-03-29 19:28:50
【问题描述】:

我在 Windows XP 上,想用 C# 阅读所有快速启动项(在窗口按钮旁边的任务栏中)。

我找到了读取所有文件的“解决方案” "C:\Documents and Settings\USER\Application Data\Microsoft\Internet Explorer\Quick Launch"

但我想要与快速启动栏中相同的顺序。

有人可以帮助我吗?

干杯

【问题讨论】:

    标签: c# windows-xp items quicklaunch


    【解决方案1】:

    快速启动排序顺序在这里存储为二进制值TaskbarWinXP:

    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Streams\Desktop

    您需要对二进制文件进行逆向工程以获得排序顺序。

    【讨论】:

    • 您可以尝试保存该值,然后重新排序快速启动项。通过比较新的值,您也许可以弄清楚,但这并不容易。
    • 你的权利,我也这么认为。我稍后会试试这个。稍微看了一下内容后,我发现我可以从中读取文件名和一些路径。也许读这个位置不会很困难。如果我成功了,我会发布。
    【解决方案2】:

    快速启动文件夹的位置

    如果用户选择添加快速启动快捷方式,我们需要确定我们将创建快捷方式的文件夹的位置。快速启动栏的功能是 Internet Explorer 的一部分,快速启动快捷方式的文件夹位置是 Internet Explorer 应用程序数据的一部分。没有“所有用户”快速启动文件夹,因此快速启动快捷方式始终添加到当前用户的快速启动文件夹中,即使用户选择为“所有人”安装也是如此。

    我们用来查找当前用户桌面的System.Environment.GetFolderPath方法也可以给我们当前用户“Application Data”文件夹的位置。我们需要对 Quick Launch 文件夹的 Application Data 文件夹中的位置进行硬编码。在演示项目中,我将 Quick Launch 文件夹的位置设置为 ShortcutsInstaller 类的属性,这样我就不需要在多个位置重复位置代码。 Quick Launch 文件夹位置的代码为:

    private string QuickLaunchFolder
    {
      get
      {
        return
          Environment.GetFolderPath(
             Environment.SpecialFolder.ApplicationData)
             + "\\Microsoft\\Internet Explorer\\Quick Launch";
      }
    }
    

    你可以去这个链接,它会引导你出去Link


    另一种方法是简单而稳定的。

    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]);       }
    

    我希望这是你需要的。

    【讨论】:

    • 不错——但我不想创建快捷方式。我想以正确的顺序读取所有现有的快捷方式(不是文件资源管理器中的顺序,我想要它在任务栏中的顺序。)
    • 试试下面的那个。我猜你想要什么。
    • 您好,感谢您的回答。不,那不是我需要的。那正是我在第一篇文章中写的。我知道我可以在那里找到应用程序,但我希望它以正确的顺序!如果我从目录中读取文件,我的任务栏中的图标从左到右的顺序不同..
    猜你喜欢
    • 2011-04-06
    • 1970-01-01
    • 2012-10-10
    • 1970-01-01
    • 1970-01-01
    • 2010-11-19
    • 2011-11-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多