草庐IT

api-ms-win-core-util-l

全部标签

c++ - 在内部扬声器上播放声音和使用旧的 xp api 功能的可能性?

windowsvista发布后的WindowsFunctionBeep在连接的扬声器而不是内部扬声器上发出哔哔声。有没有办法访问旧功能?是否可以通过保留旧的Windowsapi来实现?或者有什么其他方法可以使这成为可能吗?如果是这样,我希望能够同时设置频率和持续时间。我应该提一下,我实际上是针对windowsxp平台的。 最佳答案 没有。该函数在Kernel32.dll中实现,它在运行时从您当前运行的任何版本的操作系统加载。由于代码不在您的可执行文件或系统DLL中,因此您无法运行它(甚至不要考虑从不同的操作系统版本复制Kernel3

c++ - 如何在 C++ win32 API 的对话框中设置图像?

我正在开发一个C++Api项目。我将使用dialogboxparam创建一个对话框...我完成了创建和设置文本框、标签和按钮...它的工作很好......现在我想在对话框的顶部添加一个图像...我确实在WM_INITDIALOG中使用了这段代码:HBITMAPhImage=(HBITMAP)LoadImage(NULL,L"C:\\WINDOWS\\system32\\BMA-Images\\login-header",IMAGE_BITMAP,LR_DEFAULTSIZE,LR_DEFAULTSIZE,LR_LOADFROMFILE|LR_CREATEDIBSECTION);Send

c++ - MS Visual Studio Professional 2013 - C++ 为 32 位和 64 位操作系统编译单个可执行文件?

Google给了我一个线索,有可能将代码编译成一个可执行文件,该可执行文件将在32位操作系统上作为32位运行,在计算机上作为64位运行64位操作系统。可执行文件真的有可能在运行时确定其位数吗?在我的例子中,目标系统是Windows7Professionalx64和WindowsXPSP3x86。所以我在各种文章中读到的内容(我认为甚至有关于SO的类似主题的答案)是必须转到Soltuion的ConfigurationManager(RMBontoSolution->ConfigurationManager)并将Platform设置为AnyCPU。现在所有这些文章都描述了旧MSVS或MSV

windows - 为什么较新的 Windows 版本仍支持某些旧的 Win16 API?

我最近在MoleBox打包的可执行文件上修复了一些IAT,发现它链接了kernel32函数:'_lopen'、'_lwrite'和'_lread'。这site声明提供这些API是为了与16位版本的Windows兼容。我不知道“Win16”应用程序不能在长模式下执行(是的-我正在运行Win8.1x64)-那么那些仍然包含在“kernel32.dll”中的目的是什么?顺便说一下,这些函数甚至没有包含在“msdn”库中。编辑:看起来这些函数实际上并不是16位的!他们在堆栈上获取32位参数。 最佳答案 并不是说函数可以被16位应用程序调用。

windows - Visual Studio 在 Windows 7 上将 WINVER/_WIN32_WINNT 设置为 Windows 8?

我正在使用VisualStudio2012在Windows7x64上执行一些测试。看起来Microsoft的工具链正在将_WIN32_WINNT设置为0x602(_WIN32_WINNT_WIN8).运行我们的测试程序导致TheprocedureentrypointGetOverlappedResultExcouldnotbelocatedinthedynamiclinklibraryKERNEL32.dll:我有两个问题。首先,出于病态的好奇,为什么Microsoft将_WIN32_WINNT设置为对执行环境无效的值?我能理解用户是否想要这样做,但微软不行,因为它会破坏一切(q.v.

windows - MS Windows 中的 HKLM 代表什么?

HKLM在MSwindows中代表什么? 最佳答案 HKEY_LOCAL_MACHINEHKEY前缀对所有注册表配置单元都是通用的,本地机器配置单元用于影响每个用户的设置。 关于windows-MSWindows中的HKLM代表什么?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2185123/

c++ - 使用 Windows api 和 C++,我如何从硬盘驱动器加载一个 exe 并在它自己的线程中运行它?

为了学习,我正在尝试做操作系统在启动程序时所做的事情,即。解析一个PE文件并给它一个执行线程。如果我有两个exe,一个叫foo.exe,另一个叫bar.exe,我如何让foo.exe将bar.exe的内容加载到内存中,然后让它在自己的线程中从那里执行?我知道如何使用MapViewOfFile或通过简单地将硬盘驱动器上的内容加载到缓冲区中来将其放入内存。我假设只是将磁盘上bar.exe的内容复制到它自己的挂起线程中并运行它是行不通的。我对PE文件的内部结构比较熟悉。当然,非常感谢所有帮助:) 最佳答案 首先,兰伯特是正确的。EXE在它

c++ - 将 win32 代码 (windows.h) 移植到 linux

很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭10年前。我正在开发一个C++项目,其中有一堆VisualStudio生成的项目文件,我想将它们移植到Linux。我本质上是在Windows上的多个文件中使用windows.h头文件。现在,我不确定,因为明确不存在linux.h文件(如果存在,请指导我在哪里查看)。在linux上,我使用EclipseCDT进行开发。关于它在Linux上如何工作,我有两个想法,但我希望您的输入知道正确的方向是什么:(1)删

c++ - 如何禁用 win32 'interface' 宏?

我在这里绝对疯了。我正在Windows上进行一些C++开发,我有一个名为“interface”的命名空间:namespacegd{namespaceinterface{}}//endnamespace但是,无论我包含“Windows.h”还是“Wtypes.h”,都会包含一个名为“objbase.h”的文件,其中包含一个名为“interface”的宏。该宏不允许我使用命名空间名称。Win32API中是否有禁用接口(interface)宏定义的功能?如果没有,有人可以想出一个聪明的解决方法来禁用它,而不需要对我的代码库进行太多大规模更改吗? 最佳答案

c - 使用 gcc 编译 win32 项目时如何链接到库?

我正在尝试在Win7上使用gcc编译一个基本的hellowordwinform应用程序。代码是这样的:/*WINHELLO.C"Hello,world!",Win32style.*/#includeLRESULTCALLBACKWndProc(HWND,UINT,WPARAM,LPARAM);/*WinMain(),ourentrypoint*/intWINAPIWinMain(HINSTANCEhInstance,HINSTANCEhPrevInstance,LPSTRszCmdLine,intiCmdShow){staticcharszAppName[]="winhello";HW