如何在ClickOnce中重命名安装文件,从setup.exe重命名为myapp.exe?
答案 0 :(得分:3)
只需将setup.exe重命名为myAppSetup.exe并编辑publish.htm
文件即可将setup.exe中的href更改为myAppsetup.exe。用户可以通过右键单击安装按钮并选择Save As
来下载。我建议使用myAppSetup.exe,以免将其与可执行文件混淆。
哦,是的,自动执行此过程有点棘手,因为Visual Studio
只有一个post build事件选项来运行外部工具,而且没有post post。所以请记住每次发布新版本时都要重新编辑。
答案 1 :(得分:2)
我偶然发现了这篇文章,因为我想将两个应用程序部署到同一个位置,并且很惊讶我无法使用visual studio执行此操作。这就是我解决它的方法。
值得一提的是,我不依赖visual studio来部署我的应用程序,而是使用两个步骤:
\bin\release\app.publish
)pscp.exe -r -batch -C -q -pw <pass> * <user>@<host>:<path>
我的发布命令(步骤1)看起来像这样
msbuild /target:Rebuild;Publish MyApp.csproj
现在我在csproj
文件中添加了一个简单的目标
<Target Name="AfterPublish">
<Move SourceFiles="$(OutputPath)app.publish\setup.exe" DestinationFiles="$(OutputPath)app.publish\viewer.exe" />
</Target>
并将我的发布命令更改为
msbuild /target:Rebuild;Publish;AfterPublish MyApp.csproj
答案 2 :(得分:0)
您可以在创建文件后重命名该文件吗?
答案 3 :(得分:0)
我认为您无法从安装程序修改setup.exe文件名。
如果您必须手动分发安装文件,并且setup.exe太混乱,您可以创建一个安装项目,重命名.msi输出文件的名称,然后将其分发。
答案 4 :(得分:0)
原来在“发布”功能中找不到正确命名的.exe
。如果我去c:\path\to\my\app\bin\Release\MyApp.exe
,我会找到我要找的文件。对我来说这似乎很愚蠢,“发布”不能给我正在寻找的正确的exe,但这很有效。
答案 5 :(得分:0)
这不是应该的解决方案,但是如果您使用ftp部署,并且您具有对ftp的http访问权限,则可以通过php(或其他语言,由您的托管支持)实现内容处置下载:
<?php
$file = 'setup.exe';
if (file_exists($file)) {
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename=MySuperApp-setup.exe');// name it as you want
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
exit;
}
?>
答案 6 :(得分:0)
如果有人需要更改 XXX.application 文件名,则不确定setup.exe 但,说明如下
答案 7 :(得分:-1)
在解决方案资源管理器中双击我的项目。将出现一个DataEntryApplication表单。在应用程序选项卡下,在程序集名称字段中输入所需的应用程序名称。重新发布您的解决方案。
答案 8 :(得分:-1)
我试图为我的软件解决同样的问题。 我在“程序集名称”字段中已经有“xxxx”,但是当我发布它时会创建setup.exe。 我刚刚将setup.exe重命名为xxxx.exe并从exe安装。它运作良好。