mfc生成Release版本的问题 [问题点数:20分,结帖人ywf4026]

Bbs1
本版专家分:0
结帖率 100%
Bbs12
本版专家分:361610
版主
Blank
名人 2013年 荣获名人称号
Blank
探花 2011年 总版技术专家分年内排行榜第三
2010年 总版技术专家分年内排行榜第三
Blank
进士 2012年 总版技术专家分年内排行榜第五
Blank
金牌 2012年1月 总版技术专家分月排行榜第一
Bbs1
本版专家分:10
Bbs1
本版专家分:20
如何生成release版本
仅仅在setting中将debug换成release就可以了吗?我的好像不成啊
关于MFC的release版本导出的问题
为什么Debug的时候可以编译通过,而要导出release<em>版本</em>的时候就会出现这样一个错误呢??rn--------------------Configuration: 定时关机 - Win32 <em>Release</em>--------------------rnCompiling...rn定时关机Dlg.cpprnC:\Documents and Settings\Administrator\桌面\定时关机\定时关机Dlg.cpp(4) : fatal error C1083: Cannot open precompiled header file: '<em>Release</em>/定时关机.pch': No such file or directoryrnError executing cl.exe.rnrn定时关机Dlg.obj - 1 error(s), 0 warning(s)rnrn--------------------Configuration: 定时关机 - Win32 <em>Release</em>--------------------rnCompiling...rnStdAfx.cpprnD:\VC98\MFC\INCLUDE\afxwin2.inl(465) : error C2039: 'OnRButtonDown' : is not a member of 'CWnd'rn D:\VC98\MFC\INCLUDE\afxwin.h(1899) : see declaration of 'CWnd'rnD:\VC98\MFC\INCLUDE\afxwin2.inl(466) : error C2065: 'Default' : undeclared identifier
MFC工程在release版本下的问题求助
前一阵子用<em>mfc</em>做了一个软件安装和卸载包。功能全部都现实了,在debug下也没有任何<em>问题</em>。然后用release编译时虽然也没有报错,不过在安装完成后卡住不动了。调试了很久都没有找到<em>问题</em>出在哪里。rnrn我的逻辑是这样的。请大佬们耐心看完。 = = !rnrn打开程序点击安装进入进度条的界面。这里用的是多线程(因为我的背景是gif图)。然后设置了一个定时器,每隔半秒点击一次隐藏的button。第一次点击进入多线程处理解压以及创建快捷方式等操作,操作完成后,会给一个标记,下一次定时器点击隐藏的button时,会结束本对话框,进入最后完成安装的界面。rnrndebug<em>版本</em>没有任何<em>问题</em>,但是release<em>版本</em>, 进度条走到最后的时候,就卡住不动了。无法进入完成安装界面。rnrn我经过调试发现,多线程里面所有的逻辑它都完成了,也就是说,安装已经安装好了。但是在结束多线程后,定时器多数情况都不会再点击隐藏的button(偶尔又会点击,但是就算点击,运行了xxxdlg.DoModal()也没有<em>生成</em>新的对话框。这里我非常不解!)rnrn楼下贴出我的消息点击函数和线程函数,望大佬们指点一下!
release 版本下面生成的obj
我的程序为什么release <em>版本</em>下面<em>生成</em>obj,idb文件,如何去掉(不<em>生成</em>)rnrn
怎样生成release版本啊。
我的程序编好后,怎么设置才能做成release<em>版本</em>呢?为什么我的目录里只有debug文件夹啊
请教个VS2010生成Release版本问题
我的程序引用了别人的项目,在Debug模式下<em>生成</em>是没<em>问题</em>的。但是在release模式下就找不到所有引用的DLL,请问怎么解决这个<em>问题</em>?错误提示:VS 错误 6 未能找到元数据文件"XXXXX.dll"
生成Release版本时遇到的问题
在VS2005下,遇到#error : Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLLrnrn错误解决方法:rnrn求解,我的工程属性是在静态库中使用MFC
生成RELEASE版本时遇到的奇怪问题
  在Debug版中调试、运行均正常(多线程,一个子线程),但在<em>生成</em>RELEASE<em>版本</em>时出现错误:程序执行非法操作!rn  在MSDN Online中查找类似<em>问题</em>时,其中有一篇文章说在线程之间传递数据时不要使用MFC对象。于是我把传递给子线程的对象改为结构类型(原来是一个类),成员是一个静态数组、一个Handle,一个HWnd。修改之后,仍然不行,把参数换为NULL也不行。rn  我又在创建线程语句前、后加入AfxMessageBox,结果是之前的可以,之后的不行。但<em>问题</em>是,我把创建线程语句注释掉,仍然是前面的可以,后面的还没执行就产生非法操作错误。rn  最后,我作了如下修改:rnint CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)rnrn if (CFrameWnd::OnCreate(lpCreateStruct) == -1)rn return -1;rn // create a view to occupy the client area of the framern if (!m_wndView.Create(NULL, NULL, AFX_WS_DEFAULT_VIEW,rn CRect(0, 0, 0, 0), this, AFX_IDW_PANE_FIRST, NULL))rn rn TRACE0("Failed to create view window\n");rn return -1;rn rn rn if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOPrn | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||rn !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))rn rn TRACE0("Failed to create toolbar\n");rn return -1; // fail to creatern rnrn if (!m_wndStatusBar.Create(this) ||rn !m_wndStatusBar.SetIndicators(indicators,rn sizeof(indicators)/sizeof(UINT)))rn rn TRACE0("Failed to create status bar\n");rn return -1; // fail to creatern rnrn m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);rn EnableDocking(CBRS_ALIGN_ANY);rn DockControlBar(&m_wndToolBar);rnrn AfxMessageBox("一!");rn AfxMessageBox("二!");rn //m_wndView.InitData();rn return 0;rn仍然是第一个Message可以显示,紧接着就出现执行非法操作错误了!rnrn 是我的VC有<em>问题</em>,还是程序有<em>问题</em>呢?我用的是VC6+SP5。
MFC 生成release版本程序无法在非VC环境运行
请教高手帮忙!rn补充:已经 改为 使用MFC静态链接库 了~其他机器上运行 不报错~,双击一点反应都没有。rn我在百度上看到两种方法:rn第一种方法、要把静态库的LIB文件包含到exe的根目录下(前提是你程序加载LIB的路径是根目录);如果在别的地方加载 比如C盘里安装的文件 那你考过去的电脑里C盘同样路径下也要安装此文件。 rn第二种方法:最好还是通过vc待的depend工具监测程序所需dll文件,然后和exe程序放在一起比较保险。rnrn 第一种方法我不知道具体如何操作,我照着第二种方法做了,看到了exe依赖的dll文件有很多,但到什么地方找这些文件呢?rn
flex生成Release版本在MFC中加载很慢如何解决?
我们使用MFC对话框加载Flex<em>生成</em>的<em>Release</em><em>版本</em>swf文件,但在一台未安装过该客户端的机子上第一次安装后运行,swf加载很慢,会等上2分多钟,而以后运行就很快。是什么原因?请高手们指教!
vista下生成的release版本在xp下无法运行,什么问题mfc
在vista下运行良好,在xp下运行几秒就弹出 内存不可读 啥情况?
debug版本和release版本问题
我的debug<em>版本</em>能够正常运行,可是在release<em>版本</em>下却不能运行,而且还弹出"应用程序错误"窗口提示"0x00000000"指令引用的内存"0x000000000"不能read,我不清楚这个错误在debug下怎么不提示?一般遇到这个错误怎么解决啊?我点击"取消"却不能调试,请赐教!谢谢!rn程序调用了我写的一个dll.rn
Qt release版本版本问题
我编译的Qt程序Debug编译出来的可执行程序,每个功能项都运行得很好,但是,我变成release<em>版本</em>时,有些功能竟然无法使用(不是崩掉,是点击了没反应),这是咋回事?难道release把代码都优化成不能执行了
debug版本和release版本问题!
我的程序在debug<em>版本</em>下没有<em>问题</em>,rn但是在release<em>版本</em>下会出现访问非法内存的<em>问题</em>?rn大家看看可能是什么原因引起的?
C#如何生成release版本的程序,生成debug版本的程序
除了右击项目在<em>生成</em>中配置改成<em>Release</em>还要在顶部切换成<em>Release</em>
MFC release 编译问题
用debug编译 运行没有错误 rn但是换成release后 编译出现错误如下:rnrnE:\c\DIBProcessing\DIBProcessing\DIBProcessing\FreTrans.cpp(96) : fatal error C1001: INTERNAL COMPILER ERRORrn (compiler file 'E:\8168\vc98\p2\src\P2\main.c', line 494)rn Please choose the Technical Support command on the Visual C++rn Help menu, or open the Technical Support help file for more informationrnE:\c\DIBProcessing\DIBProcessing\DIBProcessing\DibImage.cpp(1796) : fatal error C1001: INTERNAL COMPILER ERRORrn (compiler file 'E:\8168\vc98\p2\src\P2\main.c', line 494)rn Please choose the Technical Support command on the Visual C++rn Help menu, or open the Technical Support help file for more informationrnrn好像是和用到了using namepace std 和#include有关rn第一次编译release版的 没什么经验,希望高手解答一下
Android Studio 生成debug版本正常,生成release版本报错
最近的任务是优化一个老项目,这个项目的开发工具一直以来都是Inteliji IDEA,项目除了<em>生成</em>测试包外,还会有UAT包、生产包等,需要频繁的手动更改IP地址、端口等等一些参数。新项目的开发都是用Android Studio[基于IDEA],所以就尝试着把这个项目导人Android Studio,顺便利用gradle来创建多个<em>版本</em>的包。创建的步骤网上很多教程,这里不再赘述。 遇到的<em>问题</em>是,
MFC的Release模式问题
本人新写了一个对话框程序,DEBUG下运行没<em>问题</em>,<em>Release</em>下运行也是正常的.但当我把<em>Release</em>下运行产生的EXE文件移到别的电脑上打开时,发现程序是混乱不堪,该打开显示的子对话框一个都没有显示,在对话框上画的线也乱了,跟在我自己电脑上运行的结果有非常大的出入。不知是何原因,请高手帮忙。注:程序里没有条件编译之类的语句,也未对<em>Release</em>目录设置进行过任何的改动,都是默认下的设置,自己电脑上运行的结果是一切正常!
关于RELEASE版本问题????
我现在有一个<em>问题</em>,我的程序是一个对串口进行读写的程序,我开了一个线程,并且循环去读串口数据,但是在DEBUG<em>版本</em>下可以正常运行,但是在RELEASE<em>版本</em>下读串口数据的时候就会出现异常,请问这个是什么原因,我想调试RELEASE<em>版本</em>下的程序,只能写日志吗??还有其他更好的办法吗,如果写日志,我打算在我开的线程里面使用CFile来进行写日志,或者是用fopen来写日志,哪个更好点???
Release和Debug版本问题
我的程序build以后,Debug<em>版本</em>执行没有<em>问题</em>,但是<em>Release</em><em>版本</em>执行就要出错,导致First-chance exception in Cost.exe (MFC42.DLL): 0xC0000005: Access Violation.我实在不清楚,为什么会这样。你们认为可能会是什么原因呢?
release版本问题
编译release<em>版本</em>dll,然后给主程序使用。发现在vc6.0的环境下,在project-》setting中设置好路径直接执行主程序时没有<em>问题</em>。但是在直接双击主程序的exe文件打开主程序时,在使用dll时却出<em>问题</em>了。请碰到过类似<em>问题</em>的兄弟帮忙解决。
release版本崩溃的问题
程序中定义了4个结构体对象,结构体如下:rnstruct TableDesrn char Name[300][80];//名称rn char Unit[300][20];//单位rn int iRegCount;//个数rn BYTE bytValue[60];//数值(字节)rn unsigned char m_bDataType[30]; //是否有符号 1:有符号,0:无符号rn double m_dCoe[30]; //数据系数rn;rnTableDes A,B,C,D;rn然后从TXT点表中读信息,当A有32个信息点,B有29个信息点时程序运行正常,可B增加到31个点时debug<em>版本</em>正常,release<em>版本</em>崩溃,提示"0x00000000"指令应用的“0x00000000”内存。该内存不能为“read”rn后来我将B放到对话框初始化中,并将它改为局部变量,debug版和release版都正常,求解原因?rn
debug和release版本问题
我的程序在集成环境下Debug和<em>Release</em>都可以正常运行,rn不通过集成环境启动程序debug<em>版本</em>可以正常运行, release<em>版本</em>运行之后进行某种操作会报错,而在集成环境下进行此操作不报错,这是什么原因造成的??rnrn 集成环境:vs2005rn 操作系统:Win xp
RELEASE版本问题
debug<em>版本</em>全部正确rnRELEASE<em>版本</em>有如下错误,请问要加些什么,谢谢rnDDUTIL.CPPrnMain.cpprnLinking...rnBoat.obj : error LNK2001: unresolved external symbol __imp__PlaySoundA@12rnMain.obj : error LNK2001: unresolved external symbol _DirectDrawCreate@12rnMain.obj : error LNK2001: unresolved external symbol __imp__timeGetTime@0rn<em>Release</em>/Rip.exe : fatal error LNK1120: 3 unresolved externalsrnError executing link.exe.
关于release版本问题
软件编译成debug<em>版本</em>,能正常运行,但编译成release<em>版本</em>,就不行,请教各位原因是什么呢,如何做才可以?rn急!!!!!
Release版本程序崩溃问题!!!
Win7下面错误报告如下:rn--------------------------------------------rn[color=#0000FF]<em>问题</em>签名:rn <em>问题</em>事件名称: BEXrn 应用程序名: Solutions.exern 应用程序<em>版本</em>: 2.0.0.1rn 应用程序时间戳: 4c51c721rn 故障模块名称: MSVCR90.dllrn 故障模块<em>版本</em>: 9.0.30729.4926rn 故障模块时间戳: 4a1743c1rn 异常偏移: 0006c955rn 异常代码: c0000417rn 异常数据: 00000000rn OS <em>版本</em>: 6.1.7600.2.0.0.768.2rn 区域设置 ID: 2052rn 其他信息 1: 4bdbrn 其他信息 2: 4bdb5eee252052747aabf43af747dc61rn 其他信息 3: 9699rn 其他信息 4: 96992f4f6df0b33afa045e0127cd9fd3[/color]rnrn联机阅读隐私声明:rn http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0804rn-------------------------------------------------------------rnrn这个报告如何解读啊???不懂啊。。。rnrn一直没有办法定位和跟踪这个错误的发生场景,使用同一个数据进行调试,debug<em>版本</em>没有遇到<em>问题</em>,release运行很多情况下出现崩溃,少数几次运行正常!rnrn两天了,没有查到线索现在,我也要崩溃了。。。。
release发行版本问题
vc2005环境下,release<em>版本</em>,开始执行(不调试),运行结果正常,而打开由它<em>生成</em>的.exe运行结果却不一样
急!!Release版本问题
在VC6.0中,DEBUG<em>版本</em>运行正常,而<em>Release</em><em>版本</em>在编译时出现了以下错误:rnfatal error C1010:unexpected end of file while looking for precompiled header directive.rn请问是怎么回事啊?应该怎么解决??rn非常感谢!!!rn
release版本的奇怪问题???
我遇到这样一个情况,程序突然在release<em>版本</em>下出错,XXX访问的内存不能为写,debug<em>版本</em>没事。按照以前经验怀疑是什么地方没给初值。可是经过一个上午调试发现<em>问题</em>出在malloc函数上,分配11624个unsinged char居然出错,后来我把这个类对象的new放在其他类对象的前面就解决了。这是为什么???这样还有个<em>问题</em>对象创建时要用的fclose函数也出错了,只能把它给去掉了。release<em>版本</em>到底是怎么回事??
关于RELEASE版本问题???
我现在有一个<em>问题</em>,我的程序是一个对串口进行读写的程序,我开了一个线程,并且循环去读串口数据,但是在DEBUG<em>版本</em>下可以正常运行,但是在RELEASE<em>版本</em>下读串口数据的时候就会出现异常,请问这个是什么原因,我想调试RELEASE<em>版本</em>下的程序,只能写日志吗??还有其他更好的办法吗,如果写日志,我打算在我开的线程里面使用CFile来进行写日志,或者是用fopen来写日志,哪个更好点???
Release版本下奇怪的问题...
CListCtrl &cThisCtrl = GetListCtrl();rnrnLVITEM item;rn item.mask = LVIF_IMAGE;rn item.iImage = nState; //这里指定新图片在CImageList中的索引rn rn switch(nChannelType)rn rn case 0:rn item.iItem = 0;rn cThisCtrl.SetItem(&item);rn cThisCtrl.SetItemText(0, 1, strState);rn break;rnrn case 1:rn item.iItem = 4;rn cThisCtrl.SetItem(&item);rn cThisCtrl.SetItemText(4, 1, strState); rn break;rnrn case 2:rn item.iItem = 6;rn cThisCtrl.SetItem(&item);rn cThisCtrl.SetItemText(6, 1, strState); rn break;rnrn case 3:rn item.iItem = 2;rn cThisCtrl.SetItem(&item);rn cThisCtrl.SetItemText(2, 1, strState); rn break;rn rnrn函数部分代码如上:rn在<em>Release</em><em>版本</em>下rn cThisCtrl.SetItem(&item),会根据nState动态改变图标(icon格式),但在<em>Release</em><em>版本</em>下就不能改变了,如何解决啊
CSocket问题,release版本
我在在工作线程里,创建CSocket,用于接受和发送消息,在Debug<em>版本</em>里能够正常运行,而在release<em>版本</em>中,就上报错,什么内存不能read啥的???rn我是在Dialog的OnInitDialog()对socket进行初始化的。rn请大侠只招
Release版本问题
程序编完了之后,<em>生成</em>了Realease<em>版本</em>,自己电脑上运行没有<em>问题</em>,,但是换了一台电脑后,执行的时候,与数据库连接的do出错了,这是什么<em>问题</em>????我用的是VC++6.0,,,数据库是MYSQL,,,,
RichEditCtrl的release版本问题
我的richeditctrl里设置了字体带下划线.rnCHARFORMAT cf; rncf.dwEffects = CFE_AUTOCOLOR|CFE_UNDERLINE;rncf.cbSize = sizeof (CHARFORMAT); rnm_MemoryEdit.SetDefaultCharFormat(cf);rn在debug<em>版本</em>下没有<em>问题</em>,但是在release下就不会出现下划线?rnrn另外一个程序rnCHARFORMAT cf; rncf.cbSize = sizeof (CHARFORMAT); rncf.dwMask = CFM_COLOR|CFM_FACE | CFM_SIZE|CFM_CHARSET; rncf.dwEffects&=~CFE_AUTOCOLOR; rncf.bCharSet = GB2312_CHARSET; rnif(wParam == 0)rn cf.crTextColor = RGB(200,0,0); rnelsern cf.crTextColor = RGB(0,200,200);rnsprintf(cf.szFaceName, "system"); rnGetRichEditCtrl().SetWordCharFormat(cf);rn是对下面要输入的字体改变颜色。debug下正常,但是release下有时字体会变大
有关release版本问题
我的程序有一个exe,一个dll我使用VC的release<em>版本</em>编译。如果我设置rnC/C++中的Optimizations为Maximize Speed,Debug info为None,则编译的rn程序启动后,调用Dll自动退出。但是如果选择Optimizations为Maximize 为Disable(Debug),Debug info为Program Database,则一切正常。我使用的Dllrn为普通的Dll,不知道是什么原因,请教各位。谢谢回答
ActiveX release 版本问题
写了一个ActiveX控件,debug<em>版本</em>没有<em>问题</em>,但是release<em>版本</em>不能运行。release<em>版本</em>编译的时候有下面的警告:rn “warning LNK4098: defaultlib 'MSVCRTD' conflicts with use of other libs; use /NODEFAULTLIB:library”rn 还有一堆:rn “warning C4748: /GS can not protect parameters and local variables from local buffer overrun because optimizations are disabled in function”rn 我的ActiveX控件solution里有两个工程,一个编译成静态lib,另外一个编译成动态dll(就是控件主文件)。网上说warning LNK4098是由于混用不同类型的静态链接库造成的,我的理解就是这两个工程由于使用了不同类型的MSVCRTD从而造成冲突。rn 现在的<em>问题</em>在于动态dll工程(控件主文件)依赖静态lib工程太深,静态lib工程改成dll就没法编译出来。rn 有没有什么办法不改变原有的工程编译方式,使得release<em>版本</em>能够编译运行??
Release版本问题
选择使用静态dll后,出现警告错误:rnLINK : warning LNK4089: all references to "SHELL32.dll" discarded by /OPT:REFrnrn不知是什么原因?
release 和debug版本问题
debug下编译正常可用,release下编译下不可用,但又没错误提示。不知怎么处理?rn
debug和release版本问题!
我的debug<em>版本</em>能够正常运行,可是在release<em>版本</em>下却不能运行,而且还弹出"应用程序错误"窗口提示"0x00000000"指令引用的内存"0x000000000"不能read,我不清楚这个错误在debug下怎么不提示?一般遇到这个错误怎么解决啊?我点击"取消"却不能调试,请赐教!谢谢!
VC6的release版本问题
用VC6 写了一个软件,里面用到了MATLAB 的dll文件,编译出来的release<em>版本</em>exe在启动rn的时候会查找这些dll,如果没找到就启动不了><.rn现在我想知道怎么设置VC6让这个release <em>版本</em>exe在启动的时候不查找这些dll只在用户用rn到MATLAB的时候去找?如果找不到就报错但是不退出软件...rn
recv在Release版本下的问题
我有一个程序,其中有个地方使用了Recv函数,rn在Debug<em>版本</em>下正常,但是在<em>Release</em><em>版本</em>下就不能正常收发数据。rnrn这是怎么回事?请哪位指点一下?
Release版本问题
我编写了一个程序,最终<em>生成</em>了一个debug<em>版本</em>,一个release<em>版本</em>。都是用的静态链接库。但在运行的时候debug<em>版本</em>的exe程序运行正常,而release<em>版本</em>的报出"没有找到指定文件"的警告,然后才开始正常的运行。请问大侠这个要怎么解决?
OPENCV2.4.11+vs2015 Release生成问题
[color=#FF0000]WIN10+OPENCV2.4.11+vs2015[/color] rndebug<em>版本</em>可以正常运行,想发布<em>Release</em><em>版本</em>,报错:[color=#FF0000]LINK : fatal error LNK1181: 无法打开输入文件“opencv_calib3d249.lib”[/color]rn<em>问题</em>是我根本没有添加:[color=#FF0000]“opencv_calib3d249.lib”[/color],<em>Release</em>相关操作也改了,还是报错。rn如图:rn[img=https://img-bbs.csdn.net/upload/201804/14/1523705728_250578.png][/img][img=https://img-bbs.csdn.net/upload/201804/14/1523705736_545801.png][/img][img=https://img-bbs.csdn.net/upload/201804/14/1523705752_367128.png][/img][img=https://img-bbs.csdn.net/upload/201804/14/1523705765_466883.png][/img]
生成release下的dll问题
vs03.net环境rn<em>生成</em>后在工程release路径下找不到dll文件,设置了项目的属性和其他的一样。rn不知道还需要设置什么?rn谢谢
Release生成DLL的问题
fatal error C1189: #error : Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d]rn怎么解决啊?
VC RELEASE 生成问题
我没写任何代码 ,都是APP向导给出的,rnrnDEBUG 没<em>问题</em>,可RELEASE就有警告,在LINK选项里把一个钩去了,就好了,不知道为什么???
网络五子棋 基于Release版本的MFC实现
实现了网络五子棋的对战,并且美化了界面,同时有制作者说明,在功能上实现点对点的对战,而且还集成了可执行的安装软件,对应的相关代码注释和说明,主要是将对话框与套接字关联在一起进行实现的,从而避免了内存的耗尽。
mfc的release版本中类不能初始化
<em>mfc</em>的release<em>版本</em>中rn添加其它的类后,rn类的构造函数不能调用,rn无法完成初始化,rn所以程序就错了,rn请问如何解决呢??
vs2008 mfc unicode程序release版本下异常错误
用debug模式, 全局类变量Cstring类型的exepath能获取正确的值,可以在release下 加断点exepath显示为:错误的指针,两者起初都未进行初始化,查一些资料说是Cstring变量无需初始化,后来我对exepath=“”;进行初始化也不行。下面是这段代码 rnTCHAR path[MAX_PATH];rnGetModuleFileName(NULL,path,sizeof(path));rnexepath.Format(_T("%s"),path);rn//exepath=path;//上面这两句代码 在debug下均正常执行,在release下 exepath均不能获取正确的值rnint pos=exepath.ReverseFind(_T('\\'));rnexepath=exepath.Left(pos);rnrn请问是哪方面的原因引起的,和我的release配置有关系吗?
MFC 静态链接 生成release版 缺少dll
程序用到了Openssl的libeay32.dll,静态链接MFC,<em>生成</em>的<em>Release</em>版还是不能再其它机器上运行,说是“计算机中丢失libeay32.dll”。当然,把libeay32.dll放在程序目录下可以运行。我的<em>问题</em>是,静态链接MFC不能把libeay32.dll链接进程序吗?如果不能,有什么方法吗?
release版本
我做好的release<em>版本</em>,在别人的机子上打开没有任何反应
debug版本和release版本
debug<em>版本</em>和release<em>版本</em>除了调试信息以外,还有什么不一样吗?rn为什么我的程序在debug<em>版本</em>上可以很好的运行但编译成release<em>版本</em>就出现非法操作,rn主要是在存取全局变量的地方?rn有没有人遇到过同样的<em>问题</em>?rn应该注意哪些事项?rnrn注-----我的程序在debug<em>版本</em>上可以很好的运行
Release版本和Debug版本
我在PROJECT->SETTINGS->SETINGS FOR里选择了WIN32 RELEASE并按OK退出,但重新进到SETTINGS对话框,SETINGS FOR里显示的还是WIN32 DEBUG,这是为何?谢谢!
debug版本与release版本
debug为调试<em>版本</em>,其中包括了出错时能够定位源代码的行,如果源文件已经改变,定位出来会有偏移,而且,在这个<em>版本</em>中编译器不会进行代码优化,并且在程序中能用宏定义_DEBUG来确定当前的<em>版本</em>。另一个为正式<em>版本</em>,程序出错只是进行简单的错误处理,编译器会优化代码,以提高性能。release代码更小,执行更快,编译更严格,更慢,当然就没有了调试信息。debug跟release在初始化变量时所做的操作是不同
debug版本和release版本
运行代码 #include&lt;iostream&gt; using namespace std; static void prindAddress(int a, int b, int c){ cout&lt;&lt;"a"&lt;&lt; a &lt;&lt;" "...
C#控件生成Release版本的dll,怎么做?
看到一篇技术文章,叙述道:在开发环境下建一个windows控件,程序写完后,选择<em>生成</em>一个<em>Release</em>的<em>版本</em>。rn<em>问题</em>:C#控件<em>生成</em><em>Release</em>的<em>版本</em>的dll,怎么做?要详细步骤。
QT 生成Release 版本 路径修改
默认新建的QTCreater程序文件夹里只有***-Debug文件夹,虽然里面也有release,但是文件夹是空的。如果需要<em>生成</em>release<em>版本</em>,需要按照上面的步骤设置下,其中untitle5是当前需要构建的程序名。后期如果调整,可以直接在左下角,有个电脑图标处切换。 ...
如何生成debug,和release版本的程序
-
引用第三方控件生成Release版本时报错
我用第三方控件编写程序,当我<em>Release</em>发给没有装vs2005的人时,报错,可能是因为没有第三方控件的引用,求各位高手帮忙解决!
问下2010中文版怎么生成Release版本?
使用的是VS2010旗舰版,但是点重新<em>生成</em>没用,连.exe都找不到,谁知道啊!
Nois 12.0如何生成release版本
选择项目文件,右键properties-》Nios II Application properties(不是Nios II Application Paths)-》Debug Level选为off
Eclipse生成release版本怎么设置
出来咋到rnEclipse默认<em>生成</em>程序的DEBUG<em>版本</em>,请问<em>生成</em>程序的release<em>版本</em>怎么设置?
Eclipse编译生成release版本apk
<em>问题</em>背景:今天突然收到邮件说集成到系统的apk是debug<em>版本</em>,没办法进行CTS,需要修改到release<em>版本</em>的apk。 解决办法:一直以来并不知道编译<em>生成</em>的apk是区分debug和release<em>版本</em>,所以百了一下区别和<em>生成</em>的方法,百度知道的方法:点击Run->RunConfiguration->build Configuration。我并没有找到build Configuration,后来一位
怎么生成release版本的应用程序呢?
&当已经有了release<em>版本</em>rn可不可以再<em>生成</em>debug版的呢?
Release/Debug版本生成的应用的不同?
<em>Release</em>/Debug<em>版本</em><em>生成</em>的应用的有什么不同?rnrn为什么有些程序在<em>Release</em><em>版本</em>下可以通过,而在Debug<em>版本</em>下不可以呢?
在linux下,如何生成 debug 和 release 版本的代码?
在 windows 下 ,用 vs 可以很容易<em>生成</em> debug 和 release <em>版本</em>的代码?rnrn在linux 下,如何做呢? 谢谢
VC6.0怎么生成Release版本的程序
方法: 工程--设置,将Setting for后面的选项改为Win32 <em>Release</em>,然后重新编译。 上述设置完成后,可能仍然没有<em>生成</em><em>Release</em>,而且打开设置时,仍然是Win32 Debug,这时,在VC6.0的工具栏上右击,选择Build,同时去掉Build MiniBar,这时会出现debug的快捷工具栏,在工具栏上选择Win32 <em>Release</em>,然后重新编译即可。...
release版本如何生成错误行号
在release<em>版本</em>中如何记录错误的行号.Exception.StackTrace在release<em>版本</em>中没有行号。
MFC生成脱机版本时的问题
在MFC下编程OpenGL时为什么<em>生成</em><em>Release</em><em>版本</em>时出现两个错误:rnerror LNK2001: unresolved external symbol _auxDIBImageLoadA@4rn<em>Release</em>/simple7.exe : fatal error LNK1120: 1 unresolved externalsrn但是<em>生成</em>Debug的时候就正常了啊?
有关Debug版本Release版本问题
请问如何<em>生成</em><em>Release</em><em>版本</em>。rn我在Build->Setting里面看到了有两个:Debug 和 <em>Release</em>rn在Build->set active ...里面选Debug的时候<em>生成</em>了Debug,但选<em>Release</em>的时候报错:rnCannot Open Precompiled Head file:'<em>Release</em>/My project name.pch':No such file or derectory.rn请问这是问什么啊?rn
关于release版本和Debug 版本问题 终结
==============================================rn这 release 和 debug 2个<em>版本</em>的代码出现的<em>问题</em>rn我个人觉得有必要整理一下,更好的帮助朋友们rn以下内容有 以前朋友的回帖,也有网上找到的rn还有一少部分我个人的经验。rn希望大家不要水掉这个帖子,把自己的经验多分享rn多添加一些,谢谢。rn==============================================rn这个可能更全面:调试<em>Release</em><em>版本</em>应用程序 rnrn引言rn如果在您的开发过程中遇到了常见的错误,或许您的<em>Release</em><em>版本</em>不能正常运行而Debug<em>版本</em>运行无误,那么我推荐您阅读本文:因为并非如您想象的那样,<em>Release</em><em>版本</em>可以保证您的应用程序可以象Debug<em>版本</em>一样运行。rnrn如果您在开发阶段完成之后或者在开发进行一段时间之内从来没有进行过<em>Release</em><em>版本</em>测试,然而当您测试的时候却发现<em>问题</em>,那么请看我们的调试规则1:rnrn规则1: 经常性对开发软件进行Debug和<em>Release</em><em>版本</em>的常规测试.rnrn测试<em>Release</em><em>版本</em>的时间间隔越长,排除<em>问题</em>的难度越大,至少对<em>Release</em><em>版本</em>进行每周1次的测试,可以使您在紧凑的开发周期内节省潜在的排故时间.rnrn不要随意删除<em>Release</em><em>版本</em>需要的代码rn这点看起来似乎再明显不过,但却是开发人员无意中经常犯的错误,原因在于编译器编译<em>Release</em><em>版本</em>时候会主动排除在代码中存在的宏,例如ASSERT和TRACE在<em>Release</em><em>版本</em>会自动排除,这样导致的<em>问题</em>是您在这些宏当中运行的代码也被随之删除,这是非常危险的事情J,例如:rnrn ASSERT(m_ImageList.Create(MAKEINTRESOURCE(IDB_IMAGES), 16, 1, RGB(255,255,255)));rnrn这样的代码在Debug模式不会出错,图像列表也自动创建了,然而在<em>Release</em><em>版本</em>呢?后继使用m_ImageList对象只会造成程序的Crash!,因此ASSERT宏中尽量使用逻辑运算符作为验证。rnrn规则 2: 不要将代码放置在仅在某种编译选项中执行的地方,对于使用_DEBUG等编译选项宏内部的代码必须不影响整个程序的使用.rnrn规则 3: 不要使用规则2作为评判标准来删除ASSERT宏,ASSERT宏是个有用的工具,但容易使用错误.rnrn使Debug编译模式接近<em>Release</em>模式rn如果您的<em>Release</em><em>版本</em>存在的<em>问题</em>是由代码被编译器自动排除造成的,那么通过这个方法您的<em>问题</em>可能会重现.rnrn一些<em>问题</em>的产生可能是由于不同编译选项之间预定义符号造成的,因此您可以更改编译模式下的预定义符号,从而使您的Debug模式接近<em>Release</em>模式,观察错误是否产生,更改编译预定义符号方法如下:rnrnAlt-F7打开项目设置,在C++/C 页面,选择 "General "类别,更改 "_DEBUG "符号为 "NDEBUG ". rn在C++/C 页面, 选择 "Preprocessor "类别,添加预定义符号 "_DEBUG "到 "Undefined Symbols "栏. rn使用 "Rebuild All "重新编译rn如果通过上面设置,您在<em>Release</em>编译模式下面的<em>问题</em>在Debug模式下重现,那么请您依据以下步骤对您的代码进行修改: rnrn查找ASSERT排除其中的所有重要执行语句,或者将ASSERT修改为VERIFY. rn检查 "#ifdef _DEBUG " 内所有代码,排除<em>Release</em>模式使用的代码. rn查找TRACE 排除其中的所有重要执行语句. TRACE和ASSERT一样,仅在Debug模式下编译.rn如果通过上面修改更正了您在Debug模式下的<em>问题</em>,那么您可以重新编译<em>Release</em>模式,非常有可能您可以解决先前存在的<em>问题</em>!.rnrn错误的假定造成编译模式错误rn您是否经常性的假定您的变量或者对象被初试化成某个指定的值(可能0)?您是否假定你所有关联到的资源在应用程序中都存在?这些也是Debug和<em>Release</em>模式下不同<em>问题</em>产生的原因. rnrn规则 4: 除非您在代码中对变量进行初始化,否则不能作出如上假定. 包括全局变量,自动变量,申请对象和new对象.rnrn这种情况还常常发生在内存顺序的<em>问题</em>,记得原来使用结构体的时候为了使用方便,比较两个结构体对象使用memcmp,在Debug<em>版本</em>工作正常,而<em>Release</em><em>版本</em>计算出错误的解,看来的确不能进行错误的假定!rnrn规则 5: 确保删除资源的所有引用都被删除,例如resource.h中的定义.rnrn软件开发中,不同编译<em>版本</em>对变量和内存的初始化是不同的. 如果您假定变量初始化为0,那么在Win9x系统的<em>Release</em>模式下,会出现异常现象。因此对所有变量,内存显式清0是较为安全的做法. rnrn如果您引用了已经被删除的资源,您的Debug<em>版本</em>可以正常工作,但是<em>Release</em><em>版本</em>可能会crash.rnrn您是否相信编译器? rn编译器警告级别和编译噪音有着相当大的关系.rnrn通过提高编译器警告级别可增加程序隐藏<em>问题</em>暴露的机会.通常设置警告级别在 "Level 3 "或者 "Level 4 ".编译并解决所有警告,这是发布<em>Release</em><em>版本</em>应用程序的一个很好的建议.这能暴露会使您的应用程序出现<em>问题</em>的很多初始化<em>问题</em>和其它潜在的错误. rnrn规则 6: 开始项目之前先将编译警告级别设置在 "Level 3 " 或者 "Level 4 " ,登记代码之前确保消灭所有警告!.rnrn总结报告rn编译模式下的调试rn曾经不止一次的听到一些VC开发者说<em>Release</em>模式下面不能进行调试,幸运的是:通过相应设置,可以在<em>Release</em>模式进行调试,因此那只不过是一个以讹传讹的荒谬说法而已. rnrn规则 7: 当前面所有的方法都无效的时候,在<em>Release</em>模式下面进行调试.rnrn<em>Release</em>模式可以进行调试,第一步是打开符号表: rnrnAlt-F7打开项目设置,在C++/C 页面,选择 "General "类,修改Debug Info setting 为 "Program Database ". rn在 "Link " 页面,选择 "Generate Debug Info ". rn"Rebuild All "rn这些设置将允许您在<em>Release</em>模式下保留符号表,您也可以同时考虑以下设置: rnrn调试<em>Release</em><em>版本</em>应用程序,您可以关闭优化选项. rn如果在<em>Release</em>模式下面不能设置断点,添加指令 "__asm int 3 " 可以是您的应用程序在改行停止(确定在发布应用程序时候排除这些代码).rn在<em>Release</em>模式进行调试的几个限制. rnrn最大的<em>问题</em>在于您不能跟踪到MFC函数内部,原因在于<em>Release</em><em>版本</em>的MFC动态链接库不包含调试信息和符号表. rn同上,想要调试调用的dll,您必须给它们全部加上调试信息和符号表.rn编译器<em>生成</em>了错误的代码?rn或许有的时候您会发现VC++编译器<em>生成</em>了’<em>问题</em>代码’,然而坦率的讲,人们通常抱怨的太早.您可以在<em>Release</em>模式下面关闭优化选项来进行测试. rnrn如果这个操作解决了您的<em>问题</em>,或许您的编码习惯存在<em>问题</em>. 信不信由你, 极其可能在您的编码中存在模棱两可的求解或者看起来似乎正确,某些条件下也是正确的情况. 举个例子,下面的代码在Debug模式似乎一切’正常’,而在<em>Release</em>模式下面却会出错! rnrn#include rnrnint* func1()rnrnint retval = 5;rnreturn &retval;rnrnrnint main(int argc, char* argv[])rnrnprintf( "%d\n ", *func1());rnreturn 0;rnrn我相信大多数程序员尤其是初学者容易遇到此类情况的.rnrn规则 8: 如果关闭<em>Release</em>模式的优化选项可以使您的应用程序运行正常,而打开优化选项则出现<em>问题</em>的化,原因多半在于您的不良编码习惯造成的. 这意味着必须仔细检查您的代码,清理出那些错误的假设,悬空指针等等. 等同的这告诉您,在Debug模式和关闭优化选项的<em>Release</em>模式下您的应用程序工作正常全是因为系统隐含的运气,您必须着手更正存在隐患的代码,否则在日后可能会造成巨大的损失.rnrn规则 9: 如果您已经彻底检查了您的代码,并且没有发现<em>问题</em>,那么您最好逐个打开优化选项将产生错误的原因限制在某个范围之内. rnrnBTW- 以上<em>问题</em>代码由C++编译器自动检出. 如果您已经遵循 规则 6 您或许在前面环节中已经解决了这些<em>问题</em>.rnrn凭我的开发经验,编译器极少会产生错误的代码(当然要注意接口程序边界对齐的<em>问题</em>).通常在使用模板类时候VC6编译器或许会产生断言ASSERT错误,这种情况您只需更新补丁即可解决.rnrn最后的思考rn在日常编码中只需稍微增加一点严格的检测,便能有效的避免新的Debug -v- <em>Release</em>模式<em>问题</em>的产生,以下是我的一些经验.rnrn1. 取出(check out)需要修改的代码.rnrn2. 修改代码,排除所有警告,编译Debug和<em>Release</em><em>版本</em>. rnrn3. 详细测试新代码,即单步调试新代码段之后进入工作代码,确保代码无误. rnrn4. 更正所有<em>问题</em>. rnrn5. 确认无误之后将新代码登记入库(check in). rnrn6. 对登记入库的代码进行全新的编译,确保新登记代码与其它代码融合. rnrn7. 重新详细测试代码. rnrn8. 更正新<em>问题</em>(或许可以发现登记入库代码存在的<em>问题</em>)rnrn严格按照以上步骤,您在设计开发过程中即可解决大量<em>问题</em>,避免在最后发布应用程序时候产生新的难以定位的<em>问题</em>. rnrn后记rn本文是在我的开发历程中遇到<em>Release</em><em>版本</em>应用程序发布,产生错误的时候苦苦求索得到的一些经验,原文来自于codeproject,经过本人润色,改写成为适合国内开发者的文章,希望能对大家有用,谢谢! rnrn=========================rnWin7 系统,也许是用了 Visual Studio 2010 写了个网络程序。 结果Debug模式工作正常,而<em>Release</em>模式出现了<em>问题</em>。rnrn在<em>Release</em>模式下,无法连接服务端。rnrn经过几番检查,最后发现, Debug模式下,Win7 的防火墙是不管你的,而在<em>Release</em>模式下, Win7 自带的防火墙是不让访问的rnrn结果造成了这个<em>问题</em>。希望大家多给出经验,。rnrn在这里谢谢大家了。
[讨论]RELEASE版本和DEBUG版本问题。???
[原<em>问题</em>]:rn我在某个DLL中写了个函数:Init(CDatabase* pdb,...)做初始化工作(主要读取一些数据。。。)主要用法是:rnCRecordset rs(pdb); //RELEASE<em>版本</em>出错的地方!,说内存只读什么的。。。rnCString strsql="select .... from ......";rnrs.Open(...);rn....rn我在EXE工程中,要调用刚才的DLL中的Init(CDatabase* pdb,...)rnrn我调用的时候是声明一个CDatabase m_db;rn然后做好数据源连接,Init(&m_db,...);rnrn我之所以这样说(DLL和EXE工程)是因为,我如果在一个EXE工程里的话,不管RELEASE<em>版本</em>和DEBUG<em>版本</em>都没有<em>问题</em>!!!rnrn最后一句话说再说一遍(我觉得我说的有点<em>问题</em>,怕你们误解)rnrn我尝试了在同一个工程里(EXE工程),做完上面所有的步骤。包括数据源连接和CRecordset构建和访问数据库,总之,我在一个EXE工程里面用同样步骤的做法,RELEASE和DEBUG<em>版本</em>都没有<em>问题</em>。rnrn<em>问题</em>得到部分解决,但不晓得原因,欢迎大家踊跃讨论!!!rn[原<em>问题</em>的具体讨论参见]:rnhttp://expert.csdn.net/Expert/topic/2272/2272010.xml?temp=.1345484
关于release版本和Debug 版本问题
我写了个程序,为什么在Debug<em>版本</em>下没<em>问题</em>,在release<em>版本</em>下会出现<em>问题</em>。请问应该是什么<em>问题</em>啊???
VC6.0编译Debug版本Release版本问题
想把VC6.0编译出来的程序用在没装VC6.0的电脑上,然后baidu看到大家说要把Debug<em>版本</em>改威<em>Release</em><em>版本</em>,然后编译就可以了,但是我Debug<em>版本</em>编译没<em>问题</em>,设置成<em>Release</em><em>版本</em>就出现一个错误:rn\Program Files\Microsoft Visual Studio\MyProjects\tese1\tese1Dlg.cpp(64) : fatal error C1001: INTERNAL COMPILER ERRORrn (compiler file 'E:\8168\vc98\p2\src\P2\main.c', line 494)rn Please choose the Technical Support command on the Visual C++rn Help menu, or open the Technical Support help file for more informationrnError executing cl.exe.rn这是我什么都没添加,就新建了一个<em>mfc</em>程序用release<em>版本</em>编译出现得<em>问题</em>,请问怎样修改这个错误???
Debug版本调用Release版本问题
我自己编写的exe程序为Debug<em>版本</em>,别人写的动态库为<em>Release</em><em>版本</em>。别人的动态库类型为MFC扩展动态库。当我用debug<em>版本</em>调用<em>Release</em><em>版本</em>时,经常出现内存访问错误,光标停留在7C92120E int 3 这一行rn[img=c:\\11.jpg][/img]rn[img=C:\\2.jpg][/img]rn请问各位网友,这是怎么回事呢?如果解决该<em>问题</em>rn还有我不想使用<em>Release</em>调试,因为在<em>Release</em>下,BChecker就不能检测出内存泄漏来了?rn
关于release和debug版本问题
我在程序中使用了一个CArray arry数据结构,在debug<em>版本</em>下运行正常,但改为release<em>版本</em>后一执行到arry.Add(...)的语句就会出错,这是什么原因?请教了!
关于debug和release版本问题
请问debug<em>版本</em>和release<em>版本</em>有什么区别,怎样控制<em>生成</em>debug<em>版本</em>或者是release<em>版本</em>???谢谢!
关于Release版本发布的问题,
我使用的是vs2008 sp1<em>版本</em> 用<em>Release</em>编译程序 编译的参数的md 断点符号也关了,不知道为什么还是要依赖rn'Microsoft.VC90.DebugCRT' rn[code=XML]rn rn rn rn rn rn rn rn rn rn rn[/code]rn这个<em>问题</em>困扰了我很多很多天,谢谢大家了!
qtcpsocket 在release版本中的问题
这是连接信号代码rn connect(tcpClient,SIGNAL(connected()),this,SLOT(haveConnected()));rn这是连接服务器代码rntcpClient->connectToHost(SERVERIP,SERVERPORT,QIODevice::ReadWrite,QAbstractSocket::AnyIPProtocol);rnrn在debug<em>版本</em>中,可以正常触发haveConnected(),可是在release<em>版本</em>中,却怎么也触发不了,rnrn用qDebug()checkConnectArgs("connected","haveConnected");打印出个true,表示信息槽已经连接,那就是连接服务器没有成功,而在连胜服务器代码下边再加上等待连接,就可以连接,也可以触发rn if(tcpClient->waitForConnected(5000))rn rn isconnected=true;rn rnrn可这样的话,界面就要中断了rnrn这该 怎么办?rn
关于发布release版本问题
我写的程序编译了一个release<em>版本</em>的,在release文件夹中直接点击.exe可以运行rn可是我把那个可执行文件复制到其他文件夹然后把关联的库放到一起点击就会提示:rn无法定位程序输入点 *** 于动态库。rn我都已经把那些库都放到这个文件夹了,我感觉是程序在release时调用了其他程序带的Qt库,可是我如何能知道Qt程序release时到底用的是哪里的库呢
SNMP程序 release版本问题
我的程序很奇怪,在VC编译下,debug<em>版本</em>没有<em>问题</em>。但是release<em>版本</em>总是在第二次接受数据的时候,发生崩溃,不知道为什么?rnrnCSnmp::CSnmp()rnrn nMajorVersion=new unsigned long;rn nMinorVersion=new unsigned long;rn nLevel=new unsigned long;rn nTranslateMode=new unsigned long;rn nRetransmitMode=new unsigned long;rn if(SnmpStartup(nMajorVersion,nMinorVersion,nLevel,nTranslateMode,rn nRetransmitMode)!=SNMPAPI_SUCCESS)rn rn AfxMessageBox("initilization failure");rn rn if(SnmpSetTranslateMode(SNMPAPI_UNTRANSLATED_V2) != SNMPAPI_SUCCESS)rn AfxMessageBox("SetTranslateMode failure");rn if(SnmpSetRetransmitMode(SNMPAPI_ON) != SNMPAPI_SUCCESS)rn AfxMessageBox("SetRetransmitMode failure");rn sessionID=FALSE;rnrnrnCSnmp::~CSnmp()rnrn if(nRetransmitMode!=NULL)rn delete nRetransmitMode;rn if(nTranslateMode!=NULL)rn delete nTranslateMode;rn if(nLevel!=NULL)rn delete nLevel;rn if(nMinorVersion!=NULL)rn delete nMinorVersion;rn if(nMajorVersion!=NULL)rn delete nMajorVersion;rn if(session!=NULL)rn SnmpClose(session);rn SnmpCleanup();rnrnrnCSnmp::CreateSession(HWND hWnd,UINT wMsg)rnrn if((session=SnmpCreateSession(hWnd,wMsg,NULL,NULL))==SNMPAPI_FAILURE)rn AfxMessageBox("CreateSession failure");rnrnrnCSnmp::CreateVbl(LPCSTR name,smiLPVALUE pvalue)rnrn smiOID pOid;rn if(SnmpStrToOid(name,&pOid)==SNMPAPI_FAILURE)rn rn AfxMessageBox("CreateVbl failure");rn rn m_hvbl=SnmpCreateVbl(session,&pOid,pvalue);rn if(m_hvbl==SNMPAPI_FAILURE)rn rn AfxMessageBox("CreateVbl failure");rn rn if(SnmpFreeDescriptor(SNMP_SYNTAX_OID,(smiLPOPAQUE)&pOid) != SNMPAPI_SUCCESS) rn AfxMessageBox("freedescriptor failure"); rnrnrnCSnmp::SetVbl(LPCSTR name)rnrn smiOID pOid;rn if(SnmpStrToOid(name,&pOid)==SNMPAPI_FAILURE)rn AfxMessageBox("SetVbl failure--oid");rn //dwErr=SnmpGetLastError(session);rn rn if(SnmpSetVb(m_hvbl,0,&pOid,NULL)==SNMPAPI_FAILURE)rn AfxMessageBox("SetVbl failure");rn //dwErr=SnmpGetLastError(session);rn rn if(SnmpFreeDescriptor(SNMP_SYNTAX_OID,(smiLPOPAQUE)&pOid) != SNMPAPI_SUCCESS) rn AfxMessageBox("freedescriptor failure"); rnrnrnrnCSnmp::CreatePdu(smiINT PDU_type,smiINT32 request_id,rn smiINT error_status,smiINT error_index)rnrn m_hpdu=SnmpCreatePdu(session,PDU_type,request_id,error_status,error_index,m_hvbl);rn if(m_hpdu==SNMPAPI_FAILURE)rn rn AfxMessageBox("CreatePdu failure");rn rn else if (error_status > 0)rn rn AfxMessageBox("Error: error_status=%d, error_index=%d\n",error_status, error_index);rn rnrnrnCSnmp::Send(LPCSTR address,const char * community)rnrn // oldMemState.Checkpoint();rn HSNMP_ENTITY hAgent;rn if((hAgent=SnmpStrToEntity(session,address))==SNMPAPI_FAILURE)rn AfxMessageBox("SendMsg failure--entity");rn smiOCTETS contextName;rn contextName.ptr=(unsigned char *)community;rn contextName.len=lstrlen(community);rn HSNMP_CONTEXT hView;rn if((hView=SnmpStrToContext(session,&contextName))==SNMPAPI_FAILURE)rn AfxMessageBox("SendMsg failure--context");rn if(SnmpSendMsg(session,NULL,hAgent,hView,m_hpdu)==SNMPAPI_FAILURE)rn rn AfxMessageBox("SendMsg failure");rn //dwErr=SnmpGetLastError(session);rn CString str;rn str.Format("%d",SnmpGetLastError(session));rn AfxMessageBox(str);rn rn SnmpFreeDescriptor(SNMP_SYNTAX_OCTETS,(smiLPOPAQUE)&contextName);rn if(m_hpdu!=NULL)rn SnmpFreePdu(m_hpdu);rn if(m_hvbl!=NULL)rn SnmpFreeVbl(m_hvbl);rn if(hAgent!=NULL)rn SnmpFreeEntity(hAgent);rn if(hView!=NULL)rn SnmpFreeContext(hView);rnrnrnrnCSnmp::Receive(LPTSTR *name,smiLPVALUE *value)rn rn HSNMP_ENTITY srcEntity; rn HSNMP_ENTITY dstEntity; rn HSNMP_CONTEXT context;rn HSNMP_PDU pPdu;rn smiLPINT PDU_type=new smiINT; rn smiLPINT32 request_id=new smiINT32;rn smiLPINT error_status=new smiINT;rn smiLPINT error_index=new smiINT;rn HSNMP_VBL varbindlist;rn smiLPOID pOid = new smiOID;rn if(SnmpRecvMsg(session,&srcEntity,&dstEntity,&context,&pPdu)!=SNMPAPI_SUCCESS)rn AfxMessageBox("receive failure--recv");rn if(SnmpGetPduData(pPdu,PDU_type,request_id,error_status,error_index,&varbindlist)!=SNMPAPI_SUCCESS)rn rn AfxMessageBox("receive failure--getpdu");rn CString str;rn str.Format("%d",SnmpGetLastError(NULL));rn AfxMessageBox(str);rn rn if((nCount=SnmpCountVbl(varbindlist))==SNMPAPI_FAILURE)rn AfxMessageBox("Count Vbl Error");rn for(int i=1;i,SnmpGetLastError(NULL));rn AfxMessageBox(str);rn rn SnmpFreeEntity(srcEntity);rn SnmpFreeEntity(dstEntity);rn SnmpFreeContext(context);rn SnmpFreePdu(pPdu);rn SnmpFreeVbl(varbindlist);rn SnmpFreeDescriptor(SNMP_SYNTAX_OID,(smiLPOPAQUE)&pOid);rn delete PDU_type; rn delete request_id;rn delete error_status;rn delete error_index;rnrnrn
很头疼的Release版本问题
我遇到一个很头疼的<em>问题</em>rnrntypedef enum TYPErnrn ENUM_LESS,rn ENUM_LARGER,rn ENUM_ENQUErnTYPE;rnrntypedef std::string rsString;rnrnstatic TYPE GetType( rsString value )rnrn if( "=" == value )rn return ENUM_ENQUE;rn *** if( ">" == value) rn return ENUM_LARGER;rn if( "" == temp) rn return ENUM_LARGER;rn if( " == temp )rn return ENUM_LESS;rnrnrn搞了好久找不到原因, 不知道哪位朋友知道答案给我说哈,还有就是在release下改变优化选项的话,也是可以的。rn
Release版本程序的奇怪问题
在学习OpenGL~~写了一个小程序~~编译出<em>Release</em><em>版本</em>后直接在VS2005下能全部正确显示~~rnrn但将把<em>Release</em>程序拿出来独立运行之后~~就会显示不正确,不是少渲染了几个面就是运动路径出错。求教怎么解决这个<em>问题</em>???
release版本ado的使用问题
数据库连接没有<em>问题</em>,只是在执行存储过程crash了,debug下是可以执行成功的
release和debug版本的消息发送问题
<em>问题</em>是这样的。我想要实现在程序的不同窗口之间发送消息。我通过SendMessage(hWnd,WM_XXX,0,0);rn其中hWnd是目标窗口的句柄,通过目标窗口中的this->GetSafeHand()得到的,预先赋给想要发送消息的窗口。rnrn现在在debug<em>版本</em>中没有一点<em>问题</em>,消息能正确发送和接收。但在release<em>版本</em>中却一到调用SendMessage这个函数时,程序就没有响应了。<em>问题</em>应该在这个函数上,因为当我屏蔽调改消息的响应函数的函数体,程序还是会没有响应,当屏蔽掉SendMessage时,程序就运行正常了。rnrn大家是否也曾遇到过这个<em>问题</em>?望大家帮帮忙,给我指点指点,谢谢!
关于程序release版本问题
现在的程序是用vs2005作为开发环境的(winform),release<em>版本</em>下如果通过编译器来启动,程序没<em>问题</em>;可如果直接点击<em>生成</em>的exe文件,release<em>版本</em>的就会出<em>问题</em>,点击几下窗体就突然没了;可用debug<em>版本</em>的直接运行也没<em>问题</em>,如何处理这种情况啊?谢谢各位了.
Release版本出现的问题
编一个工程的<em>Release</em><em>版本</em>rnrn工程属性改成:在共享 DLL 中使用 MFC,不会有<em>问题</em>!rnrn但改成:在静态库中使用 MFCrn就会报错:rn[code=C/C++]正在链接...rnLINK : warning LNK4075: 忽略“/INCREMENTAL”(由于“/OPT:ICF”规范)rnnafxcw.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)" (??2@YAPAXI@Z) 已经在 libcpmt.lib(newop.obj) 中定义rnnafxcw.lib(afxmem.obj) : error LNK2005: "void __cdecl operator delete(void *)" (??3@YAXPAX@Z) 已经在 LIBCMT.lib(delete.obj) 中定义rn<em>Release</em>/SQL Tools.exe : fatal error LNK1169: 找到一个或多个多重定义的符号[/code]rnrn我必须改成“在静态库中使用 MFC”不然在别的机子运行不起来rn所以,请问怎么解决这个<em>问题</em>???
VS2008 Release版本 数据获取问题
<em>问题</em>是这样的:rn程序代码:.h文件rnCString lv_data;rnrncpp文件:rn使用了一个EDIT控件rn实现了这样一个功能:rnGetDlgItem(IDC_EDIT1)->GetWindowTextW(lv_data);rnrn<em>问题</em>如下:rn在debug<em>版本</em>中,lv_data的值是正确的。但是在<em>Release</em><em>版本</em>中,lv_data变成了“错误指针”请问这是怎么回事。
VC6的release版本问题2
上一个<em>问题</em>我没说详细:rn我软件里面对MATLAB的环境设置:rnrnVC中调用Matlab引擎的设置:rn 1、ToolsOptionsDirectoriesInclude Files中添加:matlab安装目录\extern\include;rn ToolsOptionsDirectoriesLibrary Files中添加:matlab安装目录\EXTERN\LIB\WIN32\MICROSOFT\MSVC70;和<em>版本</em>有关rn 2、ProjectSettingsLinkObject/Library modules中添加:libeng.lib libmx.librnrn编译出来的release<em>版本</em>exe在启动的时候会查找 “libeng.dll”,如果没找到就启动不了> <.rn现在我想知道怎么设置VC6让这个release <em>版本</em>exe在启动的时候不查找这些dll只在用户用rn到MATLAB的时候去找?如果找不到就报错但是不退出软件... rnrn试了下动态链接这个“libeng.dll”,发现如果不去掉环境设置里面的第二步,那么软件还是在用静态链接,去掉第二步后就提示所有和MATLAB引擎相关的命令 是unresolved externals:rnLinking...rnMainFrm.obj : error LNK2001: unresolved external symbol _engOutputBufferrnMainFrm.obj : error LNK2001: unresolved external symbol _engEvalStringrnMainFrm.obj : error LNK2001: unresolved external symbol _engClosernMainFrm.obj : error LNK2001: unresolved external symbol _engOpenrnMainFrm.obj : error LNK2001: unresolved external symbol _engSetVisiblernDebug/GETdVG_1.exe : fatal error LNK1120: 5 unresolved externalsrnrn总结一下,就是程序不变,还是调用MATLAB引擎,只是将启动程序时载入libeng.dll改成用户触发时载入。rn3x~~
关于Release版本出错的问题....
DEBUG下没有任何<em>问题</em>,在<em>Release</em><em>版本</em>下调试状态下执行也没有<em>问题</em>,但到了<em>Release</em><em>版本</em>下直接运行,关闭的时侯出现一个异常,为XXX指令引用了内存0x00000010,该内存不能为"written",有谁知道怎么解决的,不吝赐教...........
关于Debug和Release版本问题
我的程序在Debug下运行没错,在<em>Release</em><em>版本</em>下运行就有错误,后来发现原因出在我调用了一个我自己写的DLL文件,如果我不调用该DLL文件运行都不会出现<em>问题</em>,每当在运行时要调用该DLL文件的时就会出错(只在<em>Release</em><em>版本</em>下才会).真不知道什么原因????请高手指教
安装程序在Release版本下的奇怪问题
最近写一个winform程序。需要控制只有一个实例运行,于是简单的使用Mutex来处理。rn代码无非下面几行:rn[STAThread]rnstatic void Main() rnrn bool isFirst = false;rn System.Threading.Mutex mutex = new System.Threading.Mutex(false,"CSS_MUTEX");rn isFirst = mutex.WaitOne(0,false);rn if(isFirst) rn rn Form loginForm = new LoginForm();rn Application.Run(loginForm);rn rn else rn rn //rn rnrnrn调试通过后,本以为ok了,于是用安装向导<em>生成</em>了一个该程序的安装文件。并安装该程序在我的机器上,当然是用<em>Release</em><em>版本</em>来<em>生成</em>的。安装后发现无法限制只运行一个实例。很奇怪的是在debug<em>版本</em>没有这个<em>问题</em>出现。rn不知谁有相关经验指教、指教, 谢谢!!rnvs2003 windowsXP .net1.1rnrnrn
图片上传添加水印简单类实现下载
图片上传添加水印简单类实现 有以下方法 FileUploadImg.SaveAs(webFilePath); // 使用 SaveAs 方法保存文件 UpLoadImgs.AddWater(webFilePath, webFilePath_sy, "www.23723.Cn"); // 使用 AddWater 方法保存文件 UpLoadImgs.AddWaterPic(webFilePath, webFilePath_syp, webFilePath_sypf); // 使用 相关下载链接:[url=//download.csdn.net/download/e8love/2377924?utm_source=bbsseo]//download.csdn.net/download/e8love/2377924?utm_source=bbsseo[/url]
ADSL猫的工作原理下载
ADSL(Asymmetric Digital Subscriber Line)的中文名称即非对称数字用户专线。 相关下载链接:[url=//download.csdn.net/download/sunykof/2890079?utm_source=bbsseo]//download.csdn.net/download/sunykof/2890079?utm_source=bbsseo[/url]
ACM集训资料下载
ACM集训课程,有很多实例及详细代码,都是POJ上的! 相关下载链接:[url=//download.csdn.net/download/yongrendijie/4198721?utm_source=bbsseo]//download.csdn.net/download/yongrendijie/4198721?utm_source=bbsseo[/url]
相关热词 c# 标准差 计算 c#siki第五季 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池
我们是很有底线的