是否可以在Github上提供ClickOnce安装程序?

Koe*_*oen 14 .net clickonce github

我想知道您是否可以为项目创建ClickOnce安装程序,然后在GitHub上托管安装文件夹(通过下载页面)?

我猜默认ClickOnce将安装文件发布到一个子文件夹,我认为Github下载页面不支持该子文件夹,但也许有另一种方式.

vil*_*ane 13

是的你可以.

实际上,我认为与FTP相比,这是一种更方便的方式.

  1. 确保您的Git设置为"按原样提交",以便您可以避免一些签名问题.
  2. 将您的ClickOnce应用程序发布到您的git存储库中的目录(您可能需要另一个分支),将Github上的raw url作为下载/更新URL.例如对于存储库"xxx",分支"master",用户"vilic"的目录"clickonce",网址应为"https://raw.github.com/vilic/xxx/master/clickonce/"
  3. 提交并推送您的应用程序.

顺便说一句,您将能够下载exe文件,并且应用程序可以直接使用raw.github.com检查和下载更新.但是,您可能无法从浏览器中打开xml文件,因为xml文件的MIME类型将是"text/plain".但我认为你可以尝试使用Github Pages来构建这个服务器,它应该使用正确的MIME类型进行响应.


小智 6

是的,绝对可以!您可以使用原始 GitHub 免费托管您的 .NET 应用程序。

请按照以下步骤操作:(
我还在此处创建了一个说明性视频: https: //youtu.be/iMEGtrjMXPU

  1. 如果您的项目不在 GitHub 上,请创建一个存储库并将代码推送到那里。它必须是公开的。
  2. 在您的计算机上,在存储库的根目录下创建一个名为“published”的文件夹。确保 .gitignore 中没有忽略该文件夹
  3. 在此 /published 文件夹中创建一个名为 .gitattributes 的文件。添加以下内容
*.manifest binary
*.application binary
*.deploy binary
*  -text
Run Code Online (Sandbox Code Playgroud)
  1. 现在提交并推送到 Github 存储库。单击 RAW 按钮导航到存储库中的此文件。复制 URL 地址直到“/publish/”。它会看起来像这样
    https://raw.githubusercontent.com/{your-account-name}/{your-repo-name}/{branch}/published/
  2. 在 ClickOnce 安装程序中输入以下路径
    1. 发布路径: {repo-path}/pubhished
    2. 安装路径: https://raw.githubusercontent.com/{your-account-name}/{your-repo-name}/{branch}/published/ 这是安装程序将从中安装应用程序的服务器地址。
    3. 更新路径: https://raw.githubusercontent.com/{your-account-name}/{your-repo-name}/{branch}/published/ 这是安装程序检查更新的服务器地址。
      注意:使用此链接浏览 clickonce 安装程序:
      https://learn.microsoft.com/en-us/visualstudio/deployment/quickstart-deploy-using-clickonce-folder ?view=vs-2022 。
      确保在发布之前选中“创建桌面快捷方式”选项。现在提交并推送您的代码。
  3. 现在,在 /published 文件夹中单击安装程序来安装应用程序。这将连接 GitHub 服务器以下载所需的文件并将其安装到您的计算机上的目录中C:\Users\vib28\AppData\Local\Apps\2.0
  4. 要发布应用程序的更新,请按照以下步骤操作
    1. 对您的 C# 应用程序进行更改。
    2. 再次发布应用程序(到同一文件夹 /published)。修订号应该增加,并且应该有一个新文件夹添加到该位置/published/Application Files
    3. 提交代码并将其推送到 GitHub。现在原始文件已更新。因此,每当客户端运行他的应用程序时,它都会自动提示下载更新。