本文受众:像我一样的编程菜鸟
如何打包一个C#的方法网上有很多,不再赘述,看本文之前请确保知道怎么使用set up project插件,不懂得看这里。

废话:编程的快感来自于很多方面,对于像我一样的菜鸟来说,跑通程序,并且能实现功能的时候是很爽的。这时候我们就希望把程序打包出来给其他人安装让他们一起爽,但是这个过程往往并不顺利。简单程序打包成安装包会十分顺利,但是程序一复杂问题就来了。本文旨在介绍我打包程序中遇到的典型问题以及我的解决方法。延续大家的快感

我遇到的问题:debug模式下程序没问题,但是打包成安装包安装之后,双击exe程序闪退,一脸懵逼也不知道问题出在哪里

结论写在前面,初学者容易出现的问题有:

  1. 未添加调用的文件,或者路径错误(解决方法,在Set up project下的文件系统里面手动添加文件夹和文件,并相应地调整你的路径确保能调用到)
  2. 如果程序还是因为找不到文件崩溃,多半是因为你安装包生成的exe双击打开运行时权限不够(解决方法:右键管理员运行,或者你不要安装在C盘,安装到其他权限放松一些的磁盘)

以下是我如何定位问题所在,以及具体解绝办法

如何快速定位你的问题出在哪一行代码,以及是什么问题
粗略的估计一下程序执行到哪里崩溃,然后在每一行代码前加个

MessageBox.Show("something goes wrong here?");

确保你的程序不会直接崩溃退出进程,然后打开任务管理器,确保你能找到你的程序的进程,然后在visual studio里面点击Debug-attach to process

在弹出的窗口下选择你的进程,点击attach

这下你的编译器会跟着你的exe进程进行debug,就像你直接在debug模式下出错vs会报错给你一样,
你的VS会提醒你程序在哪里出了问题。(完)

打包C#软件两种典型出错的解决方法,以及如何快速定位你的问题出在哪里相关推荐

  1. jquery、javascript实现(get、post两种方式)跨域解决方法

     jquery.javascript实现(get.post两种方式)跨域解决方法 一.实现get方式跨域请求数据 浏览器端 <script> $(document).ready(fun ...

  2. sap 标准委外和工序委外_委外加工-SAP的两种典型委外处理--方法.doc

    两种典型委外处理 外包业务是一个普通的业务, 通常发生在1. 企业短期内订单过多暂时产能不足,为了如期交货需要外援2. 产品的某道关键工序企业自有生产工艺满足不了需求3.随着产品生命周期不断缩短,为了 ...

  3. sap 标准委外和工序委外_委外加工SAP的两种典型委外处理方法

    通常提供两种基本处理方式 : 外包采购 和 工序外包 . 生产外包经营方式简介 生产外包作为一种全新的生产经营方式,改善了传统方式的不足,主要类型有: 一 .OEM : (Orignal Equipm ...

  4. idea 使用 Docker 打包镜像的两种方式_07

    idea 使用 Docker 打包镜像的两种方式_07 一.方式: 一.idea 的docker 插件 和Dockerfile: 二.pom和Dockerfile结合. 二.详解 第一种: 1.第一步 ...

  5. android内存池,两种常见的内存管理方法:堆和内存池

    描述 本文导读 在程序运行过程中,可能产生一些数据,例如,串口接收的数据,ADC采集的数据.若需将数据存储在内存中,以便进一步运算.处理,则应为其分配合适的内存空间,数据处理完毕后,再释放相应的内存空 ...

  6. 两种常见的内存管理方法:堆和内存池

    在程序运行过程中,可能产生一些数据,例如,串口接收的数据,ADC采集的数据.若需将数据存储在内存中,以便进一步运算.处理,则应为其分配合适的内存空间,数据处理完毕后,再释放相应的内存空间.为了便于内存 ...

  7. 两种 js下载文件的方法(转)

    2019独角兽企业重金招聘Python工程师标准>>> 两种 js下载文件的方法(转) functionDownURL(strRemoteURL, strLocalURL){try{ ...

  8. 电脑录屏工具_一分钟教你学会两种电脑录屏的方法,以后别再说不知道了

    相信大家用电脑都会截图,但有时候需要用到录屏,这就难倒了很多人.那么如何在电脑是录屏呢?下面就来教你学会两种电脑录屏的方法,以后别再说不知道了. 阅读引导: •阅读完本文预计需要2分钟时间. •本文是 ...

  9. 如何去除视频水印?分享两种去除视频水印的方法

    怎么去除掉视频的水印呢?视频水印可能会导致视觉上的干扰,尤其是当水印被放置在视频的重要区域时,例如在视频的中心或底部.此外,在视频制作过程中使用有水印的素材也可能会影响最终的视频质量,因为水印可能会干 ...

最新文章

  1. CGI模式,模块模式与CLI模式运行PHP的区别
  2. 寻路基本工具类定义 AIDefine.cpp
  3. 两个数组的交集 II---简单
  4. 基于JAVA+SpringMVC+MYSQL的网上选课系统
  5. (c语言)输出1到100之间的所有素数
  6. Java检查字符串是否包含中文字符
  7. 50.Linux/Unix 系统编程手册(下) -- 虚拟内存操作
  8. 19.TCP/IP 详解卷1 --- TCP 的交互数据流
  9. Hadoop学习路径
  10. 怎么查看电脑IP地址?
  11. 电脑开启麦克风有回音,录音声音太小怎么办?
  12. K8s 开先河、技能全栈、业务“无感”,深度解读云原生的这一年
  13. monkey命令——压力测试——个人总结
  14. Imagination利用精简操作集计算(ROSC)技术实现灵活、高性能的神经网络推理
  15. spring-boot-starter-quartz 添加定时任务立即执行一次的问题解决
  16. Java之List系列--ArrayList保证线程安全的方法
  17. 阿里M8级大神整理出SQL手册:收获不止SQL优化,抓住SQL的本质
  18. 西瓜书(周志华)课后习题答案
  19. AI+智能服务机器人应用基础【学习报告】
  20. 吐槽下Arcgis的二次开发

热门文章

  1. adb命令设置输入法
  2. canvas 添加文字水印、图片水印并实现图片水印透明
  3. c语言运行不显示图片,为何加载烟花就换了一句,将图片加载进资源,结果运行中烟花不显示...
  4. Ubuntu To Go,打造随身linux系统(支持uefi启动)。同样支持WinToGo或其他可通过镜像安装的系统
  5. 还不知道如何写文章上热榜吗?听1_bit大佬给你讲讲
  6. 登榜丨酷雷曼获“科技型中小企业”国家级认定
  7. 一群小青蛙呱蹦呱蹦呱
  8. 批处理bat提示 文件名、目录名或卷标语法不正确
  9. LigoWave品牌的产品分类及项目选型
  10. Ubuntu16.04LTS部署CEPH文件存储集群