You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用C#实现自动下载最新Google Chrome MSI安装包(无需打开浏览器)

实现C#自动下载最新版Google Chrome MSI安装包

核心思路

你提供的跳转链接会通过302重定向指向实际的MSI安装包地址,无需手动找固定链接,通过HTTP请求跟踪重定向即可获取真实下载地址,或直接让HttpClient自动处理重定向完成下载。

C#代码实现

方法1:先获取真实下载URL再下载

适合需要单独拿到下载链接的场景:

using System;
using System.Net.Http;
using System.Threading.Tasks;

class ChromeDownloader
{
    static async Task Main(string[] args)
    {
        string redirectUrl = "https://chromeenterprise.google/browser/download/thank-you/?platform=WIN64_MSI&channel=stable&usagestats=0";
        
        using (HttpClient client = new HttpClient(new HttpClientHandler { AllowAutoRedirect = false }))
        {
            var headResponse = await client.SendAsync(new HttpRequestMessage(HttpMethod.Head, redirectUrl));
            if (headResponse.StatusCode == System.Net.HttpStatusCode.Redirect || 
                headResponse.StatusCode == System.Net.HttpStatusCode.TemporaryRedirect)
            {
                string realDownloadUrl = headResponse.Headers.Location.ToString();
                Console.WriteLine($"真实下载链接:{realDownloadUrl}");
                
                // 开始下载文件
                var downloadResponse = await client.GetAsync(realDownloadUrl);
                downloadResponse.EnsureSuccessStatusCode();
                await downloadResponse.Content.SaveToFileAsync("ChromeStable_x64.msi");
                Console.WriteLine("下载完成");
            }
        }
    }
}

// 扩展方法:将HttpContent保存到本地文件
public static class HttpContentHelpers
{
    public static async Task SaveToFileAsync(this HttpContent content, string filePath)
    {
        using (var stream = await content.ReadAsStreamAsync())
        using (var fileStream = new System.IO.FileStream(filePath, System.IO.FileMode.Create, System.IO.FileAccess.Write))
        {
            await stream.CopyToAsync(fileStream);
        }
    }
}

方法2:自动重定向直接下载

无需单独提取URL,简化代码直接完成下载:

using System;
using System.Net.Http;
using System.Threading.Tasks;

class ChromeDownloader
{
    static async Task Main(string[] args)
    {
        string redirectUrl = "https://chromeenterprise.google/browser/download/thank-you/?platform=WIN64_MSI&channel=stable&usagestats=0";
        
        using (HttpClient client = new HttpClient())
        {
            var response = await client.GetAsync(redirectUrl);
            response.EnsureSuccessStatusCode();
            await response.Content.SaveToFileAsync("ChromeStable_x64.msi");
            Console.WriteLine("Chrome MSI安装包下载完成");
        }
    }
}

public static class HttpContentHelpers
{
    public static async Task SaveToFileAsync(this HttpContent content, string filePath)
    {
        using (var stream = await content.ReadAsStreamAsync())
        using (var fileStream = new System.IO.FileStream(filePath, System.IO.FileMode.Create, System.IO.FileAccess.Write))
        {
            await stream.CopyToAsync(fileStream);
        }
    }
}

注意事项

  • 确保程序具备网络访问权限,目标地址未被防火墙或代理拦截
  • 该方式会自动获取最新稳定版的下载链接,无需手动更新地址
  • 可根据需求修改保存的文件名和路径

内容的提问来源于stack exchange,提问作者carlplusplus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 11:18:13