vb.net 怎么判断生成的exe 是debug还是release版本的。

问题描述

vb.net用程序 怎么判断生成的exe是debug还是release版本的。

解决方案

解决方案二:
该回复于2011-12-20 11:36:12被版主删除
解决方案三:
在.NET中以DebuggableAttribute来控制CLR如何处理模块代码规则,而属性IsJITTrackingEnabled来标识运行库在代码生成过程中是否跟踪调试信息的的标识,如果IsJITTrackingEnabled为True,表示运行库跟踪调试信息,可推断为DebugBuild模式;如果IsJITTrackingEnabled为false,表示运行库没有跟踪调试信息,可推断为Release模式。所以,解决方法着眼于对IsJITTrackingEnabled信息的获取上:具体解决方法:publicenumDebugMode{Debug,Release}publicstaticclassUtils{///<summary>///GetGetCustomAttribute///</summary>///<typeparamname="T">CustomAttributeType</typeparam>///<paramname="provider"></param>///<returns></returns>publicstaticTGetCustomAttribute<T>(thisICustomAttributeProviderprovider)whereT:Attribute{varattributes=provider.GetCustomAttributes(typeof(T),false);returnattributes.Length>0?attributes[0]asT:default(T);}publicstaticDebugModeGetDebugMode(stringassemblyName){if(string.IsNullOrEmpty(assemblyName)){thrownewArgumentNullException("assemblyName");}DebugModeret=DebugMode.Debug;try{//GetasseblybynameAssemblyass=Assembly.LoadFile(assemblyName);//GetDebuggableAttributeinfoDebuggableAttributeatt=ass.GetCustomAttribute<DebuggableAttribute>();ret=att.IsJITTrackingEnabled?DebugMode.Debug:DebugMode.Release;}catch(Exception){throw;}returnret;}}
解决方案四:

解决方案五:
thankyou,试一下。
解决方案六:
该回复于2011-12-22 13:13:49被版主删除

时间: 2024-10-22 01:17:11

vb.net 怎么判断生成的exe 是debug还是release版本的。的相关文章

解决VS2008中生成C/C++项目时遇到“生成‘rc.exe’时出错”

解决步骤: 1.运行VS2008安装程序. 2.在"选择要安装的功能"这一步时,依次展开"语言工具"--"Visual C++"--"Visual C++ 工具",勾选"Win32 工具"一项. 3.点"更新"按钮. 此时安装程序将开始维护操作,完成后将解决生成rc.exe时出错的问题. PS.如果还不行,就把"语言工具"--"Visual C++"

矢量图 矩形区域-VB矢量图 判断矩形区域内包含的图形(对象)

问题描述 VB矢量图 判断矩形区域内包含的图形(对象) 在VB做的矢量图中,自己定义一个矩形区域,如何确定在这个矩形区域内是否存在图像对象

样式-如何用C或VB写一个随机密码生成的软件?

问题描述 如何用C或VB写一个随机密码生成的软件? **'用C或VB写一个随机密码生成的软件?' 要求: 1.密码包括大小写,特殊字符(仅限键盘上能找到的字 符),不包括空格. 2.自定义密码长度,默认最短六位,最高32位.可以自定义密码的做成成分(是否包括大小写,是否包含特殊字符) 3.从本地数据库调用数据,最后生成的密码以文本方式储存在文件目录下

visual studio-vs如何设置,生成的exe里面才看不到函数名

问题描述 vs如何设置,生成的exe里面才看不到函数名 我自己写的exe用OD打开后,所有的函数名都可以看见,但是我发现下载的exe没有一 个会是这样,比如优酷客户端就很干净,为什么? 解决方案 编译后理论上就不会再存在没有导出的函数名称了(因为没有必要这纯粹是无意义地增大程序体积),但是VS默认会生成pdb文件,并把pdb的路径写入exe文件,所以你发布的时候不发布pdb就行了,其实这个pdb就算发布了也不会给破解者多大帮助,pdb里面就是函数名称啊,各种原型啊,方便程序崩溃时调试用的,你可以

vs2008生成“cl.exe”时出错

问题描述 vs2008生成"cl.exe"时出错 无法启动程序"C:UsersmyDesktoptestDebugtest.exe" vs2008生成"cl.exe"时出错 解决方案 打开任务管理器看是不是有个调试程序没关掉 解决方案二: 开一下项目属性中,生成的可执行文件目录配置是哪里 解决方案三: 预编译设置的问题. 在VC中,依次点击""project""->""Settin

stack hash-MFC生成release版本的exe程序,崩溃,故障模块是StackHash_31f3

问题描述 MFC生成release版本的exe程序,崩溃,故障模块是StackHash_31f3 MFC的基于单文档的程序,是release版本的:用程序调试(F5),不会出现问题:直接运行生成的exe程序(在本机上哈),出现问题,见下: ***(exe文件名)已经停止工作 windows可以联机检测该问题的解决方案. 问题签名: 问题事件名称: APPCRASH 应用程序名: test.exe 应用程序版本: 1.0.0.1 应用程序时间戳: 5604b29f 故障模块名称: StackHas

c-关于VB.net调用C生成的dll,遇到的比字符集不匹配还纠结的问题

问题描述 关于VB.net调用C生成的dll,遇到的比字符集不匹配还纠结的问题 升级项目.从6.0到2012.升级后出现调用dll中c的方法:DLLEXPORT BOOL WINAPI InsUpdDel( LPSTR lpSqlStr LPRTNINFO RtnInfo )其中 LPSTR lpSqlStr 是_char × 类型,在API _winnt.h中定义:winnt.h // ANSI (Multi-byte Character) types//typedef Null_termin

平台工具集-vs2015生成的exe 在别的电脑上了用不了

问题描述 vs2015生成的exe 在别的电脑上了用不了 1. 我在我的电脑上装了visual studio 2015社区版,然后我用它写了一个程序.在自己的电脑上,编译成功,生成debug版的exe成功.但是我发现,只要不在有vs2015的电脑上,就运行不了这个exe,请问为什么? 2. 我试了三台电脑(2个装有vs2013,1个装有vs2010,结果三个电脑都运行不了那个exe,都是提示找不到msvcp140.dll),请问什么是运行库?什么是动态链接库什么是静态链接库他们和运行库有什么关系

visual studio-vs打包的WEBForm生成的.EXE无法在XP系统上安装

问题描述 vs打包的WEBForm生成的.EXE无法在XP系统上安装 打包时已经把.net4.0打包进去,在XP上也下载安装了.net4.0 问题是在XP上无法安装,在WIN7上可以正常安装运行. 解决方案 是不是用到了XP系统不支持的特性,所以安装包安装失败了. 解决方案二: webform?你是说asp.net么?那么需要iis的支持,你的windows xp有安装iis么? 解决方案三: xp缺乏相应的文件,应该是不支持你这个程序. 解决方案四: xp缺乏相应的文件,应该是不支持你这个程序