草庐IT

c++ - 可缩放和平移的易于使用的 GUI?

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭4年前。Improvethisquestion我正在寻找易于使用且跨平台的GUI工具包。GUI的另一个主要要求是它应该支持缩放和平移。例如,我应该能够放大图片和放大按钮。是这样的:http://eaglemode.sourceforge.net/video.html但它应该也有Windows支持(据我所知EagleMode没有)。据我所知,QT是一个很好的UI,它可以直接在OGL窗口的顶部绘制。我认为它在绘制按钮

c++ - Visual Studio 2008,错误 c2039 : 'set_new_handler' : is not a member of 'std'

所以前几天我去编译我正在处理的VC++项目,突然间我几乎所有的文件都出现错误:new.h:errorC2039:'set_new_handler':isnotamemberof'stdnew.h:errorC2039:'set_new_handelr':symbolcannotbeusedinausing-declaration“new.h”和“set_new_handler”没有在我的任何文件中使用,所以我不知道这些错误是如何或为什么突然出现的,因为它们与windows/VS库文件有关。谁知道我可以做些什么来清除这个错误并重新编译我的代码?更新在检查编译时包含的文件后,有些文件包含,

c++ - Windows 中仅限本地系统的 ACL

我正在使用命名管道在两个进程之间进行通信,并希望将访问权限限制为Windows本地系统上的任何用户。我正在构建ACL以用于传递给CreateNamedPipe的SECURITY_ATTRIBUTES。我将此代码基于Microsoft中的代码.SID_IDENTIFIER_AUTHORITYsiaLocal=SECURITY_LOCAL_SID_AUTHORITY;if(!AllocateAndInitializeSid(&siaLocal,SECURITY_LOCAL_RID,0,0,0,0,0,0,0,0,&pSidLocal)){break;}然后我将该sid与AddAccessA

c++ - 使用 WSASend 的一些 OVERLAPS 没有使用 GetQueuedCompletionStatus 及时返回?

背景:我正在使用CreateIoCompletionPort、WSASend/Recv和GetQueuedCompletionStatus在我的服务器上执行重叠套接字io。对于流量控制,当发送到客户端时,我只允许在所有挂起的OVERLAP从IOCP弹出时调用几个WSASend()。问题:最近,有时OVERLAP没有返回到IOCP。调用GetQueuedCompletionStatus的线程没有得到它们,它们保留在我的本地待处理队列中。我已经验证客户端确实从套接字接收数据并且套接字已连接。进行WSASend()调用时未返回任何错误。如果没有像下面这样的外部刺激,重叠就“永远不会”回来:断

c++ - 在哪里可以获得有关 Visual Studio 中 C/C++ 链接器的信息?

我想详细了解VisualStudio中的C/C++链接器问题和疑难解答。我不时遇到链接器问题,它们真的很烦人,因为您从链接器错误消息中获得的信息非常有限。我看过一些不太详细的MSDN文章,但没有深入。在哪里可以找到链接器信息的良好来源?也许是一本书、一个网站或一些有深度的博客文章?是否有有用的实用程序来帮助链接器故障排除?使用dumpbin浏览有点不尽如人意。 最佳答案 要全面了解链接器,请阅读“链接器和加载器”一书。您可以在线阅读:http://www.iecc.com/linker/.我认为单独深入研究Windows可执行文件将

c++ - 为来自不同进程的窗口设置父级是否正确?

我有两个应用程序有两个不同的顶级窗口:App1--Window1App2--Window2现在,我正在App1中创建一个对话框Dlg1,我想将window2(App2)设置为父窗口。(那是因为我希望我的Dlg1位于Window2之上)。我通过将Window2设置为父级来创建对话框。有效。但这是正确的方法吗?跨进程设置父项是否存在任何已知问题\限制?我检查了windows文档,发现的信息不多。 最佳答案 这或多或少是受支持的,但确实有一些限制。您需要注意这两个进程以同一用户身份运行,并且您没有会阻止这两个进程通信的安全或提升问题。其次

c++ - 在给定 _EXCEPTION_POINTERS 结构的情况下,如何获取导致结构化异常的模块名称? (win32 C++)

(Win32平台c++)使用__try和__finally,如何获取异常原因的模块名称(和地址)?我调用了GetExceptionInformation()但我不确定这些信息在哪里。鉴于在线和MSDN中的其他资源,Minidump处理程序和其他示例代码似乎能够获得它,但我不确定如何获得它。感谢任何引用资料或更具启发性的资源。 最佳答案 EXCEPTION_POINTERS提供的EXCEPTION_RECORD记录包含异常发生的地址。然后,您可能可以使用EnumProcessModules()和GetModuleInformation

windows - 如果我尝试将 header 编译为没有换行符的包含,为什么 MSVC++ 会给我一个错误? (C++/Windows )

我正在使用MSVC++编写一个简单的窗口,并且我包含了一个菜单的资源文件:MYMENUMENUDISCARDABLE//etc.然后我创建了一个头文件“resourcedef.h”,其定义如下#defineID_MYMENU_FILE_CLOSE1002我可以将它包含在我的main.cpp文件中而不会出错,但是,当我将它包含在资源文件中时,我得到了错误.\resourcedef.h(9):fatalerrorRC1004:unexpectedendoffilefound(resourcedef.h恰好有9行长)。当我在.h的末尾添加换行符时,//lines1-8#defineID_MY

c++ - Windows 套接字 WSACleanup C++

我在我的程序中使用套接字。由于我添加了WSAStartup。我的应用程序运行良好(它一直运行到收到停止信号为止)。收到信号后,它会停止问题,如果我在程序末尾编写WSACleanup函数,它会崩溃,如果我删除它,它会正常终止。谢谢 最佳答案 这是我的一个项目的摘录。初始化:#ifdefined(WIN32)WSADATAwsaData;WORDwVersionRequested=MAKEWORD(2,0);if(WSAStartup(wVersionRequested,&wsaData)!=0){LOG("WSAStartup()er

c++ - 如何在 Windows 下用 C++ 在远程机器上启动一个进程

我在Windows下使用Dev-C++。我的问题是如何在远程机器上启动进程?我知道PsExec可以做到这一点,但如果可能的话,我想避免使用它。如果有人可以提供一些示例代码,我将不胜感激:)提前致谢!坎比 最佳答案 如果这很容易,黑客就会在所有暴露在互联网上的机器上启动恶意软件。PSExec通过LAN使用服务控制管理器从“此处”启动服务EXE,即您运行它的机器。它需要很多安全权限——例如管理员权限。如果您不想这样做,您可以查看SSH(有开源示例)或远程命令提示符(在Windows资源工具包中)。