PDA

View Full Version : Question about Clooties DirectX units? *solved (kind of..)*



FusionWolf
28-02-2005, 07:48 AM
Hello,

I downloaded latest DirectX headers from Clooties DirectX pages and "installed" Borland conversion for Delphi 7. Now when I'm compiling my application it requires d3dx9_24.dll (as it earlier required D3DX92ab.dll).

In Clootie_DX92_dlls.zip package is that readme.txt where reads: "EULA prohibits redistribution of d3dx9_24.dll with your applications". And if I try to run my application without that .dll Windows says that dll is missing.

So, how I'm supposed to distribute my application if distributing that .dll is prohibited?

savage
01-03-2005, 10:18 AM
I would suggest sending an email to Microsoft and finding out what your alternatives are. Or you could switch to OpenGL ;).

Clootie
01-03-2005, 12:13 PM
Currently according to license you need to ship you code with DirectX runtime redistributive coming with new SDK (or provide a link to it?). MS is well aware currently of limitations this introduced to web oriented distibution, and probably will solve this on April-05 DirectX SDK Update.

But it's legal to use old (Dec-04) D3DX9 library, so you can download headers and D3DX92ab.dll (for D3DX9) from SourceForge (http://sourceforge.net/projects/delphi-dx9sdk) file archive and use it till new SDK release. Actually there ar not much enchancements in D3DX9 (at least until we have 64-bit pascal compiler :) ).

savage
01-03-2005, 02:48 PM
(at least until we have 64-bit pascal compiler :) ).

Doesn't FreePascal already do 64bit?

Clootie
01-03-2005, 03:41 PM
Doesn't FreePascal already do 64bit?
Not for Win64 :(

FusionWolf
01-03-2005, 10:58 PM
Uhm..I'm really wondering. So, you say that with Delphi you cannot make a DirectX application (with the newest DX units) which can be distributed leagally or what?

marcov
02-03-2005, 10:19 AM
Doesn't FreePascal already do 64bit?
Not for Win64 :(

Which Win64 ? :-)

I can't buy a win64, so there is none (one can only get the Itanium version in Eur 20000+ "solutions", or the AMD64 version in beta)

FusionWolf
02-03-2005, 10:40 AM
I'll just measured that, with the newest directx headers i got 30 frames per second more than, with the previous ones. Also rendering time is faster (obvious, of course) with this newest release.

Isn't there anyway to distribute applications with the newest headers? Why these even exists then, if you cannot distribute applications you have made with them? Is everybody else using the previous ones or OpenGL instead? Answer please. This is really bothering me? What the hell we do with these s*#t if they cannot be used for the public? This is getting me pissed off. :evil:

Edit: How come Clootie can share this .dll with he's applications in he's download page? Is he violating the EULA or what?!? :?

Clootie
02-03-2005, 11:34 AM
Which Win64 ?
I've meant Windows64 for AMD x64/Intel EMT64 available freely in RC2 8)


Isn't there anyway to distribute applications with the newest headers?
As I've said: if you need to use D3DX9 from February-2005 SDK Update you should NOT INCLUDE d3dx9_24.dll in your "installer" files but additionaly ADD DirectX runtime distributive and (recommended) call silend DirectX runtime intall during your installation process (throw DXSetup). This way you comply to DirectX SDK EULA.


Edit: How come Clootie can share this .dll with he's applications in he's download page? Is he violating the EULA or what?!? :?
Shhh... don't tell this to anybody :roll: Or you want me to force anyone to download DirectX runtime by yourself just to try new headers? This is why I've added comment about d3dx9_24.dll is only provided for development - and shoul not be provided when redistributing your application.

FusionWolf
02-03-2005, 02:34 PM
Okey, thanks for your answer. You mention that this .dll comes with DirectX runtimes and I should include that in my distribution. I have installed those runtimes to my own computer and if I try to run my game without that .dll in the game folder Windows says that, it's missing. So, how come it would work on somebody elses computer?

Clootie
02-03-2005, 03:06 PM
You need to supply this "special" DirectX 9.0c Redistributable (link) (http://www.microsoft.com/downloads/details.aspx?FamilyId=03C30962-4B78-4E59-8C70-32998DCEFFE5&displaylang=en).
How to determine is you redistributive contains D3DX9 as DLL: watch for these files: Feb2005_d3dx9_24_x64.cab, Feb2005_d3dx9_24_x86.cab.

PS. According to licence you can remove part of DirectX 9.0c Redistributable which are not required by your application. For example: Win9x support, Win64 support, Managed DX :)

To Macro: Microsoft Gears Up for Windows x64 April Launch, Says Company?¢_Ts Rep. (http://www.xbitlabs.com/news/other/display/20050301164124.html)

Clootie
02-03-2005, 03:10 PM
And by the way: when/if in future MS allows to redistribute D3DX9 in your application installer you will be required to place D3DX9_xx.dll inside System32 folder, so MS later can easier patch their own bugs/security holes :D

FusionWolf
02-03-2005, 10:03 PM
Okey, thanks for your answers. I will look forward how do I distribute my application so, it's as small as possible but not violating the terms of EULA. Thanks again Clootie you have been very helpfull (as always). This case is closed - Dismiss! :wink: