草庐IT

c++ - Windows C++ 中的 MSN Messenger/Growl 样式警报

有谁知道我可以轻松将其集成到项目中以允许我显示MSNMessenger/Outlook/Growl风格的toast弹出窗口的任何C++库?尝试查看并发现了很多VisualBasic控件等,但到目前为止还没有C++控件。 最佳答案 您可能想看看CustomizableAlertWindow作者:MariusBancila。 关于c++-WindowsC++中的MSNMessenger/Growl样式警报,我们在StackOverflow上找到一个类似的问题: h

c++ - 为什么 GetLastError() 在调试期间与 "normal"执行期间返回不同的代码?

try{pConnect=sess->GetFtpConnection(ftpArgs.host,ftpArgs.userName,ftpArgs.password,port,FALSE);}catch(CInternetException*pEx){loginErrCode=GetLastError();printf("loginErrCode:%d\n",loginErrCode);if(loginErrCode==12013){printf("Incorrectusername!\n");exit(0);}elseif(loginErrCode==12014){printf("I

c++ - 我可以使用 SetWindowPos 将窗口放在另一个窗口后面,但如何将它放在给定窗口前面?

SetWindowPosition的第二个参数是hWndInsertAfter,表示在后面。如何将一个窗口放在另一个窗口(上方)的前面? 最佳答案 如何再次调用SetWindowPos,交换hwnd参数(因此您的原始窗口现在是hWndInsertAfter,而初始hWndInsertAfter现在是您要移动的hWnd),并传入SWP_NOMOVE标志?编辑:如果Z顺序中的确切位置无关紧要,而您只想让它在前面,请不要忘记SetForegroundWindow。 关于c++-我可以使用Set

c++ - 如何在 Windows 中获取文件安全属性

我正在使用C++MFCwindows下如何获取文件的安全属性,有没有方便的api?非常感谢! 最佳答案 你能检查一下吗TheWindowsAccessControlModelPart1TheWindowsAccessControlModel:Part2另外,看这里WindowsAccessControl 关于c++-如何在Windows中获取文件安全属性,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com

c++ - 登录到远程机器并访问网络资源

我想访问远程机器(win2k3,10.10.20.30)上的一个文件,但我不明白如何在我的程序中登录到那台机器。是否有任何简单的winapi可以获取网络路径、凭据并返回句柄?我只想访问\10.10.20.30\c$\test.txt,WNetAddConnection2、WNetAddConnection3有点困惑。任何建议都会有所帮助。抱歉,不是很清楚。我想访问同一网络(LAN)上的计算机。我想访问未在其他计算机上共享的文件。 最佳答案 如果您有管理员权限,解决方法就相当简单。C$管理共享可用。您可以调用WNetAddConnec

windows - Qt:同一个小部件中的 QPainter + GDI?

我正在尝试使用methoddescribedhere在同一个小部件上使用QPainter和GDI调用。不幸的是,本教程似乎是在早期版本的Qt上编写的,现在它不起作用。我设置了WA_PaintOnScreen标志并重新实现paintEngine()以返回NULL。然后在paintEvent()上我创建了一个QPainter,使用它然后使用一些GDI调用来绘制位图。GDI调用工作正常,但QPainter什么也不做。我在控制台上收到以下错误:QPainter::begin:Paintdevicereturnedengine==0,type:1这是不再支持了吗?我该怎么做?我也曾尝试在GDI绘

c++ - 如何在不注入(inject)任何 DLL 的情况下单击窗口时返回窗口句柄?

对于我的一个项目,我需要创建一个函数,当用户单击窗口(屏幕上显示的任何窗口,以及该窗口内的任何位置)时,该函数将返回一个窗口的句柄。我知道可以使用全局Hook,但我认为必须有一种更简单的方法,无需使用任何DLL注入(inject)。事实上,我可以在激活窗口时拦截鼠标左键单击或拦截。我可以在没有任何DLL注入(inject)的情况下使用这两种解决方案中的一种吗? 最佳答案 你可以使用LowLevelMouseProchook拦截点击,然后使用WindowFromPoint来确定窗口。(我还没有真正尝试过这个。)

c++ - 运算符 "new"仅返回一个类的非本地堆指针?

语言:C++平台:WindowsServer2003我有一个调用DLL的exe。编辑:(exe没有做任何事情,它调用了几个全局函数,这些函数在DLL中完成与DLL相关的所有事情。它没有显式新建任何DLL类)我在DLL中为A类分配(新)内存,它返回给我一个非本地堆指针。我尝试新建DLL中的其他类(在DLL中),“new”为它们返回一个有效的堆指针,它唯一的ClassA是没有被正确分配。我在Windows上并通过此函数调用验证堆:编辑:ClassA*pA=newClassA();_CrtIsValidHeapPointer((constvoid*)pA)我很困惑为什么这只发生在new-in

c++ - 如何在 CRT 中模拟文件读取错误

使用VS2008,我们想模拟一个大小为X的文件,但在X-Y字节读取失败,以便我们得到错误指示。有人知道如何在Windows上执行此操作吗?看起来有一个针对linux的解决方案,但我真的想不出在windows上执行此操作的方法。我们有多个开发人员、多台机器和cppunit测试框架,所以我想要一个纯软件设计。我正在尝试模拟实际的CRT故障,因此我可以测试处理故障的代码。 最佳答案 将文件I/O函数包装在一个类中;覆盖测试派生类中的那些;用假的或模拟的来模拟失败。 关于c++-如何在CRT中模

c++ - Windows/C++ : detect when focus has changed between windows (globally)

我正在尝试找到一种方法来检测何时将焦点更改为另一个窗口(而不必每隔X毫秒轮询一次)。我已经想出了一种方法来检测何时使用WH_SHELL和HSHELL_ACTIVATESHELLWINDOW在应用程序之间切换焦点。问题是我想检测焦点何时在同一个应用程序的对话框/窗口之间切换。即。在记事本中,我可以确定应用程序何时切换到记事本,但我无法检测到“打开”或“保存”对话框何时出现,因为焦点仍在同一应用程序中。 最佳答案 您可以使用SetWindowsHookEx使用WH_CBTHook类型。如果您只想检测应用程序中的焦点变化,请将GetCur