草庐IT

c++ - 相当于 gnu 中 windows stdint.h 的 u_int16_t?

到目前为止,我假设u_int16_t是一个名为stdint.h的MSVS头文件中某处的Windows类型。我正在使用GNUg++作为编译器(实际上是带有mingw的代码块),我想知道typedefunsignedshortuint_least16_t;(在mingw的stdint.h内)是否等效,或者我可以做些什么来包含它类型?这个问题实际上与编译googlesparsehash有关用于MSVS的项目文件,但我使用的是代码块。这是它给我的错误(顺便说一句,这个错误重复了很多次)。c:\programfiles\codeblocks\mingw\bin\..\lib\gcc\mingw3

c++ - 如何在Visual Studio 2010中使用Boost

关于如何在VisualStudio中的空项目中使用Boost库的逐步说明,有什么很好的解释? 最佳答案 尽管Nate'sanswer已经相当不错了,但我将根据要求针对VisualStudio2010对其进行更具体的扩展,并在需要外部库的各种可选组件中包括有关编译的信息。如果您仅使用header库,那么您要做的就是取消存档boost下载并设置环境变量。下面的说明仅为VisualStudio设置环境变量,而不是整个系统。请注意,您只需要做一次。将最新版本的boost(截至撰写时为1.47.0)解压缩到您选择的目录中(例如C:\boost

c++ - 客户端中的安全配置文件

在项目中,我们将为每个客户端创建配置文件(也可以在每个客户端中使用sqlite而不是配置文件)。这些文件将包括政策等关键信息。因此最终用户不得添加、删除、更改该配置文件或文件中的内容。我正在考虑使用事件目录来防止用户打开包含我的配置文件的文件夹。是否有使用安全配置文件的标准方法?编辑:当然读取文件的速度和安全性一样重要编辑2:我不能用数据库服务器做到这一点,因为我的政策也必须在没有互联网连接的情况下才能访问。服务器将在某些时间更新该文件或sqlite表。我正在使用C++。 最佳答案 很抱歉打碎了你的希望和梦想,但如果你的安全是基于客

Windows 上的 c++ 程序 (g++)。 main() 没有启动

我有一个由main()函数和类声明组成的C++项目。我正在使用mingwg++来编译我的代码。问题是,即使编译链接好,启动程序时,进程卡住,什么也没有显示。这基本上就是main.cpp文件:intmain(){printf("....\n");system("PAUSE");//Classinstance;return1;}....classClass{...}....我评论了类实例化以隔离问题。在main函数之后是类Class声明。需要说明的是,当从控制台运行它时,它卡住并且不显示printf字符串。如果有用的话,我还链接了类方法中使用的sfml库。我该如何解决这个问题?谢谢。

c++ - 搜索硬盘中所有文件的最快方法是什么?

我目前正在尝试搜索硬盘中的所有文件。我将在窗口7上搜索大量文档。这意味着使用大量文件I/O...我在想我应该使用多线程或异步I/O。你怎么看? 最佳答案 如果您以正确的方式考虑它,这很适合工作流水线:线程1使用目录列表来检索和获取目录列表。线程2使用目录列表并将其他目录分派(dispatch)回线程1,同时将文件转发到线程3。同时,线程3有一个简单的工作:一次从文件中获取N页数据,并将它们转发给线程4,线程4在内存页面中搜索匹配项。因为应用程序主要受IO限制,所以您可以轻松地在线程3中投入一些CPU来优化请求的并发性和优先级,以尝试

c++ - 捕捉屏保事件

我正在尝试捕捉屏幕保护程序事件。这是我的代码:#include"stdafx.h"#include#include"stdio.h"#includeHHOOK_hook;LRESULTCALLBACKHookCallback(intnCode,WPARAMwParam,LPARAMlParam){if(nCode>=0){LPMSGmsg=(LPMSG)lParam;if(msg->message==WM_SYSCOMMAND){if(msg->wParam==SC_SCREENSAVE){std::cout函数SetWindowsHookEx(WH_GETMESSAGE,HookCa

Java - 在 rt.exec 调用 WinXP 32 位的 C++ 程序后,应用程序随机挂起

您好,我有一个visualstudio2008c++项目,它通过COM1与自定义设备进行通信。测试表明它按预期工作(当从cmd.exe使用时),它发送一些数据(通过args发送给它)并打印(cout)它从端口读取的下一个300字节。例子:cppprogram.exe-sendRANDOM_HEXSTRING_HERE-CCOM1[0000FFABCD1873295287210173983198396918273(...)1278612851FFEB]回复的格式总是[hexstring]。如果出现错误,它返回-1,否则返回0。在cmd.exe上执行时,您可以看到它“缓慢地”打印,约100

c - Logitech网络摄像头USB C Windows

我想基本上只是从罗技USB相机抓取帧。怎么做呢?我可以给它发送USB指令;但是,我认为罗技没有包含控制摄像机所需指令的文档。是用直接表演的方式吗?WindowsMPD看起来是个好主意,但我不认为Logitech设备支持它。与usb摄像头通信的标准方式是什么?谢谢。 最佳答案 到现在为止,你很可能已经弄明白了,但其他人可能会从中受益。几乎所有像样的网络(或其他)摄像机类型都有可用的api,当然是logitech。这里有一个linkthatmayhelp 关于c-Logitech网络摄像头U

c++ - Qt 5.0.2 应用程序的可移植性问题。如何制作简约的Qt包?

我知道Qt默认情况下不是静态构建的,如果有任何扩展名为.lib或.a的文件,那么这些文件只是导入库。我希望我的应用程序小巧便携,所以除了考虑静态重新编译Qt之外,我还考虑如何使动态库包尽可能小,以便可以安装在另一台与Qt无关的计算机上,使其完全在运行我的Qt应用程序时有效。在这种情况下,我是关于WindowsXp或更高版本的Windows。在创建这样一个包的情况下,我首先意识到Qt5安装程序不会向系统和用户路径添加任何内容,并且在没有QtCreator的情况下我无法运行我编译的应用程序。但是,在我将此添加到系统和用户Path变量后:"K:\Qt\Qt5.0.2\5.0.2\mingw4

windows - 错误 : C stack usage is too close to the limit in Windows environment

我在R中对5600x5700矩阵进行地统计插值,尽管有可用内存,但我收到错误“C堆栈使用量太接近限制。”有一些与此问题相关的SO问题,包括thisone和thisone.这些来源和我在网上看到的其他来源建议更改堆栈大小通常可以解决此问题。一些人建议进行此更改:文件“Rinterface.h”中的R_CStackLimit=(uintptr_t)-1。但是我在Windows7(x64)上,在Python2.7中通过Rpy2模块(v2.3.6x64通过ChristophGohlke)使用R2.15.3(x64),以及“Rinterface.h"找不到。我怎样才能更改R的有效堆栈限制?我为插