Visual Basic Forum

Visual Basic Forum
für VB6 und VB.NET Programmierer
 
RegistrierenRegistrieren  LoginLogin

Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB6] Fragen - Antworten
Autor
Nachricht
nicok
Poster
Poster

Anmeldedatum: 15.05.2008
Beiträge: 161

2 Bilder vergleichen -XOR
Verfasst am: 08.04.2009, 22:24

Hallo,


ich möchte 2 Bilder miteinander vergleichen.
Rauskommen soll eine Art Fernwartungs/Desktop-Dienst ala Teamviewer und VNC.

Bin schnell draufgestoßen das man alle Pixel XOR'en soll.
Ich habe es soweit verstanden das wenn ich 2 gleiche Werte XOR'e, ich als Ergebnis 0 erhalte,
wenn ich 2 unterschiedliche Zahlen XOR'e bekomm ich eine bestimmte Zahl heraus.

Soweit so gut;

aber wie speicher ich die Menge an Zahlen denn ab?
Ich kann ja nicht alles in eine String-Variable packen und dann versenden, dann bräuchte ich ja immer ein Trennzeichen (was den Traffic ja nur größer macht).

Also wie speicher ich meine XOR-Salat ab, sodass ich ihn später versenden kann?
_________________
 
igoe
Gast





Verfasst am: 09.04.2009, 08:49

Du kannst doch aber ein Array nehmen, und und immer 60.000 bytes auf einmal verschicken.
 
nicok
Poster
Poster

Anmeldedatum: 15.05.2008
Beiträge: 161


Verfasst am: 09.04.2009, 09:06

Genau das Prinzip versteh ich noch nicht so ganz.

Also wenn ich ein Array nehme (String-Array?) dann hab ich ja immer verschiedene Elemente
Zb.

MyArray(1)
MyArray(2)
...


Speicher ich jetzt jedes Pixel in einen neuen Element ab?
Dann hab ich ja später tausende Elemente.

Schick ich dann jedes Element einzeln?
Das Problem ist doch wenn ich alles auf einmal schicke, das auf der anderen Seite ich nur den "zusammengeschmissenen" Haufen von Pixel hab.
Zb kommt doch dann sowas in der Art heraus:

102530110

Jetzt weiß ich aber zb nicht ob das erste Pixel die Zahl 1 ist oder 10 oder 102
 
igoe
Gast





Verfasst am: 09.04.2009, 09:38

Ein Array Deklariest du so "dim Arrayname () as string"
Dann kannst du es so füttern: " Arrayname (1)="Hallo!" "

Und das mit den bytes, da benutzt du einfach die Funtion "Len"

Bespiel:
Text1 = Len( "Inhalt.") < Liefert 7, da 7 zeichen in dem Array sind.

und das mit den Trennzeichen:
Du machst es einfach so.

Wenn du weist, wieviele eINTRÄGE DIEN array hat, dan
machst du eine schöleife und nimmst I immer als Array Position.

Hallo123=hall123 & meinarray(i) & "#"

Wenn du das wieder auslesen willst machst du eine Spilt Funktion.

Wenn du noch hilfe brauchst kannste dir ja meine PM angucken.

igoe
 
nicok
Poster
Poster

Anmeldedatum: 15.05.2008
Beiträge: 161


Verfasst am: 09.04.2009, 09:48

Danke.

Ich Frage mich aber nur ob ich gerade dieses Trennzeichen umgehen kann, da es die Größe ja nurnoch hochsprengt.


Außerdem versteh ich nicht warum ich ein Array benutzen soll.
Das ganze lässt sich doch auch mit einer einzelnen String-Variable mache, oder?
 
igoe
Gast





Verfasst am: 09.04.2009, 10:39

Das gute an den Trennzeichen ist ja eigentlich nur das du mehr auf einmal schciken kannst. ^^
Weil du ja mit Lne() genau 60.000 bytes einliest, und so kann das Winsock das noch verschicken.

igoe
_________________


 
nicok
Poster
Poster

Anmeldedatum: 15.05.2008
Beiträge: 161


Verfasst am: 09.04.2009, 10:58


Mhh gibt es noch eine andere Möglichkeit ohne Trennzeichen?
 
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB6] Fragen - Antworten

Tags: pixel xor, vergleichen, bilder

 
 Verwandte Themen   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Desktop Pfad , Programm Ordner Pfad ,wie finde man ihn raus 2412 02.03.2008, 14:19
Keine neuen Beiträge zahlen 1 zu 0001 umwandeln 299 24.11.2007, 14:04
Keine neuen Beiträge Addieren von Zahlen 576 22.08.2007, 19:36
Keine neuen Beiträge Zufällige Zahlen 690 29.06.2007, 14:08
Keine neuen Beiträge Aus text zahlen.. 561 30.05.2007, 14:09
 



[ Time: 0.2806s ][ Queries: 107 (0.0269s) ][ GZIP on - Debug on ]