我想用PowerShell为这个可执行文件创建一个快捷方式:
C:\Program Files (x86)\ColorPix\ColorPix.exe
Run Code Online (Sandbox Code Playgroud)
如何才能做到这一点?
是否可以创建一个将重新启动Windows服务的Windows桌面快捷方式?
在对配置文件进行更改后,我想要一个按钮来重启我的apache服务.
我有一个正在安装WiX 3的应用程序 - 大部分安装现在工作正常,但试图让桌面快捷方式工作似乎让我失去了理智......
我安装了我的应用程序,并且我已经在"开始"菜单文件夹上有一个快捷方式 - 工作得很好.但是如何启动并运行桌面快捷方式?
<Product Id="*" Name="....." UpgradeCode="MY-GUID">
<Package Id="*" InstallerVersion="200" Compressed="yes" />
<Media Id="1" Cabinet="foobar.cab" EmbedCab="yes" />
<Property Id="ALLUSERS">1</Property>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramMenuFolder">
<Directory Id="ApplicationProgramsFolder" Name="FooBar"/>
</Directory>
<Directory Id="DesktopFolder" SourceName="Desktop"/>
<Directory Id="ProgramFilesFolder">
<Directory Id="FoobarDir" Name="FOOBAR">
<Directory Id="INSTALLLOCATION" Name="FooApp">
<Component Id="MainFiles" Guid=".....">
<File Id="FooMainApp" Source="FooMainApp.exe" />
</Component>
</Directory>
</Directory>
</Directory>
</Directory>
....
<!-- this shortcut here works just fine ... -->
<DirectoryRef Id="ApplicationProgramsFolder">
<Component Id="AppShortcut" Guid="...">
<Shortcut Id="ApplicationStartMenuShortcut"
Name="FooBarApp" Description="..."
Target="[INSTALLLOCATION]FooMainApp.exe"
WorkingDirectory="INSTALLLOCATION"/>
</Component>
</DirectoryRef>
<!-- but …Run Code Online (Sandbox Code Playgroud) 如何通过Innosetup删除桌面快捷方式?它是由以前的版本创建的,不再需要了.我尝试在[InstallDelete]中删除它
[InstallDelete]
Type: files; Name: {userdesktop}\Shortcut Name
Run Code Online (Sandbox Code Playgroud)
并删除CurStepChanged事件处理程序的"ssInstall"中的文件
DeleteFile(ExpandConstant('{userdesktop}\Shortcut Name'));
Run Code Online (Sandbox Code Playgroud)
但它们不起作用.任何建议表示赞赏!
我用Inno Setup创建了一个安装程序.用于桌面快捷方式和开始菜单的图标嵌入在应用程序可执行文件中.
最初创建安装程序时,我没有设计团队的最终产品图标.当我完成安装程序时,我使用了临时图标.
一切都按原样运作,直到我更改了最后一个图标.现在桌面快捷方式和开始菜单图标始终显示旧图标,即使图标正确无处不在.
这是脚本的Icon声明部分.
[Icons]
Name: {group}\{#MyAppName}; Filename: {app}\{#MyAppExeName}; WorkingDir: {app}
Name: {group}\{cm:UninstallProgram,{#MyAppName}}; Filename: {uninstallexe}; IconFilename: {app}\Icons\stop.ico
Name: {commondesktop}\{#MyAppVersionName}; Filename: {app}\{#MyAppExeName}; Tasks: desktopicon; WorkingDir: {app}
Run Code Online (Sandbox Code Playgroud)
这是我尝试过的:(这是一个Windows 7系统)
如果我查看快捷方式属性,并选择"更改图标",我会看到正确的图标.重新选择它没有任何效果.我也尝试过选择一个不相关的图标然后重新选择正确的...仍然显示旧图标.
我遵循建议删除IconCache.db并重新启动机器,但这也没有效果.
世界上哪里有旧图标?安装程序中没有任何地方.
想法有人吗?
我有一个设置项目的小应用程序.如果我创建了一个主输出的快捷方式,那么这将获得一个标准的Win7图标,而不是我的exe的应用程序图标中指定的图标?
什么是最好的方法来确保我的桌面快捷方式图标与我的exe相同的图标?例如,如果我更改了exe的图标,那么我也希望设置图标也能改变.
我找不到如何让Android使用自定义图标(例如iOS使用的favicon或app-touch图像)作为网站快捷方式.
你能给我一个提示吗?
在我的PowerShell脚本中,我创建了一个.exe的快捷方式(使用与此问题的答案类似的东西):
$WshShell = New-Object -comObject WScript.Shell
$Shortcut = $WshShell.CreateShortcut("$Home\Desktop\ColorPix.lnk")
$Shortcut.TargetPath = "C:\Program Files (x86)\ColorPix\ColorPix.exe"
$Shortcut.Save()
Run Code Online (Sandbox Code Playgroud)
现在,当我创建快捷方式时,如何添加到脚本以使其默认以管理员身份运行?
windows powershell command-line administrator desktop-shortcut
使用WiX创建桌面快捷方式有两个答案
这两个答案都没有真正解释发生了什么.这两种创建快捷方式的方法有什么区别?第一种方法符合WiX - 创建快捷方式文档.
第二种方法有一个MergeRedirectFolder我似乎无法找到任何文档,我不明白为什么第二个例子不需要注册表设置,因为根据WiX文档,一个注册表设置:
是必需的,因为在为当前用户安装未公布的快捷方式时,快捷方式不能作为组件的KeyPath.
这是否意味着第二种方法是广告的快捷方式?或者它是一个假设用户每台机器安装的答案?还是我迷失了酱汁?(很可能 - 第二天尝试使用WiX,因为微软强迫我走这条道路.)
第一个:
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="DesktopFolder" Name="Desktop">
<Component Id="ApplicationShortcutDesktop" Guid="*">
<Shortcut Id="ApplicationDesktopShortcut"
Name="Text under your icon"
Description="Comment field in your shortcut"
Target="[MYAPPDIRPROPERTY]MyApp.exe"
WorkingDirectory="MYAPPDIRPROPERTY"/>
<RemoveFolder Id="DesktopFolder" On="uninstall"/>
<RegistryValue
Root="HKCU"
Key="Software/MyAppName"
Name="installed"
Type="integer"
Value="1"
KeyPath="yes"/>
</Component>
</Directory>
<Directory Id="ProgramFilesFolder" Name="PFiles">
<Directory Id="MyCompany" Name="MyCompany">
<Directory Id="MYAPPDIRPROPERTY" Name="MyAppName">
</Directory>
</Directory>
</Directory>
Run Code Online (Sandbox Code Playgroud)
第二个:
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="DesktopFolder" SourceName="Desktop" />
<Directory Id="MergeRedirectFolder">
<Component Id="MyExeComponent" Guid="*">
<File Id="MyExeFile" Source="$(var.ExeSourcePath)" KeyPath="yes">
<Shortcut
Id="DesktopShortcut" …Run Code Online (Sandbox Code Playgroud) 我已经考虑过使用Chrome和HTML5本地存储来创建一个有用的应用程序并将其出售.但是,我认为我会遇到的问题是在一台计算机上安装这个问题的传送机制.假设该应用程序是wikipedia.com(虽然它不是).手动可以使用Chrome进行操作,然后选择扳手图标,工具,创建应用程序快捷方式,并为应用程序创建桌面和应用程序菜单图标.
好的,很好,但有没有办法我可以编写一个网页链接或表单按钮,以便它为我这样做?换句话说,只需单击一个按钮或链接,它就会显示"创建应用程序快捷方式"表单.我希望Google Chrome上的这种鲜为人知的方式可以使用HTML或Javascript来触发显示该表单.
对于那些没有Chrome的用户,我可以检测到这一点,然后给他们点击一个按钮发送电子邮件给他们.在电子邮件中,它会向他们提供安装Chrome的说明,然后是其他链接,以便他们可以在Chrome中访问此页面,以获取显示"创建应用程序快捷方式"表单的按钮.
desktop-shortcut ×10
command-line ×2
icons ×2
inno-setup ×2
powershell ×2
windows ×2
wix ×2
android ×1
c# ×1
deployment ×1
html ×1
installer ×1
javascript ×1
shortcut ×1
windows-7 ×1
winforms ×1
wix3 ×1