C Master Volume Windows 中的 __uuidof

2024-03-19

我想用 C 改变主音量,但是__uuidof仅适用于 C++;我可以用什么来代替它?

const CLSID CLSID_MMDeviceEnumerator = __uuidof(MMDeviceEnumerator);
const IID IID_IMMDeviceEnumerator = __uuidof(IMMDeviceEnumerator);
hr = CoCreateInstance(
     CLSID_MMDeviceEnumerator, NULL,
     CLSCTX_ALL, IID_IMMDeviceEnumerator,
     (void**)&deviceEnumerator);

我只发现:C 中 __uuidof 的替代方案 https://stackoverflow.com/questions/8868784/alternative-to-uuidof-in-c


CLSID_MMDeviceEnumerator and IID_IMMDeviceEnumerator被定义在 API 的头文件中 https://msdn.microsoft.com/en-us/library/windows/desktop/dd371399(v=vs.85).aspx, i.e. <mmdeviceapi.h>.

您必须在 C 代码中使用这些定义,而不是__uuidof,因为这仅适用于 C++ 代码。

请注意,您需要包括<initguid.h> before <mmdeviceapi.h>:

#include <initguid.h>
#include <mmdeviceapi.h>

那么这段代码应该可以工作:

hr = CoCreateInstance(
    &CLSID_MMDeviceEnumerator, (*)
    NULL,
    CLSCTX_ALL, 
    &IID_IMMDeviceEnumerator,  (*)
    (void**)&deviceEnumerator
);

(*)请注意,我已经使用了&(address-of),因为在 C++ 中你有引用,但在 C 代码中你需要显式地使用指针。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C Master Volume Windows 中的 __uuidof 的相关文章

  • 采用 std::vector 或 std::array 的模板函数

    我有一个函数 当前接受 2 个向量 其中可以包含任何普通的旧数据 template
  • Winform DatagridView 数字列排序

    我只使用一个简单的 DataGridView 来保存一堆数据 有趣的是 我在特定列中有小数 但是当按小数列排序时 它的排序是错误的 例如 起始顺序可能是 0 56 3 45 500 89 20078 90 1 56 100 29 2 39
  • 如何通过 libwebsocket 发送异步数据?

    我正在将 Warmcat 的 libwebsocket C 库用于小型 Websocket 服务器 我已经启动并运行了这些示例 并且可以发送数据以响应从 websocket 接收数据 例如回显发送的反向字节 但是 我无法弄清楚如何在不使用
  • C# 中 PKCS11Interop 库的线程安全使用 [已关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在使用 PKCS11Interop 在 HSM 内执行密钥管理操作 我使用的 HSM 是 Thales PCI Express 下面是
  • 无法将参数从 `const char *` 转换为 `char *`

    鉴于此代码 void group build int size std string ips Build the LL after receiving the member list from bootstrap head new memb
  • 选择initializer_list迭代器定义

    Why std initializer list
  • C# 中的抽象类和接口类有什么不同?

    C 中的抽象类和接口类有什么不同 An 接口不是类 它只是一个contract定义了public一个类的成员must实施 抽象类只是一个类 您从中可以cannot创建一个实例 通常您会使用它来定义一个基类 该基类定义了一些virtual方法
  • 为什么 BinaryFormatter 可以序列化 Action<> 但 Json.net 不能

    尝试序列化 反序列化 Action 尝试我的 1天真 JsonConvert SerializeObject myAction JsonConvert Deserialize
  • 如何调试.NET Windows Service OnStart方法?

    我用 NET 编写的代码仅在作为 Windows 服务安装时才会失败 该故障甚至不允许服务启动 我不知道如何进入 OnStart 方法 如何 调试 Windows 服务应用程序 http msdn microsoft com en us l
  • 原子存储抛出错误

    我最近升级到了 C 11 兼容编译器 并且尝试将一些代码从 boost 更新到 c 11 标准 我在使用atomic store转换一些代码时遇到了问题 这是一些简单的测试代码 似乎会引发编译器错误 int main std shared
  • 如何在 C++ 和 QML 应用程序中使用 qrc?

    我在 Windows7 上用 c qnd Qt Creator QML 编写了 Qt Quick Desktop 应用程序 现在 我必须部署它 并且我需要隐藏 qml 文件和图像 意味着 将它们放入资源等中 我读到有一个很好的方法可以使用
  • 模板与非模板类,跨编译器的不同行为

    我在一些应用程序中使用编译时计数器 它确实很有用 昨天我想用 gcc 编译一个程序 我之前使用的是 msvc 并且计数器的行为在模板类中发生了变化 它在模板类中不再工作 过于简化的代码 Maximum value the counter c
  • 冒号在c中起什么作用?

    我在课堂上得到了这个例子 但我不确定它的作用 我知道冒号添加了一个位字段 但我仍然不确定这个问题 a b gt 0 3 1 运算符称为条件运算符 If b值为 gt 0 价值3被分配给a否则值1被分配给a 以 Kernighan Ritch
  • linq where 子句和 count 导致 null 异常

    除非 p School SchoolName 结果为 null 否则下面的代码将起作用 在这种情况下 它会导致 NullReferenceException if ExistingUsers Where p gt p StudentID i
  • 如果仅使用第一个元素,是否必须为整个结构分配内存?

    我有一个结构 其中第一个元素被测试 并且根据其值 结构的其余部分将被读取或不会被读取 在第一个元素的值指示结构的其余部分不会被读取的情况下 我是否必须为整个结构或仅第一个元素分配足够的内存 struct element int x int
  • 阴影空间示例

    EDIT 我接受了下面的答案 并添加了我自己的代码的最终修订版 希望它向人们展示影子空间分配的实际示例 而不是更多的文字 编辑 2 我还设法在 YouTube 视频 所有内容 的注释中找到了一个调用约定 PDF 的链接 其中有一些关于 Li
  • 展开 std::reference_wrapper 的成本

    Given include
  • C - 获取外部IP地址

    我需要通过 C C 调用获取我的公共 IP 地址 我知道作为替代方案 我可以从 http whatismyip akamai com 等外部链接获取 我写了一个示例来获取外部IP地址 但我的程序没有返回外部 IP 地址 我正在获取内部 IP
  • 如何通过代理将套接字连接到http服务器?

    最近 我使用 C 语言编写了一个程序 用于连接到本地运行的 HTTP 服务器 从而向该服务器发出请求 这对我来说效果很好 之后 我尝试使用相同的代码连接到网络上的另一台服务器 例如 www google com 但我无法连接并从网络中的代理
  • 在 LP2844Z(Zebra 打印机)上的收据中包含 PNG [重复]

    这个问题在这里已经有答案了 我正在致力于创建一个基于 HTML5 画布的签名 绘图框 目前我们在服务器上将画布保存为PNG 但可以轻松地将base64字符串保存在数据库中 现在的问题是我们如何在打印的收据上添加签名 目前我们使用 GF 字段

随机推荐

  • 如何创建自定义 haar 分类器?

    我正在努力创建一个自定义 haar 分类器 我在网上找到了一些教程 但他们没有指定他们使用的是哪个版本的 opencv 我需要的是一个非常简洁和简化的所需步骤示例 以及一个简单的图像数据集 我还需要知道 opencv 版本和操作系统平台 以
  • Rails 7 不会通过“generatescaffold”命令生成 SCSS 文件

    我在 Rails 7 中创建了一个新项目 每当我使用生成脚本时 rails generate scaffold or rails generate controller 除了 css scss 之外 所有生成的文件都会被创建 显然 我不是唯
  • svn 客户端超时并破坏 WC 状态

    当我提交较大的更改 数百兆字节 时 即使签入确实完成 客户端也会超时 当我右键单击 WC 并显示日志时 TSVN 显示即使实际签入 WC 修订版也不会更新 我尝试过使用TortoiseSVN 1 9 5 Build 27581 64 Bit
  • 静止搜索性能

    这是一个双重问题 我组装了一个简单的国际象棋引擎 它执行 Alpha Beta 搜索 最后执行静止搜索 静止搜索正在影响性能 问题是 这是可以接受的性能影响吗 如果不是 那么应该采取什么措施来解决这个问题 下图给出了性能影响 请注意 这些统
  • 出现“无法将 PersistentGenericSet 转换为 ISet”错误

    我收到此错误 无法转换类型的对象 NHibernate Collection Generic PersistentGenericSet1 IocWinFormTestEntities People to type System Collec
  • 如何禁用apache2中的mod_deflate?

    如何在 Apache2 中禁用 mod deflate 对于特定目录中的文件 OR 对于所有具有扩展名的文件 例如 py 您可以设置环境变量no gzip http httpd apache org docs 2 2 mod mod def
  • MAVEN_OPTS 与 mvn -D

    我认为两者都定义了相同的 JVM 属性 但两者之间显然存在差异 我找不到明确的解释 如果我在构建的 Jenkins Maven 中使用两者 则只有 D 设置的属性在 System getProperties 的 Java 应用程序中可见 尽
  • p:fileDownload bean方法被调用但文件下载不显示

    您好 我正在使用 JSF 和 Primefaces 进行文件上传和下载相同的文件操作 我结合使用来自不同论坛和博客的技术 BelusC 的博客和 Primefaces Showcase 该操作的主要思想是让用户上传文件并 为上传的文件生成一
  • 数据库连接应该是单例吗?

    Java 中创建单例的最佳方式是什么 数据库连接应该是单例 作为单例它自动是线程安全的 因为理论上数据库不能被许多用户同时访问 数据库连接通常不应是单例 两个原因 许多数据库驱动程序都不是线程安全的 使用单例意味着如果您有许多线程 它们将共
  • 从 phpmailer 获取原始 rfc822 消息

    我正在尝试使用 google api php client 和 gmail api 来允许我的用户验证他们的 gmail 帐户并通过我的网站发送电子邮件 我问了一个更通用的问题 https stackoverflow com questio
  • 时间:2019-03-17 标签:c#Linqselect不同的日期时间天

    我有以下方法 我计划返回一堆不同的日期时间对象 我所说的独特是指独特的日子 不包括时间 问题是 DateTime 对象具有不同的时间 因此即使它们是同一天 也会被评估为唯一 如何让查询忽略日期的时间部分并仅评估日期的唯一性 public L
  • 为什么我的类没有通过“def __init__”或“def __init__”初始化?为什么我会收到“不带参数”类型错误或属性错误?

    如果您的问题作为与此重复的问题而被关闭 那是因为您有一个代码示例 其中包含以下内容 class Example def int self parameter self attribute parameter or class Example
  • 从 DBMS_SCHEDULER 运行 exe

    我是 DBMS SCHEDULER 的新手 我面临一些问题 我想运行 exe所以我创建了一个工作 begin sys dbms scheduler create job job name gt FTREC EXE 1 job type gt
  • 类模板参数推导完美转发

    我想了解演绎指南如何与通用参考一起使用std forward 特别是创建完美的转发包装器 下面的代码提供了在两种情况下试验函子包装器的代码 一种具有隐式推导指南 一种具有显式推导指南 我已经放了很多 and std forward在评论中
  • 如何按列对多维数组进行排序?

    有没有办法使用 sort 方法或任何其他方法按列对列表进行排序 可以说我有清单 John 2 Jim 9 Jason 1 我想对其进行排序 使其看起来像这样 Jason 1 John 2 Jim 9 做到这一点的最佳方法是什么 Edit 现
  • 错误:生成未知

    我正在尝试按照教程进行操作https docs angularjs org tutorial https docs angularjs org tutorial并且运行命令时出错 npm run protractor 这是控制台日志 Mic
  • 从 Woocommerce 中的产品 ID 获取所有订单 ID

    如何按产品 ID 获取包含订单 ID 的数组 我的意思是接收所有展示特定产品的订单 我知道如何通过 MySQL 来做到这一点 但是有没有办法通过WP Query功能 Updates 2017 SQL 查询更改为 SELECT DISTINC
  • Lime vs TreeInterpreter 用于解释决策树[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 石灰来源 https github com marcotcr lime https github com marcotcr lime 树解
  • 如何使用skia Sharp在画布上绘制PDF?

    我参考了skia的官方文档 https learn microsoft com en us dotnet api skiasharp skcanvas view skiasharp 1 68 1 constructing a pdf doc
  • C Master Volume Windows 中的 __uuidof

    我想用 C 改变主音量 但是 uuidof仅适用于 C 我可以用什么来代替它 const CLSID CLSID MMDeviceEnumerator uuidof MMDeviceEnumerator const IID IID IMMD