Avatar billede speedy Nybegynder
20. juni 2000 - 20:23 Der er 10 kommentarer og
3 løsninger

Send BMP over netværk

Hej

Jeg har lavet et chat-program som sender over netværket med tcp/ip, så det virker også på nettet. Jeg vil gerne kunne sende en bitmap med nogle gange.

Men hvordan gør jeg det nemmest. Lige nu har jeg prøvet at lægge hver enkel pixel i bitmappen ind i en string, der er kommasepareret, men det er lidt amatør-agtigt, og det virker heller ikke ;-)

Så hvorledes skal man gøre dette ? Jeg bruger komponenterne fra Delphi 5 under tab'en fastnet der hedder NMMsgServ og NMsg

Det med teksten virker fint. Men billederne er ikke glade ;-)

/SpEeDy
Avatar billede pellelil Nybegynder
20. juni 2000 - 21:28 #1
Du skriver du bruger FastNet, så jeg vil ummidelbart gætte på at du bruger en TPowerSocket. Hvis du kan sende "chat" så kan du også sende andet data. Du kan således vælge at bruge en "styrrekode" til at sige "nu kommer der en fil" og eller yderligere styrekoder der indeholder filnavnet og/eller filen størrelse. Når dette er overført er det "bare" at sende "filen" (din bitmap). Der er ingen grund til at "pakke" denne ind i kommaseperationer, men send derimod filen byte for byte

For at dette komer til at virke skal du "opfinde en protokol" således at modtageren ved hvornår den modtager tekst (chat) og hvornår den er ved at modtage en fil. Ligeledes skal du også holde rede på om hele filen er sendt. Med hensyn til filen kan du evt. beregne dennes CRC32 værdi og sende den (samme med filen) hvis modtageren ikke opnår samme CRC32 så er filen ikke afsendt korrekt. Dette bliver først rigtigt "brugbart" når du bidder din fil op i flere "pakker" også lader afsender/modtager tale sammen (via protokollen) om alle pakkerne når frem på fornuftig.

Hvis du kunder OSI modellen vil du vide at TCP/IP suiten benytter en protokol til at se om de enkelte TCP pakker når frem, men du er nødt til at lægge noget intelligens ("protokol") på application's laget for at styre dette

Og så dog...

Jeg har ikke prøvet men du burde kunne lave en FTP Client/server evt ved hjælp af ICS (freeware pakken) der kan downloades fra flg. adresse: http://users.swing.be/francois.piette/indexuk.htm

Avatar billede borrisholt Novice
21. juni 2000 - 00:15 #2
Hej Speedy

Jeg kan fuldt og helt tilslutte mig pellelil svar. Francois Piette laver nogle geniale komponenter til internettet og til fastnen, generelt må man sige at han har styr på sin kode.

Jeg kan levere dig (og andre) noget DELPHI kode til beregning af CRC32 og CRC16 på en fil. Skriv til mig hvis du skal bruge det ...

Jens B
Avatar billede borrisholt Novice
21. juni 2000 - 00:17 #3
Øøøh... hov hvad med at kompromere skittet inden du sender det ? Og hvad med kryptering ? Har du tænkt på det ?

Jeg har også kode til det hvis det var noget ?

Jens B
Avatar billede speedy Nybegynder
21. juni 2000 - 15:25 #4
Jeg bruger ICS pakken til at "ping'e" med. Men ellers har jeg ikke brugt ICS.

Pellelil>> du formoder at jeg bruger TPowerSocket. Det gør jeg ikke. Jeg bruger, som jeg skrev i første indlæg, NMMsgServ og NMsg.

Borrisholt>> Jeg vil gerne have lidt kode, men kryptering er ligegyldigt. MEn hvis du har det vil jeg da gerne se det :)

Tak for hjælpen

/SpEeDy
Avatar billede pellelil Nybegynder
21. juni 2000 - 16:00 #5
Jeg prøver igen (eksperten er ikke "tilfreds" med míne posteringer).

>Speedy: Jeg beklager at jeg ikke læste det hele, men sådan går det "når musikken spiller". ICS pakken er "bestemt ikke helt dum". Jeg har ikke rodet yderligere med FTP Client/Server (andet end at jeg har kigget på eksemplerne), men det er nok den nemmeste måde hvorpå du kan få håndteret din "BMP-sending" (med mindre du er helt vil for at skrive din egen fil overførsels protokol). Jeg vil udlade at fortælle dig mere om CRC32 eftersom det ser ud til at borrisholt håndtere denne sag. Alt efter hvor mange og hvor store filer du regner med at komme til at arbejde med ville jeg nok vælge at kigge nærmere på borrisholt's komprimering (navnlig hvis disse skal sendes via "nettet")

Borrisholt> Hvis du ikke har noget i mod a "smide sourcen på banen" vil jeg gerne kigge lidt mere på din komprimering (er det Winzip kompatibelt eller er det et eller andet "proporitært format"). Du har min adresse og kan sende det hvis du vil ? (eller lader du bare være - helt op til dig <G>).
Avatar billede speedy Nybegynder
21. juni 2000 - 16:32 #6
pellelil>> Bitmappen er kun 16*16 pixels, så det skulle vel være lige til at overkomme på et par sekunder over nettet. IK ?

P.S. Jeg har en komponent, der kan pakke, udpakke, lave selfextracter osv. med zip. Jeg kan da sende den til dig hvis du ønsker. Den er rigtig nem at bruge, og zip-filerne er fuldstændig kompatible med winzip. Den er kanon, og den er freeware !!

/SpEeDy
Avatar billede hand Nybegynder
21. juni 2000 - 16:37 #7
Hey SpEeDy kan du ikk også sende den til mig ?

hand
tws@jubiipost.dk
Avatar billede pellelil Nybegynder
21. juni 2000 - 16:38 #8
Ja når vi taler 16*16 så ville jeg heller ikke gøre noget ved komprimering.

Hvis dine komprimerings komponenter er med fuld source vil jeg gerne se dem (eller er jeg ligegald): pellelil@post4.tele.dk

Avatar billede borrisholt Novice
21. juni 2000 - 17:08 #9
Hej speedy

Jeg vil da også gerne modtage det det zip sjob hvis det er open source ... Min e.mail er Jens@borrisholt.com

Jens B
Avatar billede speedy Nybegynder
21. juni 2000 - 17:57 #10
Avatar billede speedy Nybegynder
21. juni 2000 - 18:01 #11
Jeg ved ikke "Helt" hvad du mener med opensource ? Men der er pas-filerne med. Men der er også to dll-filer, som skal ligge i system-biblioteket før at man kan bruge komponenterne. Dem skal man jo bare lægge ind under installation af program. btw er en af mine programmeringsvenner ved at lave et alletiders freeware zip-program ;-) (Det er jo faktisk en fuldstændig ligegyldig oplysning, men jeg kunne ikke holde mund ;-)

Jeg håber der kommer en løsning til mit problem !

/SpEeDy
Avatar billede pellelil Nybegynder
21. juni 2000 - 18:17 #12
Opensource vil kort og godt sige at HELE sourcen er frit tilgængelig og du har lov til at ændre/bruge den sålænge at sourcen forblive tilgængelig (for alle / uden betaling): http://www.opensource.org/  http://www.gnu.org/ 
Avatar billede speedy Nybegynder
24. juni 2000 - 22:54 #13
Øv, jeg har desværre ikke fået løst mit problem. :(

/SpEeDy
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB