- 博客(15)
- 资源 (3)
- 收藏
- 关注
原创 C++开发的应用程序崩溃时生成Dump文件分析(附Demo)
Dump 文件是进程的内存镜像 , 可以把程序的执行状态通过调试器保存到dump文件中 ; Dump 文件是用来给驱动程序编写人员调试驱动程序用的 , 这种文件必须用专用工具软件打开 , 比如使用 WinDbg , VisualStudio打开; 当我们的程序发布出去之后 , 在客户机上是无法跟踪自己代码的 BUG 的 , 所以 Dump 文件对于我们来说特别有用 ; 我们可以通过 .dmp 文件把出现 BUG 的情况再现 , 然后再现客户环境 (包括堆栈调用等情况) , 设置源码调试路径 , 可以
2022-06-30 19:40:06
4435
转载 是否忘记了向源中添加“#include “StdAfx.h“”?
阅读目录错误分析 解决方式 概念错误分析此错误发生的原因是编译器在寻找预编译指示头文件(默认#include "stdafx.h")时,文件未预期结束。没有找到预编译指示信息的头文件"stdafx.h"。回到目录解决方式方法一在解决方案资源管理器中,右击相应的.cpp文件,点击“属性” 在左侧配置属性中,点开“C/C++”,单击“预编译头” 更改右侧第一行的“创建/使用预编译头”,把选项从“使用预编译头(/Yu)”改成“不使用预编译头”方法二(不推荐)1)在解决方案右
2021-11-29 20:01:05
4009
原创 完美解决未能正确加载“Visual C++ Resource Editor Package”的错误提示
问题:在使用VS2010过程中,出现未能正确加载“Visual C++ Resource Editor Package”的错误提示,同时工程的资源文件不能打开,出现加载失败。原因初步分析:可能某个dll加载失败导致尝试解决步骤:下载DirectX Repair.exe工具,这是一个免安装的组件修复工具,检测你电脑是否有损坏或不良的".dll"文件和"C++ 20XXRedistributable Package" ,根据电脑系统选择合适的DirectX Repair.exe支持的系统,.
2020-11-19 12:24:28
1570
原创 完美解决VS2010应用程序Debug版本启动正常,Release无法正常启动0xc000007b
问题:使用VS2010 Debug编译运行时候正常启动,但是Release启动的时候,提示:执行可执行文件时提示:程序无法正常启动0xc000007b原因分析:可能dll缺少或者不匹配具体分析:使用Dependency Walker工具,打开应用程序,看应用程序用到的dll库Debug版本:Release版本:我们发现Release版本下MFC100U.DLL的CPU类型不一致,如下是具体的CPU类型:c:\windows\system32\MFC100UD.DLL X.
2020-11-19 12:17:51
2137
原创 “System.StackOverflowException”类型的未经处理的异常处理办法
“System.StackOverflowException”类型的未经处理的异常处理办法在项目中,遇到一个这样的问题:C#调用C++dll,编译正常,运行时候当调用到C++的时候,报错“System.StackOverflowException”类型的未经处理的异常打断点,检查出现在如下代码(C++接口报错):bool ImageProcess(string sImageName)...
2019-07-27 19:06:34
14318
原创 c++(vs)编译常用警告处理
环境: vs2008,vs2013,vs2015,vs2017具体警告如下:1 warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失打开出现warning的文件,然后在文件菜单:file->advanced save options,在弹出的选项中选择新的编码方式为:UNICODE codepage ...
2019-07-23 20:44:39
5674
原创 Redis源码的快速使用
1、Redis介绍Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。Redis 与其他 key - value 缓存产品有以下三个特点:(1) Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。(2) Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。...
2018-05-15 20:48:46
469
原创 进程控制
一、进程的概念 在UNIX 中,进程是正在执行的程序。它相当于Windows 环境内的任务这一概念。每个进程包括程序代码和数据。其中数据包含程序变量数据、外部数据和程序堆栈等。Linux 同样向程序员提供一些进程控制方面的系统调用,其中最重要的有以下几个: 1.fork()。它通过复制调用进程来建立新的进程,它是最基本的进程建立操作。 2.exec
2017-07-25 20:12:26
244
原创 Linux下osip2+eXosip2的编译及开发
Linux下osip2+eXosip2的编译及开发 1、安装包准备osip2:http://www.gnu.org/software/osip/eXosip2:http://savannah.nongnu.org/projects/exosip/我下载的版本分别是:libosip2-5.0.0.tar.gz,libexosip2-5.0.0.tar.gz 2、安装(
2017-06-22 16:14:16
3934
2
原创 DevExpress和Winform基本操作
1、创建消息框Winform: DialogResult ret = MessageBox.Show(this, "Already Exits The Project, do you want to recover it?", "Question", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
2017-05-18 13:56:40
640
原创 C#调试过程中如何将堆栈信息写入文件
在C#开发的程序过程中,经常遇到崩溃问题,而调试这些问题又非常的棘手,此文给出了调试过程中生成堆栈办法,为调试,特别是远程调试提供了方便。修改程序入口文件Program.cs,请参考如下代码:using System;using System.IO;using System.Collections.Generic;using System.Windows.Forms;u
2017-03-22 19:55:45
1371
转载 C#集成第三方控件devexpress 15.2安装说明
devexpress 15.2汉化破解版下载地址:http://www.3322.cc/soft/13884.html下载解压后,目录下有如下文件:1、安装运行 DevExpressUniversalTrialComplete-20151209.exe2、运行DevExpress.Patch7.0-by dimaster.rar破解3、导入注册表去除
2017-03-08 11:48:50
1340
转载 DevExpress添加右键菜单
第一步:从工具箱中将BarManager拉入窗体第二步:从工具箱中将PopupMenu拉入窗体,设置PopupMenu的Manager属性为barManager1。第三步:右击PopupMenu在弹出的菜单内选中Customize,然后再弹出的对话框中,点击Add,新建右键菜单就OK了。 双击菜单设置事件;第四步:在需要右击的控件上使用xxxx_Mouse
2017-03-08 11:30:45
2211
C++,动态调用dll,dll也是由c++实现,且实现了回调功能,即应用程序将函数传入到dll,由dll接口调用函数,以实现回调
2022-07-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人