visual如何将控制台程序打包成exe文件

Htojk 2018-02-09 06:24:59
本人操作如下:
1.写好程序后F5调试,无错误
2.生成解决方案
3.在解决方案处右击,在文件资源管理器中打开文件
4.依次点击bin--debug出现的是一个名为“netcoreapp”的文件夹
5.打开后出现一系列文件,但是并没有exe执行文件。

...全文
2374 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
八零末愤青 2018-02-24
  • 打赏
  • 举报
回复
  • 打赏
  • 举报
回复
4楼正解,大家可以散了。
  • 打赏
  • 举报
回复
core的运行方式是在对应dll目录下打开windows窗口,然后用dotnet xxx.dll来运行
  • 打赏
  • 举报
回复
你运行core项目不知道core项目的运行方式?
a2815965 2018-02-10
  • 打赏
  • 举报
回复
楼上的人没发现楼主是.net core项目吗 .net core是跨平台框架,编译成exe了如何在linux/MacOS下运行? 如果要编译成exe,请选择.net framework
threenewbee 2018-02-09
  • 打赏
  • 举报
回复
你确认你是控制台程序,不是类库么?重新新建项目试试看。
秋的红果实 2018-02-09
  • 打赏
  • 举报
回复
不要在vs里面打开这个,从我的电脑进入相应的目录,应该有这个exe的
易2017 2018-02-09
  • 打赏
  • 举报
回复
可能因为你输出的是DLL类型,右键程序集-属性-输出类型选windows应用程序试试
Visual Basic.NET精彩编程百例 李强 源代码 解压后31M 内容简介回到顶部↑    本书按照“实例一操作步骤一技术要点一归纳注释”的结构,介绍编写一个Visual Basic.NET程序的过程,以及编写课程中用到的知识。本书精选了100个VisulaBasic.NET程序实例,并全部编译通过。本书从Visual Basic.NET的各种不同应用方面来讲解如何使用Visual Basic.NET进行编程。最后,选择3个大的综合实例详细介绍程序的开发,从而较大程度地提高读者的编程能力。    本书以实例教程的方式编写,各部分之间独立性强,每一个实例可以作为一个单独的教程使用。本书不仅适合初学VisualBasic.NET的读者阅读,也可以使有VisualBasic开发经验的读者获益匪浅。由于对各方面的程序开发书中都有相应的实例,所以还可以作为一本不错的VisualBasic.NET编程开发书。 前言 第一篇 窗体设计及控件应用 实例1 你好程序 实例2 消息提示 实例3 输入对话框 实例4 选择按钮 实例5 时间日期 实例6 计时器控件 实例7 滚动条控件 实例8 颜色对话框 实例9 字体对话框 实例10 打开保存对话框 实例11 链接标签 实例12 编辑菜单 实例13 快捷菜单 实例14 动态菜单 实例15 进度条控件 实例16 列表框控件 实例17 图片框控件 实例18 状态栏控件 .实例19 立体文字 实例20 工具栏控件 实例21 组合框控件 实例22 系统栏图标控件 实例23 树视图控件 实例24 列表视图控件 实例25 选项卡控件 实例26 richtextbox控件 实例27 分割器控件 实例28 多窗体设计 实例29 多文档界面 实例30 日期控件 第二篇 数字及字符串处理 实例31 随机数 实例32 简单计算器 实例33 冒泡排序 实例34 进制转换 实例35 中文数字转换 实例36 求解方程 实例37 反转字符串 实例38 查找字符串 实例39 替换字符串 实例40 比较字符串 第三篇 文件操作 实例41 文字处理 实例42 创建删除文件夹 实例43 移动文件 实例44 判断文件存在与否 实例45 加密解密文件 第四篇 图形图像处理 实例46 使用画笔(1) 实例47 使用画笔(2) 实例48 使用画刷 实例49 绘制线图 实例50 绘制填充图形 实例51 直线图案 实例52 递归图案 实例53 绘制三维图形 实例54 模拟雪花 实例55 模拟绘图板 实例56 打开保存图像 实例57 剪切粘贴图像 实例58 浏览图片 实例59 变换图像 实例60 滤镜效果 实例61 统计表图形 实例62 百叶窗效果 实例63 动画效果 实例64 调节图像色彩 实例65 拾色器 第五篇 多媒体编程 实例66 mp3播放器 实例67 视频播放器 实例68 dvd播放器 实例69 flash播放器 实例70 动画播放器 第六篇 数据库开发 实例71 建立数据表 实例72 用access建表 实例73 连接access数据库 实例74 连接sqlserver数据库 实例75 绑定数据 实例76 数据窗体向导 实例77 dataview控件 实例78 command和datareader类的使用 实例79 在web中访问数据库 实例80 水晶报表 第七篇 网络编程 实例81 获取计算机名称 实例82 电话拨号程序 实例83 web浏览器 实例84 发送邮件 实例85 发送广播 实例86 聊天工具 实例87 sockets类的使用 实例88 web应用程序 实例89 table控件 实例90 自定义web控件 第八篇 其他应用 实例91 获取cpu信息 实例92 获取文件信息 实例93 打印预览 实例94 椭圆窗体 实例95 控制台程序 实例96 创建xml文档 实例97 创建xml架构 第九篇 综合实例 实例98 计算器 实例99 个人图书管理 实例100 打包发布
这几天看了很多关于脱离框架运行C#程序的文章,千篇一律,都是讲飞信方案的,此方案涉及一些法律问题,只能自己研究一下,后来用google美国网站搜了一把,看了些文章,无意中发现mono,又用mono关键字到google中国搜了一把,已经有人实现控制台程序脱离.net框架了。 其实就是换mono的公共语言运行时来使用。这样做的好处是体积小,发布免安装。首先,您需要下载mono的最新版。 http://ftp.novell.com/pub/mono/archive/1.9.1/windows-installer/2/mono- 1.9.1-gtksharp-2.10.4-win32-2.exe,安装后,就可以继续进行了。 1、用Visual Studio创建一个Windows应用程序,假设叫做WinApp,并添加一个按钮。 2、编译此项目,得到一个WinApp.exe文件。 3、自己建立一个文件夹WinApp,其中再建立bin和lib这两个文件夹 4、将mono安装文件夹中的bin和lib子文件夹中需要的文件拷贝至刚才建立的那两个文件夹。mono的默认安装位置是:C:\Program Files\Mono-1.9.1 5、将需要运行的exe文件放入WinApp文件夹。 6、调用,可以使用bat批处理来调用,bin\mono.exe WinApp.exe。(其实写个VC++的小程序调用最好,可以我很菜) 好了,发个代码上来,有兴趣的朋友可以研究一下,7zip打包后仅3.26MB,却实现了免安装微软庞大的框架。此测试项目我在纯净的虚拟机和本机均测试过,但有个bug,mono对中文路径支持不好,如若有中文路径,则无法运行。我后来又试了用C:\Program Files\Mono-1.9.1\bin\mono.exe来执行,则没有中文路径问题。我觉得缺少了哪个文件,一个一个试着拷贝到WinApp文件夹中,再用批处理来执行,还是错误。后来干脆将整个安装目录的文件全搬到WinApp目录中,执行批处理还是失败,可是用C:\Program Files\Mono-1.9.1\bin\mono.exe来执行就是能功,百思不得其解啊!究竟少了什么东西呢? 注意:例子中的dll文件已经为最精简,一个都不能缺少,我是用最笨的办法,删除到回收站,运行,重复此过程来确定需要保留哪些dll的。如果你机子上装有.net框架,你当然可以直接运行此程序,或者用bat来运行也可以,效果是不一样的。
初识Visual Leak Detector   灵活自由是C/C++语言的一大特色,而这也为C/C++程序员出了一个难题。当程序越来越复杂时,内存的管理也会变得越加复杂,稍有不慎就会出现内存问题。内存泄漏是最常见的内存问题之一。内存泄漏如果不是很严重,在短时间内对程序不会有太大的影响,这也使得内存泄漏问题有很强的隐蔽性,不容易被发现。然而不管内存泄漏多么轻微,当程序长时间运行时,其破坏力是惊人的,从性能下降到内存耗尽,甚至会影响到其他程序的正常运行。另外内存问题的一个共同特点是,内存问题本身并不会有很明显的现象,当有异常现象出现时已时过境迁,其现场已非出现问题时的现场了,这给调试内存问题带来了很大的难度。   Visual Leak Detector是一款用于Visual C++的免费的内存泄露检测工具。相比较其它的内存泄露检测工具,它在检测到内存泄漏的同时,还具有如下特点:   1、 可以得到内存泄漏点的调用堆栈,如果可以的话,还可以得到其所在文件及行号;   2、 可以得到泄露内存的完整数据;   3、 可以设置内存泄露报告的级别;   4、 它是一个已经打包的lib,使用时无须编译它的源代码。而对于使用者自己的代码,也只需要做很小的改动;   5、 他的源代码使用GNU许可发布,并有详尽的文档及注释。对于想深入了解堆内存管理的读者,是一个不错的选择。   可见,从使用角度来讲,Visual Leak Detector简单易用,对于使用者自己的代码,唯一的修改是#include Visual Leak Detector的头文件后正常运行自己的程序,就可以发现内存问题。从研究的角度来讲,如果深入Visual Leak Detector源代码,可以学习到堆内存分配与释放的原理、内存泄漏检测的原理及内存操作的常用技巧等。   本文首先将介绍Visual Leak Detector的使用方法与步骤,然后再和读者一起初步的研究Visual Leak Detector的源代码,去了解Visual Leak Detector的工作原理。   使用Visual Leak Detector(1.0)   下面让我们来介绍如何使用这个小巧的工具。   首先从网站上下载zip包,解压之后得到vld.h, vldapi.h, vld.lib, vldmt.lib, vldmtdll.lib, dbghelp.dll等文件。将.h文件拷贝到Visual C++的默认include目录下,将.lib文件拷贝到Visual C++的默认lib目录下,便安装完了。因为版本问题,如果使用windows 2000或者以前的版本,需要将dbghelp.dll拷贝到你的程序的运行目录下,或其他可以引用到的目录。   接下来需要将其加入到自己的代码中。方法很简单,只要在包含入口函数的.cpp文件中包含vld.h就可以。如果这个cpp文件包含了stdafx.h,则将包含vld.h的语句放在stdafx.h的包含语句之后,否则放在最前面。如下是一个示例程序:   #include   void main()   {   …   }   接下来让我们来演示如何使用Visual Leak Detector检测内存泄漏。下面是一个简单的程序,用new分配了一个int大小的堆内存,并没有释放。其申请的内存地址用printf输出到屏幕上。   #include   #include   #include   void f()   {   int *p = new int(0x12345678);   printf("p=%08x, ", p);   }   void main()   {   f();   }   编译运行后,在标准输出窗口得到:   p=003a89c0   在Visual C++的Output窗口得到:   WARNING: Visual Leak Detector detected memory leaks!   ---------- Block 57 at 0x003A89C0: 4 bytes ---------- --57号块0x003A89C0地址泄漏了4个字节   Call Stack: --下面是调用堆栈   d:\test\testvldconsole\testvldconsole\main.cpp (7): f --表示在main.cpp第7行的f()函数   d:\test\testvldconsole\testvldconsole\main.cpp (14): main –双击以引导至对应代码处   f:\rtm\vctools\crt_bld\self_x8

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧