Restored from previous forum. Originally posted by Rich Brockway.
All,
I have found PureBASIC to be a very interesting and useful product. However, right now I have a project, on my plate, which requires me to build a plug in for another application. It would be very tedious and difficult to attempt to write a "driver" application to test the DLL. Unless I missed something, PB for Windows 3.30 (Demo) does not have this capability. Is this on the wish list? If not, please add it to the top.
Restored from previous forum. Originally posted by ricardo.
Sorry, but only the registered version lets you create DLLs.
There are no plans to allow the demo to do so.
But he is not asking to compile in DEMO version. I think that he is asking for a wall to run DLLS directly from IDE without the need to compile dll and call it from the application to test it.
Its like you write some DLL and could call it directly from the IDE and the debug it.
Restored from previous forum. Originally posted by Rich Brockway.
All,
I am aware one cannot create DLLs with the demo version. That was not the topic. It is "My Wish - I'd like to be able to debug DLLs in IDE." This means I want to be able to step into the DLL code to debug it. From what I have read, this is a not available with any version (registered or not).
Restored from previous forum. Originally posted by Pupil.
A dll procedure in PB is like any other procedure(i think so atleast, Fred?) so you could debugg it like a normal procedure first and when you're satisfied with the function of it, change name of 'Procedure' to 'ProcedureDLL'. This way is not exactly what you asked for but it's the only option at the moment to be able to test the different future dll functions with the aid of the PB-debugger.
Restored from previous forum. Originally posted by fred.
In fact, you can test all your code as a normal procedure as Pupil said. You can even let the ProcedureDLL keyword when testing, as it doesn't change anything (it just inform the compiler to make the symbol public, which is not a probleme for a normal executable). So you can develop like this:
Restored from previous forum. Originally posted by Rich Brockway.
Originally posted by fred
In fact, you can test all your code as a normal procedure as Pupil said. You can even let the ProcedureDLL keyword when testing, as it doesn't change anything (it just inform the compiler to make the symbol public, which is not a probleme for a normal executable). So you can develop like this:
And when all is ok, change the output to DLL and that's it.
Fred - AlphaSND
fred,
I know how to do this type of debugging; it is not anything new.
That is not the issue. The issue is this: I need to write a plug in for a 3D game engine; it passes (in C lingo) structs to the DLL. I need to modify the struct and pass it back. It is not simple little task I can run in PureBASIC. It is a huge handicap to not be able to debug a DLL.
Yes, I could use "stone age" debugging using message boxes in the compiled DLL. However, for me, it is simply not worth the work. I'd rather use a development tool, like Visual C++ that has the capability.
Restored from previous forum. Originally posted by tinman.
Originally posted by Rich Brockway
Yes, I could use "stone age" debugging using message boxes in the compiled DLL. However, for me, it is simply not worth the work. I'd rather use a development tool, like Visual C++ that has the capability.
Fred wasn't meaning that. He was just showing you that you can call "ProcedureDLL" procedures from your code as you would normally. So you would be able to write your DLL code and test it as a normal PB program.
However, it would still require you to write a test application (or at least some code to call the DLL function) which is what you didn't want to do
--
It's not minimalist - I'm increasing efficiency by reducing input effort.
(Win98first ed. + all updates, PB3.50)
Restored from previous forum. Originally posted by Rich Brockway.
Originally posted by tinman
Originally posted by Rich Brockway
Yes, I could use "stone age" debugging using message boxes in the compiled DLL. However, for me, it is simply not worth the work. I'd rather use a development tool, like Visual C++ that has the capability.
Fred wasn't meaning that. He was just showing you that you can call "ProcedureDLL" procedures from your code as you would normally. So you would be able to write your DLL code and test it as a normal PB program.
However, it would still require you to write a test application (or at least some code to call the DLL function) which is what you didn't want to do
--
It's not minimalist - I'm increasing efficiency by reducing input effort.
(Win98first ed. + all updates, PB3.50)
tinman,
Again, it simply does not help. I cannot write a simple PureBASIC program to test the methods. I need to be able to step into the DLL code in the debugger as it is called from the 3D engine. This has been "standard" on many Windows compilers (Delphi, Visual Basic, C++ Builder and Visual C++) since 1996. The current IDE does not allow this.
Restored from previous forum. Originally posted by fred.
Right, you want to attach the debugger to another process, like VisualC++ does. It's simply not possible for now with the current IDE. I'm affraid you will have to stick with another product..