forum.vdsworld.com Forum Index forum.vdsworld.com
Visit VDSWORLD.com
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 


Non-VDS .Dlls in VDS5

 
Post new topic   Reply to topic    forum.vdsworld.com Forum Index -> General Help
View previous topic :: View next topic  
Author Message
jwfv
Valued Contributor
Valued Contributor


Joined: 19 Mar 2002
Posts: 422
Location: Beaufort, SC

PostPosted: Fri Mar 14, 2003 3:32 pm    Post subject: Non-VDS .Dlls in VDS5 Reply with quote

I see in the VDS5 discussions that version 5 will have the ability to use non-VDS .dlls. This ties in with a question I had about using the DLL that is provided with programs such as certain database servers. I was hoping that this would be a more reliable way (and simpler) to communicate with them than using ODBC.


But someone posted the warning that using this new function of VDS5 would be pretty difficult. Can anyone post any more information? I have used some VDS extension DLLs, and it worked well. Just issuing commands and getting results of functions. Would non-VDS DLLs be different?

Thanks,

Joe Floyd
Back to top
View user's profile Send private message
ACE
Valued Newbie


Joined: 05 Sep 2002
Posts: 34

PostPosted: Fri Mar 14, 2003 5:27 pm    Post subject: Reply with quote

I think that the procces of working with nonVDS dll will be pretty much like working with gadget.dll from Mindpower, you have to declare the fuctions to use, and declare or create the parameters(sometimes you have to make a fuction just to get a parameter) , but you have to deal with a lot of other data types like DWORDS, FLOATS, HANDLES, POINTERS to other data type and so. It will require a little extra steps (or a lot of steps), you cant just type the fuction name along with params and get the result in one line. But if VDS5 have acces to all the dlls, you end with a proggraming language. Check the gadget examples.


Lioric
Back to top
View user's profile Send private message
jules
Professional Member
Professional Member


Joined: 14 Sep 2001
Posts: 1043
Location: Cumbria, UK

PostPosted: Fri Mar 14, 2003 6:08 pm    Post subject: Reply with quote

I've not used Gadget since it's generally easy enough for me just to knock up a quick extension for any API call I want to access, but having briefly looked at the spec. of Gadget I'd agree.

Here's an example of a VDS 5 function to use the PostMessage API function:

Code:

#define command,postmsg
:postmsg
  LOADLIB USER32
  %H = @strdel(@winexists(%1),1,1)
  if %H
    %H = @lib(USER32,PostMessageA,bool:,int:%H,int:%2,int:%3,int:%4)
  else
    ERROR -1
  end
  exit

That probably looks simple enough, but it's one of the easy ones. Many of the most powerful API's need to work with data structures containing various different bits of information. VDS 5 does have some new functions that allow you to build a structure in a VDS variable and then pass its address to an API function. The trouble is, if you get things wrong calling an API function you won't get a nice error message in the debugger: more likely you'll crash VDS. So it can be hard work.

I'd say that the main use of the @lib function is to access simple things like PostMessage. But as I think someone pointed out earlier, it's possible to do things like FTP upload or download by calling the wininet.dll API.

_________________
The Tech Pro
www.tech-pro.net
Back to top
View user's profile Send private message Visit poster's website
FreezingFire
Admin Team


Joined: 23 Jun 2002
Posts: 3508

PostPosted: Sat Mar 15, 2003 1:33 am    Post subject: Reply with quote

Is VDS 5 able to call and use ActiveX/OCX objects/files? Confused
_________________
FreezingFire
VDSWORLD.com
Site Admin Team
Back to top
View user's profile Send private message Visit poster's website
FreezingFire
Admin Team


Joined: 23 Jun 2002
Posts: 3508

PostPosted: Thu Mar 20, 2003 1:07 am    Post subject: Reply with quote

And, since I'm not an advanced DLL programmer I don't know this:
How do you know what you're doing -- I mean, you can't possibly know
what commands/functions/APIs/etc. are inside it just by looking at it.

I'm confused. Confused

_________________
FreezingFire
VDSWORLD.com
Site Admin Team
Back to top
View user's profile Send private message Visit poster's website
SnarlingSheep
Professional Member
Professional Member


Joined: 13 Mar 2001
Posts: 759
Location: Michigan

PostPosted: Thu Mar 20, 2003 1:26 am    Post subject: Reply with quote

MSDN and APIViewer are a couple good resources:
MSDN(Fun to find your way through): http://msdn.microsoft.com
APIViewer: http://www.apiviewer.de.vu/

_________________
-Sheep
My pockets hurt...
Back to top
View user's profile Send private message Send e-mail
vdsalchemist
Admin Team


Joined: 23 Oct 2001
Posts: 1448
Location: Florida, USA

PostPosted: Thu Mar 20, 2003 1:50 pm    Post subject: Reply with quote

Hey a subject about VDS 5 I can sink my teeth into Wink Ok SnarlingSheep and FreezingFire if you goto MSDN's site and type a function name you can get all the information about that function. For a good listing of most of the Win32 API's functions you can look at http://www.vdsworld.com/~dragon_sphere/Win32hlp.zip Warning this is a pretty big file. Also to get a listing of the Win32 API in both Visual Basic and Gadget's syntax I wrote a converter that will convert VB to Gadget's syntax but the win32api.txt file has the list of API functions ya need. You can download this utility at my website http://dragonsphere.vdsworld.com Also that file has most of the constants listed as well which you will need. I will be updating it to work with VDS 5's syntax soon. So if you have some VB code that you got somewhere you will be able to convert it to VDS. I may be setting up a forum on my site to use as a workshop to help the VDS users learn to call NON-VDS DLL's. I will keep everyone posted about this.

Also note normal VDS dll's will still work with VDS 5.

Edited by FreezingFire to correct URL

_________________
Home of

Give VDS a new purpose!
Back to top
View user's profile Send private message Visit poster's website AIM Address Yahoo Messenger MSN Messenger
Mac
Professional Member
Professional Member


Joined: 08 Jul 2000
Posts: 1585
Location: Oklahoma USA

PostPosted: Thu Mar 20, 2003 3:59 pm    Post subject: Reply with quote

Is the link correct mindpower? Can't seem to get there from here...

http://dragonsphere.vdsworld.com/Win32hlp.zip

Cheers, Mac Smile

_________________
VDSug.dll does file IO, check/disable menu items,
non-VDS dlls, draw functions and more...
Free download (30k dll size) at:
http://www.vdsworld.com/download.php?id=361
Back to top
View user's profile Send private message Send e-mail
FreezingFire
Admin Team


Joined: 23 Jun 2002
Posts: 3508

PostPosted: Thu Mar 20, 2003 4:01 pm    Post subject: Reply with quote

Because of the way VDSWORLD hosts its subdomains, file requests are
not forwarded through.

You'll have to visit:

http://www.vdsworld.com/~dragon_sphere/Win32hlp.zip

Smile

_________________
FreezingFire
VDSWORLD.com
Site Admin Team
Back to top
View user's profile Send private message Visit poster's website
FreezingFire
Admin Team


Joined: 23 Jun 2002
Posts: 3508

PostPosted: Thu Mar 20, 2003 4:06 pm    Post subject: Reply with quote

Also, I talked to mindpower and set up a category on http://developer.vdsworld.com/
for calling non-VDS DLLs from VDS. Wink

So if you ever need help on that, visit the Developer Forum

_________________
FreezingFire
VDSWORLD.com
Site Admin Team
Back to top
View user's profile Send private message Visit poster's website
Mac
Professional Member
Professional Member


Joined: 08 Jul 2000
Posts: 1585
Location: Oklahoma USA

PostPosted: Thu Mar 20, 2003 4:09 pm    Post subject: Reply with quote

FreezingFire wrote:
Because of the way VDSWORLD hosts its subdomains, file requests are
not forwarded through.

You'll have to visit:

http://www.vdsworld.com/~dragon_sphere/Win32hlp.zip

Smile

Thanks FF Wink

_________________
VDSug.dll does file IO, check/disable menu items,
non-VDS dlls, draw functions and more...
Free download (30k dll size) at:
http://www.vdsworld.com/download.php?id=361
Back to top
View user's profile Send private message Send e-mail
vdsalchemist
Admin Team


Joined: 23 Oct 2001
Posts: 1448
Location: Florida, USA

PostPosted: Fri Mar 21, 2003 1:54 pm    Post subject: Reply with quote

Sorry about the address. I keep forgetting that. I don't know why we can't do that but it would be nice if we could Confused
_________________
Home of

Give VDS a new purpose!
Back to top
View user's profile Send private message Visit poster's website AIM Address Yahoo Messenger MSN Messenger
FreezingFire
Admin Team


Joined: 23 Jun 2002
Posts: 3508

PostPosted: Fri Mar 21, 2003 2:14 pm    Post subject: Reply with quote

I think it's because the subdomain point directly to VDSWORLD.com and
then special processing takes place. However, you can link to your files
through the subdomain by using something like the following:

http://dragonsphere.vdsworld.com/~dragon_sphere/Win32hlp.zip

_________________
FreezingFire
VDSWORLD.com
Site Admin Team
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic    forum.vdsworld.com Forum Index -> General Help All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You can attach files in this forum
You can download files in this forum

Twitter@vdsworld       RSS

Powered by phpBB © 2001, 2005 phpBB Group