Delphi:如何创建像Skype这样的Windows自动启动应用程序呢?

时间:2010-07-02 09:45:37

标签: delphi skype autostart

我想在我的应用程序中添加一个选项,类似于Skype的选项“在我的计算机启动时运行Skype”。

Skype没有进入开始菜单文件夹的“自动启动应用程序”,我希望具有相同的效果。

注意,this question的一个答案是在这里添加密钥:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

但是我在我的机器上checekd并且Skype不存在,所以使用另一种方式。

4 个答案:

答案 0 :(得分:11)

Skype通过注册表项安装,但它位于HKEY_CURRENT_USER,而不是HKEY_LOCAL_MACHINE

这允许基于每个用户安装或不安装Skype。使用HKLM将自动启动所有用户。

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run

答案 1 :(得分:3)

如果在运行窗口中键入“msconfig”并查看启动选项卡,则可以在“位置”列中查看“everthing”的起始位置。 我不使用Skype,但我猜它会在注册表中

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run

您只需在其中为您的应用添加注册表项(如果用户取消选中框,则将其删除)

您可以使用TRegistry类来帮助您阅读和写入注册表。

答案 2 :(得分:1)

question。问题是关于C#,但它只涉及编写注册表值。将它转换为Delphi很容易。

答案 3 :(得分:0)

只需运行msconfig并选择启动标签。您将看到使用的注册表项旁边的应用程序。

奇怪的是,当我在没有提升的情况下运行regedit时,也看不到值 HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Run \ Skype 。但是,如果我将其运行升级,那么值就在那里(我猜Windows正在播放注册表重定向)。

最佳