草庐IT

EXE_BAD_INSTRUCTION

全部标签

c# - 从 C# 调用 C++ exe 函数

我正在尝试使用不同的C#应用程序来监视用C++编写的正在运行的应用程序。在我的C++代码中,我定义了一个API:_declspec(dllexport)//isthisevenpossiblewhencompilingan.exe?intgetSomething();有没有办法从C#代码中调用此函数?经典方法是否有效:[DllImport("myexe.exe",CharSet=CharSet.Auto)]publicstaticexternintgetSomething(); 最佳答案 是的,任何PE可执行文件都可以通过这种方式导

c++ - 为什么 std::bad_cast 被 boost::locale 抛出?

我试图了解如何使用boost::locale来比较忽略大小写和变体的字符串。我直接尝试了Boost文档中的代码:http://www.boost.org/doc/libs/1_51_0/libs/locale/doc/html/collation.htmlboost::locale::generatorgen;std::localevLocale=gen("");std::wstringa=L"Façade",b=L"facade";//Followingwillthrowbad_castbooleq=std::use_facet>(vLocale).compare(boost::lo

c++ - 自定义异常层次结构。来自 std::exception 和 std::bad_alloc 的可怕钻石

我在自己的异常层次结构中遇到继承问题。Exception类具有很好的功能(回溯、日志记录等),因此它是我处理任何异常的基类。正如我在许多网页中看到的那样,它继承自std::exception。此外,我正在使用一个单元测试框架来报告任何std::exception被意外抛出。但归根结底,这只是为了方便。然后,我有一个新的OutOfMemoryException类,它将由自定义new_handler抛出。该类继承自Exception,但也继承自std::bad_alloc以兼容现有代码。我猜这更重要,因为new将不再抛出std::bad_alloc。这里的问题很明显:因为std::bad_

c++ - Visual C++ 2010 拒绝在调试时显示 std::string 值。显示 <Bad Ptr>

我有一种奇怪的感觉,好像这是最近才出现的问题,并且发生在两台不同的计算机上。当我调试并尝试查看来自STL的std::string的值时,它显示为值。它说它的大小是15,容量是一些乱码。数组值本身都显示CXX0030:错误:无法计算表达式。这非常令人沮丧,如果我在字符串上调用c_str并将其分配给char*或在需要时使用监视表达式,我仍然可以在调试时访问字符串值,但它非常乏味并且让生活变得非常艰难连续3天调试复杂问题。其他STL容器的内容显示得很好。这发生在两台不同计算机上的多个项目上,我很确定我已经为该项目设置了所有调试选项。没有优化,肯定会生成调试信息。

c++ - 具有多个库和一个 exe 的 QtCreator 项目

正如我在上一个问题中所说,我正计划将Qt项目从VC++移植到QtCreator。该项目由4个子项目组成:其中3个是库,最后一个是exe。子项目是分层的,这意味着每一层都具有与其下层的编译和链接时间依赖性。文件组织如下:rootlib1lib2lib3main我在QtCreator中从头开始创建了每个子项目。每个文件夹都包含一个同名的pro文件(例如:lib1->lib1.pro)。使用这种方法,我已经构建了所有项目,除了最后一个必须链接可执行文件的项目。我遇到了链接器错误,我通过手动编辑pro文件并添加以下代码修复了这些错误:LIBS+=../path/lib1.a\../path/l

c++ - 错误 MSB6006 : "cmd.exe" exited with code 1 running QT application

我使用visualstdio2012命令提示符编译了QT5.0.1。当我创建控制台应用程序时,一切都很好并且可以正常工作,但是当我创建QT应用程序时,它会抛出此错误:Error1errorMSB6006:"cmd.exe"exitedwithcode1(已安装QTvisualstdioqt-vs-addin-1.2.0) 最佳答案 打开详细构建输出以查找您的确切问题,工具->选项->项目和解决方案->构建和运行->构建输出和构建日志详细信息。我的问题是错误地使用了“CONST”。(CleanandRebuild似乎可以暂时解决问题,

c++ - 如何对 .exe 附带的外部文件进行编码

因此,我使用visual2012创建了一个应用程序,用于加载图像和着色器(纯文本)。但实际上,我不希望人们打开图像和着色器然后乱搞。我怎样才能将所有这些外部文件压缩成一个或多个文件,但仍可由可执行文件读取? 最佳答案 这个问题很难得到权威性的回答,因为如果没有防篡改硬件,基本上不可能保护内容免受老练的黑客攻击。但是考虑到一个简单的威慑就足够了,那么embeddingyourcontentasresourcesintheexecutable怎么样??请注意,可以免费使用一些工具从.exe文件中提取资源。或者,您可以加密每个文件并在您的

c++ - 如何调试 std::bad_cast 异常

classGAGenome{virtualvoidmethod(){};};templateclassGAArray{};templateclassGA1DArrayGenome:publicGAArray,publicGAGenome{};intmain(){GA1DArrayGenomegenome;constGAGenome&reference=genome;autocast=dynamic_cast&>(reference);}这个明显错误的程序(因为模板参数不同)崩溃了terminatecalledafterthrowinganinstanceof'std::bad_cast

c++ - 1>项目: error PRJ0003 : Error spawning 'rc.exe'

1>项目:错误PRJ0003:生成“rc.exe”时出错。这是我在尝试运行这个读取和写入文件的小练习程序时遇到的错误,由于我不这样做,我不能这样做能够让文件正确打开。我使用MicrosoftVisualC++2008,我也使用文件路径尝试打开文件,有人能帮忙吗?#include#includeusingnamespacestd;intmain(){ifstreaminfile;ofstreammyfile;intnum;infile.open("example.txt");if(infile.fail()){cout>num;}while(!myfile.eof()){example

Linux下如何编译C/C++代码?从.c到.exe经历了什么?

🎈个人主页:🎈:✨✨✨初阶牛✨✨✨🐻强烈推荐优质专栏:🍔🍟🌯C++的世界(持续更新中)🐻推荐专栏1:🍔🍟🌯C语言初阶🐻推荐专栏2:🍔🍟🌯C语言进阶🔑个人信条:🌵知行合一🍉本篇简介:>:讲解Linux下如何编译C/C++代码?目录四个阶段4.1“预处理”阶段:4.2“编译”阶段4.3“汇编”阶段4.4“链接”阶段总结:编译C语言指令:gcc+文件名如果不指定生成的目标文件的文件名,默认生成的可执行文件的名字为a.out编译前:编译后:如何指定生成的可执行文件的文件名呢?方法一:gcc+-o选项+文件名1+文件名2方法二:gcc+文件名2+-o选项+文件名1解释:文件名1:生成的可执行文件的文件名