Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Dark GDK / DGDK.Net Redist

Author
Message
Argon Knight
22
Years of Service
User Offline
Joined: 29th Aug 2002
Location: Gastonia, NC, USA
Posted: 3rd Nov 2006 03:18
I currently dont have spare machine to test his on.

Does the Dgdksetup.exe contain all the necessary darkbasic files needed to run my dgdk.net app?

I know about the .net framework stuff, and dx9, I was more interested in do I treat it more like a darkbasic.net runtime, and there for, all I need to distribute is in my app's output dir.
APEXnow
Retired Moderator
21
Years of Service
User Offline
Joined: 15th Apr 2003
Location: On a park bench
Posted: 3rd Nov 2006 08:50
The DGDKSetup.exe file will setup a user's computer with the DGDK.NET component only. It doesn't install the .NET framework or the DX9 Runtime. You will need to ensure that a user's computer is DX ready with the August 2006 edition and the .NET framework 1.1 or 2.0 depending on your application's requirements.

Paul.

Miguel Melo
19
Years of Service
User Offline
Joined: 8th Aug 2005
Location:
Posted: 3rd Nov 2006 11:52
Hmmm... I didn't know that a redistr was needeed. Is that assemblies that go into the GAC? If not, can't one just deploy them together with the game?

I have vague plans for World Domination
jasuk70
21
Years of Service
User Offline
Joined: 3rd Dec 2002
Location: Hemel Hempstead
Posted: 3rd Nov 2006 11:55
I was planning on doing a DGDKSetup -s in my installer when I get that far. So it will just silently install the dll's as part of my installation.

Jas

----
"What is this talk of 'release'? Klingons do not'release' software. It escapes leaving a bloody trail of developers and quality assurance people in its wake!"
APEXnow
Retired Moderator
21
Years of Service
User Offline
Joined: 15th Apr 2003
Location: On a park bench
Posted: 3rd Nov 2006 12:42
Indeed, that's what DGDKSetup is for. Using the -s parameter will silently install the DGDK runtime so that any DGDK.NET application can run on the end user system. You will still need to ensure that they also have the .NET framework of your choice as well.

Paul.

jasuk70
21
Years of Service
User Offline
Joined: 3rd Dec 2002
Location: Hemel Hempstead
Posted: 3rd Nov 2006 12:45
I think that if you do "Publish {AppName}" from within vs.net 2005(+express) it will create an installer that checks to see if the .net 2.0 exists, if not it will ask you if you wish to download from MS and handle that it's self. (Though I've not actually tried this out yet)

Jas

----
"What is this talk of 'release'? Klingons do not'release' software. It escapes leaving a bloody trail of developers and quality assurance people in its wake!"
APEXnow
Retired Moderator
21
Years of Service
User Offline
Joined: 15th Apr 2003
Location: On a park bench
Posted: 3rd Nov 2006 13:00
I'm a bit sceptical about the publish system for DGDK.NET based applications, because I did run into difficulties in actually running the deployed application. Where as doing a direct copy of the files and dependencies worked just fine.

Paul.

jasuk70
21
Years of Service
User Offline
Joined: 3rd Dec 2002
Location: Hemel Hempstead
Posted: 3rd Nov 2006 13:08
I'll have a play around with this myself. I encountered similar problems when I did it for my job. But there was some settings in the Publish properties of the App (Application and Pre-requisits buttons) that were not set up correctly.

Jas

----
"What is this talk of 'release'? Klingons do not'release' software. It escapes leaving a bloody trail of developers and quality assurance people in its wake!"
CattleRustler
Retired Moderator
21
Years of Service
User Offline
Joined: 8th Aug 2003
Location: case modding at overclock.net
Posted: 3rd Nov 2006 14:36
you may not want to run dgdk.net apps from a Publish scenario in .net 2.0. It "sandboxes" the program, and all kinds of other nasties, plus it leaves you with way less control. I used the Publish feature for my last job and trust me, anything beyond intermediate apps is going to be a headache. I know, auto updates are really cool tho, right? Well, you cant have it all I guess.
Plus theres always Xupdate

just my 2 cents worth of experience with this. good luck.

jasuk70
21
Years of Service
User Offline
Joined: 3rd Dec 2002
Location: Hemel Hempstead
Posted: 3rd Nov 2006 14:42
What installer would you recommend?

Jas

----
"What is this talk of 'release'? Klingons do not'release' software. It escapes leaving a bloody trail of developers and quality assurance people in its wake!"
Argon Knight
22
Years of Service
User Offline
Joined: 29th Aug 2002
Location: Gastonia, NC, USA
Posted: 3rd Nov 2006 16:30
Then, during a custom install, we only need to regsvr32 the DGDK.DLL file?

You are putting it in the system32 dir, its that a requirement? In the near future, we may not be able to do that on Vista machines. However, I see no problem using ProgFiles\ApexSoftware or even ProgFiles\TGC folder and treat it like a central "runtime", which it basically is.

And, does your setup file detect if the dll file is already installed?
Argon Knight
22
Years of Service
User Offline
Joined: 29th Aug 2002
Location: Gastonia, NC, USA
Posted: 3rd Nov 2006 16:42 Edited at: 3rd Nov 2006 16:50
Can the dgdk.dll simply be copied in my app's bin dir, and referenced directly, like any other .net dll? That way we dont have to register it?

We can't get stuck having only 1 copy of the dll installed per machine. At some point in the future, DGDK will be updated. And if somebody installs some else's game with an older copy of the dgdk.dll, it might overwrite the newer one that my game needs.

BTW, I'm a WISE man by force. But I like NSIS too.
APEXnow
Retired Moderator
21
Years of Service
User Offline
Joined: 15th Apr 2003
Location: On a park bench
Posted: 3rd Nov 2006 17:00
Please just use the DGDKSetup.exe file, that is what it's for. It checks the version, and the DLL is required to be registered.

Paul.

Argon Knight
22
Years of Service
User Offline
Joined: 29th Aug 2002
Location: Gastonia, NC, USA
Posted: 3rd Nov 2006 17:18
So, I just bought an ActiveX control, and not a .Net control? Because if the dll has the .Net manifest headers, then ActiveX isnt needed. Otherwise, you might as well change the products name to DGDK ActiveX and let the vb6 users have a stab at it.
CattleRustler
Retired Moderator
21
Years of Service
User Offline
Joined: 8th Aug 2003
Location: case modding at overclock.net
Posted: 3rd Nov 2006 17:53
Quote: "What installer would you recommend?"

Inno Setup is quite nice and free and scriptable

or a setup project out of the box with visual studio

@Argon, dgdk.net is a COM layered DLL to allow .net to use dgk commands, as stated from the beginning, altho I am not sure what the web page states. People following this knew it was COM internals, yet you have a point.

Argon Knight
22
Years of Service
User Offline
Joined: 29th Aug 2002
Location: Gastonia, NC, USA
Posted: 3rd Nov 2006 17:54
Yep, ActiveX only. Well, might as well update your help file to remind user's that they will need to include Interop.DGDK.Dll in there distro's.

I'm no longer impressed with this product.

My pure .Net app shouldn't be required to talk via ActiveX to a .Net dll. In fact, it dont. It talks to the .Net Interop.DGDK.dll, which talks to your ActiveX interface.
Argon Knight
22
Years of Service
User Offline
Joined: 29th Aug 2002
Location: Gastonia, NC, USA
Posted: 3rd Nov 2006 17:58
Well, you can have a .net dll that acts as both COM and NET. I've been doing it for years.

I have a mixed mode managed c++ dll that talks to the sdk libs without using ActiveX. Made it last year on 1.1, and its works with 2.0. So, I know it can be done. I just felt a supported product was worth the investment versus trying to go at it alone.
APEXnow
Retired Moderator
21
Years of Service
User Offline
Joined: 15th Apr 2003
Location: On a park bench
Posted: 3rd Nov 2006 18:01
So, am I understanding this correctly, because it says .NET on in the tin, and allows .NET applications to be developed using a standard interop layer, which is pretty much the same thing when calling any native API function, and provides full unrestricted access to a very usable game development engine, your not happy anymore because it's a COM component?

Paul.

CattleRustler
Retired Moderator
21
Years of Service
User Offline
Joined: 8th Aug 2003
Location: case modding at overclock.net
Posted: 3rd Nov 2006 18:30
he's taking the piss Apex.

Argon,
go ask tgc for a refund and go use one of the woefully under-developed pure .net dx engines then.

either way stop moaning

Argon Knight
22
Years of Service
User Offline
Joined: 29th Aug 2002
Location: Gastonia, NC, USA
Posted: 3rd Nov 2006 19:33
Leaving out the fact that I know I must make sure the correct DX runtime is installed first, and the DotNet runtime my app needs:

If I compile a darkbasic pro app, all I need to do is distro the exe and the media. No extra TGC runtimes, they're embedded.

Then, if I compile my DGDK C++ app, all I need to do is distro the exe and media. Same as before, TGC runtimes are embedded.

I get this wrapper to the sdk, now I have to make sure a TGC runtime is install before I distro my exe and media. I'm NOT OK with that. I was expecting the runtime to be copied locally to my app. I like DarkBasic because it’s self contained. I switched to DotNet because I can distro my apps with little effort.

I’m NOT OK with saying this is a DotNet library. Its not. Plain and simple. It is no concern to me what you do inside the dgdk.dll. My concern is the external interface.

I’m OK with the fact this gives VB6 developers an opportunity to use darkbasic functionality. And you do need ActiveX for that. About time, would have used it 4 years ago. And installing an ActiveX control would have been expected. Especially since I was already using the ActiveX DirectX7 ocx back then.

I’m OK with the fact its can be used with DotNet 1.1. The previous generation platform. 1.0 was the generation before that. And VB6 was the generation before that. So, from my point of view, this product is 3 generations old. That is how is should be sold. Take the DotNet label off and you might get more sales.

I’m NOT OK with the fact you only give DotNet developers one interface option, ActiveX. The deprecated ActiveX. The same ActiveX that the DotNet sdk tells people not to use unless they need to legacy support. That’s right, legacy. As in, supporting the old way.

DotNet dlls can be copied locally to my exe. This was a basic principal in the DotNet design in order to compete with Java. The ability to ship multiple versions of a dll that automatically provided domain isolation. The first step to controlling DLL HELL. Your product is doing exactly what DotNet doesn’t want us to do.

I can locally copy the managed DirectX dll. XNA can be copied locally. Why can’t I do this with yours? How hard was it to make a second DotNet only dll interface?

And, the fact you install your dll in the System32 folder, is curious. Why put it there, when most antivirus scanners, and Microsoft, are protecting that folder from 3rd party files. As a vendor, you should feel proud and install it in the Program Files. I know one reason is because you are using ActiveX. You are forced to install the file in a central folder that has no chance of being changed. However, if you were using pure DotNet, you could use the central GAC, and still gives use the ability to choose to install the dll domain locally.

I wasn’t expecting a next generation product. I’m already developing with XAML (which will compete with TGC) . DX10 (Which I expect TGC will have to put a new product to support, like 7.0). XNA (another competitor product, for more advanced developers)
And getting Torque to run mixed mode Torque is simple, though not very optimized unless I buy TorqueX

So, No, this product is not of any use to me becuase I'm forced to use a deprecated method on installation.
APEXnow
Retired Moderator
21
Years of Service
User Offline
Joined: 15th Apr 2003
Location: On a park bench
Posted: 3rd Nov 2006 20:01
Well, I'm sorry to hear that your unhappy, but I can only say that even though it's using COM, people using all of the Express development systems can still develop their applications and game map editors without all the hassle of linkage errors commonly associated with C++. All I can say is, if your not happy with the product, take it up with TGC sales.

Paul.

Sephnroth
22
Years of Service
User Offline
Joined: 10th Oct 2002
Location: United Kingdom
Posted: 3rd Nov 2006 20:05
Quote: "
The ease of DarkBASIC Professional with the power of Visual Basic.NET and C#.NET
"


Quote: "
Now you can take full advantage of the game engine that powers DarkBASIC Professional 6.2 from within any of the Visual Studio .NET Express or Visual Studio .NET Professional environments
"


Quote: "
A whole new world of possibilities can be opened up by combining the features that both Visual Basic.NET and C# offers, and the power of the DarkGDK.NET. The GDK brings the flexibility of the DarkBASIC Professional 6.2 engine to the world of .NET development while still retaining the ease of use that DarkBASIC Professional offers.
"


These are directly from the DarkGDK.NET page on this website. You will notice how it all says "brings to" and basically just "allows you to use from within". Exactally what this wrapper does. No false information, no lies. I am creating .NET applications right now. I'm writing them in a .NET enviroment, im using managed .NET code and people need to have .NET installed to use the application. In my .NET application I am using DGDK, giving me all the nice simple functions that it has to offer within my .NET app. EXACTALLY what the webpage said it would do.

You are whining for the sake of it. Just like those that started spouting on about people using ini files when they should use the registry and then, laughably, later on the /same people/ telling people off for using the registry when obviously XML was such a better choice. Ini files still work for me.

You can shove the redist in with your programs installer and run it silently to register the component, its little to no hasstle for anyone with half a brain cell and absolutly no fuss to your end users. I'm not going to say that perhaps there arnt better options availiable, but this DOES work and its FINE and there has been no mis-sell. You get the functions that were promised right inside your .NET app to use as you wish and the most fuss is running the autheticator which is really no hastle at all with a template to take care of the pre-setup.

So no, what you are complaining about is purely asthetics. Its totally your option and I recommend you stop using the .NET wrapper because obviously XAML (never heard of it) is a great alternitive, DX10 which is still young and wont really shine on anything except vista is so the bomb, Torque which is another half arsed engine is blatantly that much better and XNA, which incidently is not really a competitor product but c# wrapped in ribbons by MS for gamedev support mainly focused at the Xbox360 (fine in its place, looks pretty nice) is THE choice for you.

....so why, with that huge selection of AWESOMEEEEE products and TGC competitors/betters did you even consider buying the .NET wrapper for the DGDK if you had all those which you were already developing with at least one of them? Seems daft to me mate.

If you must sit here and complain, fair enough unless you are rude or never stop then its your right - but at least be coherent. and find something real the complain about to, not the fact that everything works just not the way you would like it in your own little perfect world.

Argon Knight
22
Years of Service
User Offline
Joined: 29th Aug 2002
Location: Gastonia, NC, USA
Posted: 3rd Nov 2006 20:35
I'm not going to harp anymore. I said why I don't like it. I'm mulling getting a refund. That's my issue, not y'alls

But I have to say this, Sephnroth:

Quote: " XAML (never heard of it) "


Talk about little perfect worlds. Dude, DotNet 3.
Jeku
Moderator
21
Years of Service
User Offline
Joined: 4th Jul 2003
Location: Vancouver, British Columbia, Canada
Posted: 3rd Nov 2006 20:35
Quote: "I get this wrapper to the sdk, now I have to make sure a TGC runtime is install before I distro my exe and media. "


Yah, the marketing is a *little* misleading when it brags about the small executable sizes (small as 3k or 5k if I remember correct). I don't have the experience to setup an installer that registers a DLL, but I'm sure it shouldn't be that difficult.

Other than that, I'm happy with this product so far and last night I've been porting a C# game with absolutely no fuss--- and that is what I need when I'm on my free time

APEXnow
Retired Moderator
21
Years of Service
User Offline
Joined: 15th Apr 2003
Location: On a park bench
Posted: 3rd Nov 2006 20:45 Edited at: 3rd Nov 2006 20:49
Seriously, registering a component is a simple case of calling one of the DLL Exports! It's a simple LoadLibrary, grab function address, and call. Job done. That's effectively what DGDKSetup.exe does, with the added addition of checking whether the component is already installed. I really don't see what all the fuss is about.

[EDIT] Ok, I had to edit but calling a DLL function requires some coding knowledge, say.. with C++. If doing it in a custom installer, you could either do it two ways, using RegSvr32, or allow the installer to register it for you. Inno setup allows this with a flick of a checkbox. At anyrate, Inno Setup is free, easy to use, and is more than capable of providing a decent installation procedure for any .NET or non .NET app. Whatever floats your boat. But it seemed worthy to mention that having a simple DGDKSetup.exe file to install the component also, incase people were not comfortable in creating an installer, seemed appropriate at the time when I originally conceived the idea of the toolkit.

I try, try try try... try.. try again to make people happy, but it sometimes falls back on itself. I just hope that other people feel more positive.

Paul.

Jeku
Moderator
21
Years of Service
User Offline
Joined: 4th Jul 2003
Location: Vancouver, British Columbia, Canada
Posted: 3rd Nov 2006 21:00
Awesome, thanks for clearing it up I have used Inno Setup many times in the past, and also the Nullsoft installer (I forget what it's called now, I think maybe NIS).

Sephnroth
22
Years of Service
User Offline
Joined: 10th Oct 2002
Location: United Kingdom
Posted: 3rd Nov 2006 21:18
Quote: "
Talk about little perfect worlds. Dude, DotNet 3.
"


ya, imho im in a little perfect world Which is fine, but I don't complain when things arnt /exactally/ to my exact tastes, i would never be stopping if i was going to do that xD

But seriously, .NET 3? I didnt understand alot of what you said originally about things like XNA competing with TGC when they have seperate target audiances (xna being focused primarilly at xbox for example) etc, but calling .net a competitor is an even huger stretch of the imagination.

The .NET system is, basically, a language framework whereas DGDK is a library. How could this XMAL be considered a competitor? :/ Honestly I havnt posted this reply to entice or argue, im just totally confused as to where you are coming from with these statements :x

Gervais
20
Years of Service
User Offline
Joined: 11th Mar 2004
Location: Canada
Posted: 3rd Nov 2006 21:19 Edited at: 3rd Nov 2006 21:20
Well Paul

If it could make you happier this is just to tell you that I simply love this product finally I can do the development the way I like it with all the tools and library that come with the .net product and the ease of use of the DGDK api

Grate work
And thanks for all the hard work
Hypno Screen
18
Years of Service
User Offline
Joined: 21st Sep 2006
Location:
Posted: 8th Nov 2006 14:10
Hey pex, don't let people like Argon get you down. Who ever followed the DGDK for .Net thread must have known about DGDK.Net being a wrapper for the original DGDK, not a .Net rewrite.
I knew it and I really don't care as long the wrapper takes care of all the unmanaged code and lets me do my VB.Net coding. That's what I wanted and that's what I got.
Besides: afaik there are no useable managed DX engines available right now. They are either not stable, lack of features or COM based. One has to chose which way of them 3 to go. I chose the COM based DGDK.Net and I'm very happy with it as long as it will get updates and the cool IRC support from you!

Cheers!

http://www.bitshade.org
APEXnow
Retired Moderator
21
Years of Service
User Offline
Joined: 15th Apr 2003
Location: On a park bench
Posted: 8th Nov 2006 15:06 Edited at: 8th Nov 2006 15:06
Hypno Screen, thank you very much . As you've politely pointed out, it was a wrapper to begin with, and it still uses the original DGDK libraries. I will do my upmost to ensure that whenever TGC release DGDK updates, the .NET toolkit will follow suite. So it may be good to know that whenever bugs are fixed in DGDK, they will also be fixed in DGDK.NET.

Because of the system I have employed to update DGDK.NET, any new functions or help ammendments, are very quickly implemented into the COM wrapper that ensure managed/unmanaged compatability. For example, DGDK itself does not use Wide Character strings, where as .NET does. You should find that the toolkit is pretty transparent to these issues.

As for the IRC channel, I'm there every day. I'll do my best to ensure that people get the support they need, and if any problems arise, I'll see to it.

Again thanks for the support

Paul.

Login to post a reply

Server time is: 2024-11-19 09:24:22
Your offset time is: 2024-11-19 09:24:22