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.

Author
Message
Ralen
23
Years of Service
User Offline
Joined: 22nd Jul 2003
Location:
Posted: 21st Nov 2003 06:28
I've read in some places that you can use the windows API.
I'm trying to use Winsock functions.

My main problem I don't understand the syntax of the commands.

load dll "wsock32.dll", 1

call dll(1, "connect", ???)

The connect function has 3 arguments, My question is how do I pass all three arguments that the connect string requires?

I've looked at all the samples. It appears that the DLL is being loaded. The function is being defind then the dll is close, but the function can still be called.

I've been practicing with DBpro for months now and this is one of the last things on my list I havn't quite figured out yet.
CattleRustler
Retired Moderator
22
Years of Service
User Offline
Joined: 8th Aug 2003
Location: case modding at overclock.net
Posted: 21st Nov 2003 07:12 Edited at: 21st Nov 2003 07:14
try here...
http://www.partware.com/ebooks/api/ref/c/connect.html

but I am not sure what winsock will get you (depending on what you are trying to do) as opposed to built in network commands in dbp.



-RUST-
Ralen
23
Years of Service
User Offline
Joined: 22nd Jul 2003
Location:
Posted: 21st Nov 2003 07:33
Thats the document I have been using as far as the API works.

My problem is, I can't get any WinAPI functions to work that have arguments to work.

I can get the ones without arguments to work just fine.


As far as what I hope to gain. The multiplay commands with DBPro are pretty limited on what they can do.

They use DirectPlay, which doesn't work for games where you have hundreds of players running around.

It also doesn't work very well to use the built in multiplayer functions when I want to connect to a system that isn't Windows.

It wouldn't be so bad if DBPro had functionality for Winsock as well as direct play.
OSX Using Happy Dude
22
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 21st Nov 2003 10:33
Quote: "They use DirectPlay, which doesn't work for games where you have hundreds of players running around"

Yes it does.

Quote: "It also doesn't work very well to use the built in multiplayer functions when I want to connect to a system that isn't Windows. "

And you are surprised at that?


Mirrors are more fun than television. Well, that was fun, in a not-so-fun sort of way...
Mussi
23
Years of Service
User Offline
Joined: 27th Jan 2003
Location: Netherlands
Posted: 21st Nov 2003 11:22 Edited at: 21st Nov 2003 11:24
I got a question about the build in multiplayercommands. does it sends some hidden information with each packet? cuz you can look up from whom you got the packet and stuff.if so, what is the total size in bytes of that?

Specs: AMD Athlon 1800, 256 DDRRam 266mhz, 80GB HD 7200rmp U133, Geforce 4 Ti4400 128mb ddr sdram
OSX Using Happy Dude
22
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 21st Nov 2003 11:26 Edited at: 21st Nov 2003 11:27
As for passing values to a DLL, just do it as stated - if its memory addresses, addresses of functions or pointers to structures that you need to pass, then you've got a problem, but for strings, integers etc there is no problem, eg :

call dll 1,"connect",1,2,a$

Mussi - I think it would be very hard to get hold of the packets send by DirectPlay...

By the way, IanM has got a socket routine somewhere.


Mirrors are more fun than television. Well, that was fun, in a not-so-fun sort of way...
IanM
Retired Moderator
23
Years of Service
User Offline
Joined: 11th Sep 2002
Location: In my moon base
Posted: 21st Nov 2003 14:07
The only stuff that I've released is the code to get your local IP addresses. For anything more complicated than that (or as complicated), I'd switch to writing a DLL.

I only did it to prove that it could be done

The Multiplayer commands do send hidden information, but not for the source of the data (that comes built-in to directplay). The extra information is stuff like the type of information and the size (eg 100 byte memblock, or 20 character string).
OSX Using Happy Dude
22
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 21st Nov 2003 14:33
Ah - keep forgetting you haven't done one... yet...


Mirrors are more fun than television. Well, that was fun, in a not-so-fun sort of way...

Login to post a reply

Server time is: 2026-07-26 15:30:27
Your offset time is: 2026-07-26 15:30:27