【问题标题】:Late Binding DirectX DirectSound in VB6VB6 中后期绑定 DirectX DirectSound
【发布时间】:2023-03-19 15:49:02
【问题描述】:

我正在开发一个需要在 WindowsXP 和 Windows7 上运行的 DirectSound 应用程序。使用的对象只是声音缓冲区,但目前是早期绑定的:

Private dx As DirectX8  
Private ds As DirectSound8 
Private mdsBuf As DSBUFFERDESC
Private mdsBuffer(7) As DirectSoundSecondaryBuffer8 

首先,我如何使用 CreateObject 后期绑定这些? ProgId 是什么?我猜是这样的:

Dim dx As Object
Set dx = CreateObject("DIRECT.DirectX8.0")

其次,我相信 Windows7 使用 DirectX 11。是否有等效的 ProgId?还是对象模型不同?

谢谢!

【问题讨论】:

  • 谢谢,但我知道后期绑定(在 XP 下)肯定会起作用,我缺少的是细节。我是否可以对 DirectX 11 使用后期绑定,这是另一个问题。

标签: vb6 directx late-binding


【解决方案1】:

你读过Visual Basic 6.0 DirectX applications fail to run on Windows Vista and later了吗?

结果是不再支持来自 VB6 的 DirectX。

【讨论】:

  • 我明白现有的应用程序将无法运行。但我有幸从头开始编写代码。我该如何让它发挥作用?
  • 基本上,你不能。正如 MS 知识库文章所述:“DirectX for Visual Basic 6.0 组件在 Windows Vista 和 Windows Server 2008 上不可用。在 Windows Vista 上没有官方或受支持的方式来安装这些组件。”
猜你喜欢
  • 2018-03-20
  • 2016-12-03
  • 2013-06-28
  • 1970-01-01
  • 1970-01-01
  • 2016-12-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多