Jump to content

  • Log In with Google      Sign In   
  • Create Account

DLL's


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
6 replies to this topic

#1 Forcas   Members   -  Reputation: 181

Like
Likes
Like

Posted 19 July 2001 - 01:20 PM

Hey. I know that if I include resources in a DLL, I won''t have to re-build them every time I modify my code. I tried making a DLL with some resources in it, but instead of producing a DLL, it produced a .lib and a .obj I''m using MSVC++ 6. Is there anywhere where I can learn more about DLL''s? How do I make a DLL file, and how do I use it in my exe? -Forcas
"Elvis is alive. He is Barney the purple dinosaur. He is the pied piper that leads our children into the wages of sin and eternal damnation."

Sponsor:

#2 Nytegard   Members   -  Reputation: 820

Like
Likes
Like

Posted 19 July 2001 - 02:08 PM

You probably started a static linked library project instead of a dynamic linked library project. A .lib file is just as good in my opinion (actually better if a lot of people aren''t going to need that one library).

To use it in your .exe, you need

LoadLibrary
FreeLibrary
GetProcAddress.

Also, the DLL has it''s own thread, so you can also call that.

#3 jaxson   Members   -  Reputation: 127

Like
Likes
Like

Posted 19 July 2001 - 02:08 PM

Look in MSDN (msdn.microsoft.com). I think if you look up DllExport, you''ll be on the right track. It depends whether you want to load at link time or run time as to how you link and write your project.

I wish I had time to give an example, but I don''t right now unfortunately. Good luck!

#4 Forcas   Members   -  Reputation: 181

Like
Likes
Like

Posted 19 July 2001 - 03:11 PM

The thing is, when I build it, it says resources.dll, built. Then I look in the res directory and the closest thing I can find is a lib file. I''m positive I chose dll in appwizard.

-Forcas


"Elvis is alive. He is Barney the purple dinosaur. He is the pied piper that leads our children into the wages of sin and eternal damnation."





#5 GayleSaver   Members   -  Reputation: 122

Like
Likes
Like

Posted 20 July 2001 - 12:24 AM

Check in Project/Settings/Link/General/Output File Name.

Better yet, use ZIP files for res management if you''re doing a game.

#6 Forcas   Members   -  Reputation: 181

Like
Likes
Like

Posted 23 July 2001 - 05:54 PM

ZIP files? How? What are the advantages?

File name:
Debug/betterbedynamix.dll

I build it...... and it isn't there. Maybe it has something to do with the fact that I haven't completely coded my dll source. Does it?

Edited by - Forcas on July 24, 2001 1:02:46 AM

#7 phueppl1   Members   -  Reputation: 122

Like
Likes
Like

Posted 23 July 2001 - 06:24 PM

hmmm... Did you use the option that it should add some example code? If so, add a .def file to the .cpp files and get rid of those dllimport/dllexport defines and the classes... (you won''t be able to use classes then, though...)

In the .def file (a normal .txt file) you define the functions and variables the .dll exports.. (you can find it in the MSDN how to write it exactly..)

to load them in your .exe use LoadLibrary(), FreeLibrary() and GetProcAddress() as mentioned above..

one hint: delete memory where you allocated it.. in other words: If you call allocate memory in a dll function and return a pointer to the .exe be sure to free the memory in a function in the .dll...

In my current project I retrieve function pointers through functions called through function pointers... that''s where it get interesting :o))))))
cya,
Phil

Visit Rarebyte!
and no!, there are NO kangaroos in Austria (I got this questions a few times over in the states





Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS