草庐IT

振动器Vibrator的API

全部标签

c++ - 如何获取驱动器号和装载路径 - MSDN

我使用SetupDiGetClassDevs函数从系统中获取设备列表-MSDN。我还可以从设备中获取供应商ID和产品ID。但是获取不到盘符和挂载路径例如,如果我插入USB驱动器意味着,我必须获得像“G:/”这样的驱动器号请帮我获取设备的盘符和挂载路径if(SetupDiEnumDeviceInterfaces(hDevInfo,NULL,&GUID_DEVINTERFACE_USB_DEVICE,i,&Interface_Info)){wprintf(L"\tDeviccvcvcveInstanceId:%d\n",i);pspdidd->cbSize=sizeof(*pspdidd)

c++ - LoadBitMap() API 会产生绘画问题吗?

我有一个用C++、MFC编写的遗留系统。我正在检查一段代码,其中LoadBitmap()替换为LoadImage()应用程序接口(interface)。代码中的注释说“LoadBitmap()使用内核内存中的分页池,如果使用量达到最大限制,则会弹出绘制问题。所以LoadImage应该使用API”。我在谷歌上搜索了一下,但没有得到太多信息。当我检查MSDN,他们说“请注意,不推荐使用LoadBitmap加载OEM位图,仅支持向后兼容”我的问题是:1.LoadBitmap()API有什么问题吗?为什么我们应该更喜欢LoadImage()而不是LoadBitmap()?2.什么是OEM位图?

windows - 有没有办法在 dired 中列出驱动器号?

在Windows上,我如何打开一个显示所有驱动器号的dired缓冲区。当你执行C-xd时,你应该始终提供一个目录,但我想从驱动器号级别开始,而不是特定驱动器的根目录。如果不存在标准解决方案,您是否有一个(对dired的扩展?)?或有关该主题的文章的链接? 最佳答案 在dired中您只能查看目录,并且由于不存在包含您的驱动器号的目录,因此您看不到它们的列表。为此,您必须为dired编写一个emacs-lisp扩展。据我所知,目前没有扩展名,但是,调用wmic可以为您提供驱动器号和卷名列表,这将是一个很好的起点。wmic命令:wmicl

c++ - 安全获取在 Windows API 中运行可执行文件的路径

嘿,我正在尝试获取与我的exe文件位于同一文件夹中的dll的路径。要走的路似乎是使用QueryFullProcessImageName()或GetModuleFileName()之一来获取正在运行的可执行文件的路径,然后使用字符串操作使其成为改为所需库的路径。不幸的是,这两个函数都没有提供提前找出所需缓冲区大小的方法。我试过为nSize参数传递零,但这没有达到预期的效果。执行此操作的最佳实践方法是什么? 最佳答案 在实践中,您可以使用WindowsAPIMAX_PATH作为您的缓冲区大小,也许加1以提高安全性。理论上Windows路

windows - 将文件夹绑定(bind)到文件的 API 是什么(如 Internet Explorer)

当您在InternetExplorer中保存HTML文件时,它会创建一个包含所有链接文件的子文件夹。这两个链接在一起,因此当您删除文件时,文件夹也会随之消失。我想在我的应用中做同样的事情。谁能给我一个相关API的指针?谢谢 最佳答案 HTML文件及其附带资源目录的配对是一种特殊情况(由shell实现),因此不是文件系统的功能,据我所知也不是任何可扩展的shellAPI。请参阅SHFileOperation中的连接文件文档。 关于windows-将文件夹绑定(bind)到文件的API是什么

windows - 如何确定驱动器是否安装了 TrueCrypt?

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭4年前。Improvethisquestion是否可以在Windows批处理文件中测试某个驱动器盘符是否已被TrueCrypt挂载?

windows - 如何清除 AuthzGetInformationFromContext API 使用的缓存?

我有一个域,我在客户端计算机上使用AuthzGetInformationFromContextAPI来检索用户所属组的sid。它工作正常。但是,如果我将用户添加到某个组或将他从域Controller上的某个组中删除,此API仍会显示旧的组列表。在这种情况下,如果我等待10分钟或更长时间,它将显示更新的组列表。我尝试在不同的计算机上执行此操作,发现该应用程序会在不同的时间显示更新的组列表。所以,它不是域Controller缓存。此外,我的应用程序退出并重新启动。因此,它也不是应用程序级缓存。所以,我相信有一些计算机级别的缓存用于组成员(通过此API检索)。有谁知道如何以编程方式清除此缓存

c# - 用于自动化的 User32 API 自定义 PostMessage

我想通过C#自动化一个名为Spotify的程序,(我认为)最好的方法是触发假按键。我想编程暂停播放,但我对这些东西的了解还不够多,无法找到按键以外的其他方法。所以我使用VisualStudio的Spy++查看按下键盘上的播放按钮时Spotify收到什么消息,我将该消息中的数据复制到我的控制台应用程序并运行它,当我运行时我可以在Spy++的消息记录中看到PostMessage,所以这是有效的,但它不会暂停/播放我的音乐。我想这是因为我还必须发送另一个带有另一个目的地的PostMessage,但我怎么知道还要发送什么?发布消息调用:MessageHelper.PostMessage((in

c++ - OpenCV - API 位置不是文档吗?

也许我被MSDN宠坏了,但我正在焦头烂额地寻找API位于哪些DLL中。这让我发疯了,我已经开始编写一些可以运行的代码DLL导出表,这样我就可以找到函数了!!就像在MSDN上一样,如果我需要一个Windows函数,例如GetModuleHandle()。我转到MSDN页面:http://msdn.microsoft.com/en-us/library/windows/desktop/ms683199(v=vs.85).aspx它准确地告诉我函数所在的位置:Library-Kernel32.libDLL-Kernel32.dll现在对于OpenCV,我正在寻找函数cvCreateKalma

Windows 更新代理 API - 搜索更新

我编写了一个使用Windows更新代理API(IUpdateSearcher、IUpdateDownloader、IUpdateInstaller等)的Powershell脚本。一切正常,脚本找到可用的更新,下载并安装它们。但是在搜索连续更新的时候出现了问题。例如,有.NetFramework4.5.2的更新。更新通过脚本安装,然后PC重新启动。现在应该有可用的.NetFramework4.5.2语言包更新。但事实并非如此。至少不是通过API。可以使用GUI(WindowsUpdate)进行手动搜索。经过手动搜索,API很好地找到了更新!我的脚本中缺少什么?我在Microsoft文档中