我想确定本机程序集是否从托管代码应用程序(C#)编译为x64或x86 .
我认为它必须在PE头中的某处,因为OS加载器需要知道这些信息,但我找不到它.当然我更喜欢在托管代码中执行它,但如果有必要,我可以使用本机C++.
在这种情况下,您使用新的Metro风格的应用程序为Windows 8构建了UI前端,并希望它与在同一本地计算机上的桌面上运行的.NET应用程序(例如,Windows服务应用程序)进行通信.
metro应用程序和桌面应用程序之间有哪些形式的进程间通信?
感谢Visual Studio团队的Pavel Minaev,他在评论中提供了一些初步信息,引用:
根据Martyn Lovell的说法,没有任何有意识的机制,可以用于它的一些机制是故意限制的.例如,命名管道不在那里,也不是内存映射文件.有套接字(包括服务器套接字),但是当连接到localhost时,您只能连接到同一个应用程序.您可以在其中一个共享的"已知文件夹"(文档,图片等)中使用普通文件,但这是一个相当粗糙的黑客,需要轮询并且对用户可见.- Pavel Minaev 就此问题发表评论
因此,我正在考虑使用Web服务或读取/写入数据库,以便进行某种形式的通信,当进程在同一台机器上运行时,这两种方式都显得过于苛刻.
我在这里尝试是否有意义?我可以看到Metro应用程序需要成为桌面上运行的现有服务的前端UI.或者将WPF用于桌面上运行的前端UI(即非城域应用程序)更好.
在Windows API调用之后,如何以文本形式获取最后一条错误消息?
GetLastError() 返回一个整数值,而不是文本消息.
我使用Python 2.7,我想使用pywin32-214上Windows 7.我pywin32-214使用msi安装程序安装.但是当我导入win32api我的Python脚本时,它会抛出错误:
no module named win32api.
Run Code Online (Sandbox Code Playgroud)
我该怎么办?我可以使用pywin32 api的Windows 7?
我不怕承认我是一个C++新手,所以这看起来像是一个愚蠢的问题,但......
我看到DWORD在代码示例中使用了所有地方.当我查看DWORD的真正含义时,它显然只是一个无符号整数(0到4,294,967,295).所以我的问题是,为什么我们有DWORD?它给了我们积分类型'unsigned int'不是什么?它与便携性和机器差异有关吗?
我正在寻找一种方法,或用于将std :: string转换为LPCWSTR的代码片段
我尝试为Emacs的Windows安装寻找.emacs文件,但我找不到它.Windows下的文件名与Unix中的文件名相同吗?
我必须自己创建吗?如果是这样,它在什么特定的目录下去了?
如何将外部库添加到由Qt Creator RC1(版本0.9.2)构建的项目中?例如,EnumProcesses()需要Psapi.lib在要构建的项目中添加win32函数.
据我所知,Windows没有提供API函数来告诉应用程序注册了一个全局热键(通过RegisterHotkey).我只能发现如果RegisterHotkey返回false,则注册了热键,但不是"拥有"热键的人.
在没有直接API的情况下,是否会有迂回的方式?Windows维护与每个注册热键相关联的句柄 - 这有点令人抓狂,因此无法获取此信息.
可能不起作用的示例:发送(模拟)已注册的热键,然后拦截Windows将发送给注册它的进程的热键消息.首先,我不认为拦截消息会显示目标窗口句柄.其次,即使有可能,这也是一件坏事,因为发送热键会触发各种程序中各种可能不需要的活动.
这并不重要,但我已经看到了对这种功能的频繁请求,并且我自己也是注册热键的应用程序的受害者,甚至没有在UI或文档中的任何地方公开它.
(在Delphi工作,只不过是WinAPI的学徒,请善待.)