api-ms-win-core-console-l
全部标签 我目前正在使用C++和WindowsAPI创建一个需要用户从键盘输入的程序。我目前的解决方案是有效的,但我想问问是否有更好的方法来实现我正在尝试做的事情。当前解决方案:LRESULTCALLBACKWndProc(HWNDhWnd,UINTmessage,WPARAMwParam,LPARAMlParam){switch(message){caseWM_CHAR:switch(wParam){case119:std::cout如果我想获得键盘上的每个键,我将不得不为每个键制作一个外壳。有没有更好的办法?此外,是否有任何在线引用资料可供我获取每个key的代码?编辑:我想为每个单独的键实现
我维护一个生成二进制数据的命令行实用程序。请求时,数据可以重定向到stdout。这在stdout被重定向到管道或文件时有效,但当stdout是一个控制台时,情况就不太一样了,因为它会垃圾控制台。为了保护用户免受此类错误,程序必须检测stdout是否是控制台,并在是时退出。现在,这并不是什么新鲜事,快速浏览一下Internet就会发现多种解决方案。主要缺点是没有“通用”方法,VisualStudio需要自己的风格。我用于Visual的控制台检测器有一个缺陷:它没有检测到stdout是一个控制台当控制台由mingw提供时,我认为这意味着它是mintty。这里是相关的代码部分:#ifdefi
我有一个Windows窗体应用程序,它对从Midi/USB脚踏开关上的按钮单击发出的Midi事件作出react。这在几乎所有PC上都非常有效,延迟非常小......但是在MicrosoftSurface4(可能还有5、6等)平板电脑上,Microsoft似乎会在声音播放后尽快让Midi(或USB)驱动程序进入休眠状态停止在设备上播放...之后立即!我确定Surface这样做是为了节省电量/电池,但这对我的应用程序来说是一个交易破坏者。在我的应用程序中,无论当前是否正在播放声音,我都需要对脚踏开关按钮的点击使用react,几乎没有延迟。在Surface上,一旦Midi驱动程序进入休眠状态
我喜欢在Delphi的RDPsession中唯一标识由EasyPrint打印机重定向的打印机。每次用户连接到RDPsession时,打印机的名称都会更改,例如:“HPLJP1606(重定向6)”。最后一个数字(6)始终在变化,以确保打印机名称在整个服务器中是唯一的。在我的程序中,我喜欢保存一些与打印机型号相关的打印机相关参数。我期待找到类似GUID的东西来识别某个地方的打印机,有点像MAC地址。它应该允许我的程序确保它与之前选择的打印机相同。我和我的同事研究了这个解决方案:HowcanIuniquelyidentifyaprintqueueonWindowsevenifthequeue
我有一个用ATL编写的基本应用程序,使用VS2008的向导。我在应用程序的左侧有一个TreeView。我看到了如何(痛苦地)添加树项目。问题是如何在鼠标右键单击时显示菜单?如何在可以选择的每个项目上捕获任何点击事件? 最佳答案 您应该检测到WM_CONTEXTMENUWindows消息specifyingahandlerinyourmessagemap.在处理程序中,您可以显示上下文菜单。然后,您还需要确保在从上下文菜单中选择命令时处理消息映射中的菜单命令。使用COMMAND_HANDLER这部分的消息映射中的宏。
我想这是不可能的,但我还是会问的。我有一个执行BeginUpdateResource/UpdateResource/EndUpdateResource的Windows应用程序我能以某种方式在Linux/Unix上执行吗?它在服务器端,因此无法运行GUI模拟器。 最佳答案 我不确定使用Wine可以实现什么,但如果您拥有要运行的应用程序的源代码,这可能是一种可行的方法。另见WillWinerunonlyunderX,orcanitrunincharactermode?.另一种选择是重写功能。
您可以为Win32上的IPC推荐什么包装类?我试过XQueue,我发现它有点笨拙,想听听外面还有什么。在InterlockedPopEntrySList()上构建一些东西看起来不错,但这需要服务器2003。谢谢,亚当 最佳答案 我推荐Qt4(或者您可以查看源代码):http://doc.trolltech.com/4.5/qsharedmemory.html 关于c++-Win32共享内存的包装类?(进程间通信),我们在StackOverflow上找到一个类似的问题:
我正在为摩托罗拉Q等WM智能手机开发应用程序。有什么办法可以在我的代码中找到我正在运行的手机吗?谢谢,丹 最佳答案 来自https://blogs.msdn.com/netcfteam/archive/2006/09/15/756755.aspx[DllImport("Coredll.dll",EntryPoint="SystemParametersInfoW",CharSet=CharSet.Unicode)]staticexternintSystemParametersInfo4Strings(uintuiAction,uint
在工作中,我们使用简短的登录名,例如hastingsg,但Outlook和我相信Windows系统的其他部分也可以访问更长的名称,例如杰夫·黑斯廷斯。在cpython(不是IronPython)中,如果我有较短的登录名,我怎样才能得到较长的全名?我有pywin32和ExchangeCDO安装。 最佳答案 通过pywin32的COM部分,您需要获取Outlook的应用程序对象,并从中获取其属性Session,它为您提供Namespace对象(当使用唯一支持的参数值'MAPI'调用时,GetNamespace方法也应该用于相同的目的)。
我正在使用wininetapi将HTTPPOST发送到SSL服务器。我想使用P/Invoke将这些api包装到C#,因为C#中的原始代码。我如何将这些api包装到c#。我试过了,但没有用。我正在为WindowsMobile和智能手机做这个。LPCTSTRlpszAgent=_T("CeHttp");DWORDdwError;DWORDsizeInResult,sizeOutResult,sizeToWrite,sizeWritten,dwRead;HINTERNEThInternet=NULL;HINTERNEThConnect=NULL;HINTERNEThRequest=NULL;