使用GtkSharp下载zip包过慢问题解决方案

本文讲述了开发者在使用C#通过GtkSharp进行跨平台窗体应用开发时遇到的下载依赖包问题,作者提供了解决方案,即通过本地文件服务器和IIS配置,以及修改VisualStudio2022的项目设置来确保在运行时从服务器下载依赖包。
摘要由CSDN通过智能技术生成

背景

安装GtkSharp这个包准备使用C#进行跨平台窗体应用程序开发,运行时发现其需要从github上下载【https://github.com/GtkSharp/Dependencies/raw/master/gtk-3.24.24.zip】这个依赖包,不知道是被墙了还是咋的,下载超时导致运行失败。

解决

链接: https://pan.baidu.com/s/1QngEAd5l1b6XJk7Onm2iOg?pwd=i9t2 提取码: i9t2 复制这段内容后打开百度网盘手机App,操作更方便哦

下载到本地后【不必解压】,将其放置一个http文件服务器中,我是开启并使用windows自带的IIS来实现,具体步骤如下:

1.我的文件路径是C:/迅雷下载

2.打开IIS【具体IIS开启方式这里不进行赘述,百度一下,非常简单】配置一个网站,路径就是这个 C:/迅雷下载

3.在visual studio 2022中修改 GtkSharp.targets文件为如下,使得程序运行时,vs2022从我们的文件服务器下载这个依赖包

4.大功告成【附Program.cs源代码】,稍加熟悉此包,就可以使用C#进行跨平台窗体程序开发了

using Gtk;

namespace LinuxForm
{
    internal class Program
    {
        static void Main(string[] args)
        {
            Application.Init();
            Window window = new Window("Linux Form");
            window.DefaultSize = new Gdk.Size(200, 200);
            window.WindowPosition = WindowPosition.Center;
            window.DeleteEvent += Window_DeleteEvent;

            Button button = new Button();
            button.Label = "Click Me";
            button.Clicked += Button_Clicked;

            window.Add(button);

            window.ShowAll();
            Application.Run();
        }

        private static void Button_Clicked(object? sender, EventArgs e)
        {
            Dialog dialog = new Dialog();
            dialog.Show();
        }

        private static void Window_DeleteEvent(object o, DeleteEventArgs args)
        {
            Application.Quit();
        }
    }
}

  • 10
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值