Directsound from VB6

  • Thread starter Thread starter Simon Wilton
  • Start date Start date
S

Simon Wilton

I use DirectSound form VB6 in an application that will run under XPe. Adding
the support component (DirectVB) works fine, but bloats the image with the
whole of DirectX (D3D, etc) that I don't use.

I have three questions

1) Can I extract the standard component and modify it to remove the
dependencies I don't want

or

2) What is the minimum I need for support of DirectX from VB6 - apart from
the DX8VB.DLL and a dependency on DirectX8?

and

3) Has anyone any idea what is going to happen to the image size if I remove
the VB run-time, replace it with .NET 1.1 framework, port the application
from VB6 to VB.NET and use DirectSound9 instead of DirectSound8?

TIA

Simon
 
Hi Simon,

1. You can extract QFE's and based on them you can create your components.
2. AFAIK DirectX stands for all binaries together.
But if you want only DirectSound. then add only DirectSound component and
resolve its dependencies. (Although I have no idea what VB internally uses
and what you will need)
3. That would be fun.
- .NET framework will increase size of your image.
- DirectSound9 is part of DirectX9, right?

Sorry with info you provided it is very hard to tell what you want to do.

Regards,
Slobodan

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Have an opinion on the effectiveness of Microsoft Embedded newsgroups? Tell
Microsoft!
https://www.windowsembeddedeval.com/community/newsgroups
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
Fun yes I remember that once.

OK. There is a component (DirectVB) in the standard repository that puts in
the DirectX 8 wrapper for VB6 and the dependencies that it wants, but it
puts in everything that you can get at through it (D3D, DirectDraw,
DirectInput, DirectPlay, yadi-yadi-ya).

If you only want the DirectX 8 run-time (say called from C++) there is a
component, and you can select the bits that you are interested in TD. You
can set that to give you only DirtectSound, but DirectVB puts in everything
regardless.

What I would like do is re-create the DirectVB component from the repository
and delete the dependencies that I don't want. I know I can do that by
copying INFs from the repository - but this won't work in this case.

I guess I ought to stop being lazy and code the sound stuff in C++ and save
myself another 1.5MByte from the image by not needing the wrapper component.

TIA

Simon
 
Hi Simon,
What I would like do is re-create the DirectVB component from the repository
and delete the dependencies that I don't want. I know I can do that by
copying INFs from the repository - but this won't work in this case.

Ok, this component functionality is very simple so you can create it by
yourself.

It copies two com wrappers and use FBRegDLL to register them.
So you can make your wrapper that will do that very simple actually. And if
you don't need DX7 interfaces then you probably can skip dx7vb.dll

In your place I would not make any dependency from your component.
Just add your component that will handle copying of dx8vb.dll and
registration. And other DX stuff that you need add manually as we would do
it for let say C++.

Regards,
Slobodan

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Have an opinion on the effectiveness of Microsoft Embedded newsgroups? Tell
Microsoft!
https://www.windowsembeddedeval.com/community/newsgroups
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
Back
Top