-
Gesamte Inhalte
239 -
Benutzer seit
-
Letzter Besuch
Inhaltstyp
Profile
Forum
Downloads
Kalender
Blogs
Shop
Beiträge von Diablo999
-
-
Einfach mal in die MSDN reinschauen:
CreateIcon
Wenn noch fragen, hier melden
-
Jo, ist auf jeden fall verständlich, aber war ja nach flache und tiefe Kopie
bei der OOP gefragt :floet: :floet: :floet:
Gruß
Diablo999
-
Also, es gibt ja zu jeder Klasse einen CopyKonstruktor, der wird aufgerufen wenn
du z.B. ein Objekt einem anderen zuweist:
class Klasse1 { private: int Member1; char* Member 2; .... } int main() { Klasse1 o1(1000, "Teststring"); Klasse1 o2(o1); // Hier wird der Copykonstruktor des Objektes o2 aufgerufen }
Der Standardmäsige Copykonstruktor macht nichts anderes als alle members von
dem einen in das andere Objekt zu übernehmen. Angnenommen der Konstruktor von
Klasse1 füllt die Variable Member1 mit der übergebenen Zahl und allociert Speicher
für den übergebenen String und sichert den Pointer in Member2 dann kopiert der
Standard Copykonstruktor die Inhalte der Variablen Member1 und member2 in o2.
Jedoch zeigen jetzt die beiden Pointer, also in o1 und o2 auf den gelcihen String.
Wenn du allerdings Objekte als Members der Klasse definiert hast wird rekursiv natürlich
deren CopyKonstruktor aufgerufen :-)
==> Dieser Verfahren nennt man Flat Copy
Soll jetzt aber der String auch mitkopiert werden muss man sich selbst nen
Copykonstruktor schreiben der eben Speicher allociert und den String aus
o1 kopiert.
==> Dieses Verfahren nennt man Deep Copy
Hoffe das ist einigermaßen Verständlich
Gruß
Diablo999
PS: Das wär doch was fürs FAQ???
-
Gehts hier nur um C oder auch um CPP, wenn ja dann wäre
vielleicht new und delete noch interessant :floet:
Ansonsten echt super fürs FAQ
Gruß
Diablo999
-
Wie hast du das Bild den in der DB gespeichert?
Als JPG einfach rein? Was fürn Format?
Wenn das Bild einfach nur Binär in der Datenbank liegt und du es ausliest bekommst du ja nur die Binärdaten -> Kannste nicht casten...
Entweder, wenn du ein BMP verwendest kannst du die einzelnen Bits (bei der Win32 API) mit SetDIBits in ein Bitmap schreiben
Oder aber du erstellt mit CreateFileMapping ein MemoryMapping mit genau der Größe deiner Binärdaten und kopierst diese dann da rein, vergibst noch nen schönen Namen und kannst dann einfach das Bitmap aus dem MemMap laden :-)
Geht bestimmt auch nochn bisschen einfacher, jhabs auch net ausprobiert sondern schlag bloß vor wies gehen könnte!
Gruß
Diablo999
-
Wie wäre es mit CreateProcess, damit kannst du ne beliebige EXE starten, wie du den Rückgabewert empfängst weiß ich leider auch nicht...
Gruß
Diablo999
-
Als kostenlosen Virenscanner kann ich dir den AntiVir empfehlen, hatte
damit bisher eigenltich nur gute Erfahrungen...
Link: http://www.antivir.de/
Du wirst auf dem Rechner sicherlich XP verwenden? Wenn ja ist es auf
jeden Fall von Vorteil wenn du alle erforderlichen Securityupdates von MS
schon vor der Installation runterlädst und auf ne CD brennst. Im Moment
reichen manchmal schon die 10min Internet um die Updates zu laden um sich nen
Virsu einzufangen...
Firewall hab ich auch auf meinem Linuxrouter, verwende aber zusätzlich noch
Zonealarm, kann die aber nur bedingt empfehlen, hat bei mir manchmal aussetzer
und sperrt Programe die eigentlich freigeschaltet sind und sowas :-)
Gruß
Diablo999
-
Hab ein Suse9 mit Vanilla Kernel 2.6.2
seit dem enuen Kernel stellt sich die Soundlautstärke immer auf 0 zurück.
Wie oder wo kann ich denn die Laustärke beim booten festlegen?
thx
Diablo999
-
Wenn mans genau nimmt, nicht
Klasse.Methode()
sondern
Instanz.Methode()
Eine Klasse kann man sich wie eine Vorlage vorstellen, bzw. wie einen Datentypen, ein Objekt ist dann eine Variable vom Typ "KlasseXY" und wird auch Instanz der Klasse genannt.
Zu dem Set ein kleines Beispiel:
Dim x as long x = 0 ' Der Variablen x wird der Wert 0 zugeordnet Dim y as KlasseXY Set y = new KlasseXY ' new erzeugt eine neue Instanz der Klasse und wird der Variablen y zugeordnet Set y = nothing ' y wird auf leer gesetzt was widerum impliziert das die Instanz der Klasse die in y hinterlegt war gelöscht wird
Du kannst dir eine Variable die als Klasse definiert ist vorstellen wie einen Zeiger auf diese und deshalb muss beim Zugriff eben dieses Set verwendet werden..
Hoffe die erklärung hilft dir!
Gruß
Diablo999
-
Nee, kein Ripper, will blos ne Doku offline lesen und nicht ständig online gehen :D
Gruß
Diablo999
-
Saucool, wget ist genau das was ich brauch
thx
-
Will wie gesagt ne komplette Webseite runterladen bzw. halt offline verfügbar machen, wie kann ich das?
Bzw. was gibbet da für Tools?
thx
Diablo999
-
Schau dir mal das hier an, müsste genau das sein was du suchst:
Diablo999
-
Wenn du den Hook nur für deinen eigenen Thread startest, also mit GetCurrentThreadID
die ThreadID ermitteltst und diese an SetWindowsHookEx übergibst müssten alle Hooks laufen
aber halt nur für deinen Thread...
Gibt aber wie du sagst ein paar Hooks die nur global laufen und die gehen dann halt nicht
z.B. WH_JOURNALPLAYBACK
Bei Systemweiten Hooks ist zwingend eine DLL notwendig, geht aber nicht mit VB, geht nicht
mit ner ActiveX DLL.
Gruß
Diablo999
-
Und wenn du die Meldungen des gesamten Systems abfangen willst kommst
du nicht um eine DLL herum :D
-
Du übergibst als ThreadID die 0, das bedeutet das der Hook auf alle
Threads im System angewendet werden soll
-> Das geht aber nur wenn die Funktion auf die der 2.Parameter zeigt
innerhalb einer DLL liegt, deine Funktion liegt aber in deinem Programm
und kann somit nicht in den fremden Speicherbereich geladen werden...
Wenn du die Meldungen für deinen eigenen Prozess abfangen willst
übergib die aktuelle ThreadID :floet:
Gruß
Diablo999
-
grml:eek:
-
int random :: getRandom ( int iMax) { srand( 1000); return (int) ( (double)rand() / (double)RAND_MAX) * (double) iMax ); }
So sollte es gehen...
Gruß
Diablo999
EDIT
srand ist nur zum initialisieren des Zufallszahlengenerators, kann man jede beliebige Zahl nehmen
jedoch erhält man dann auch immer die gleichen Zufallszahlenreihen, deshalb kann man da
z.B. praktischerweise die Zeit nehmen....
-
Es funktionieren sop ziemlich alle Module bis auf der Soundtreiber und ich
glaub der für USB, Firewire etc.
Ansonsten geht alles
Aber immerhin funktioniert es wenn ich es fest in den Kernel reinhaue :bimei
Ach, da fällt mir noch was ein, beim upgrade von 2.4er auf 2.6er hab ich die
modprobe.conf aus meiner damaligen modules.conf mit diesem Script
makemodprobe.conf oder so ähnlich automatisch erstellen lassen...
Gruß
Diablo999
-
Mal wieder ein Problem:
Wenn ich meinen Kernel (2.6.2) neu übersetze und boote geht der
XServer nimmer, ich muss immer erst das NVIDIA Kernelmodul neu
erstellen mit dem Script das NVidia ausliefert.
Kann mir jemdan erklären warum das so ist?:confused:
Und gibst ne Möglichkeit das das Modul beim übersetzen des
Kernels automatisch mitcompiliert wird?
Danke
Diablo999
-
Hab jetzt des komplette ALSA mit in den Kernel reingebaut, und siehe da
es geht...:hodata
Aber wie kann ich denn jetzt nachschauen wie das Modul heiß damit ich es
als Modul übersetzen kann?
Gruß
Diablo999
-
Hmm, sind beide als Module übersetzt...
Keine Ahnung woran das liegen könnte
Auch das Ausführen von alsaconf hilft mir nicht weiter,
der findet meine Soundkarte nicht...
Weiß ncoh einer Rat, was da jetzt kaputt sein könnte?
Hab übrigens den alten Soundkartentreiber entfernt da dieser
nicht mit dem 2.6er kernel kann, bzw. konnte der beim booten
nichtgeladen werden
Gruß
Diablo999
-
Hab bei mir SuSE 9 drauf, und hab jetzt mal den
2.6.2er Kernel installiert, also von kernel.org runtergeladen
configuriert und compiliert...
Kann den Kernel auch booten aber es geht kein Sound.
Beim 2.6er Kernel ist ja irgendwie des ALSA mit dabei, habs auch
mit eingebunden
Und wenn ich versuche das Modul "snd-via82xx" per hand, also
mit modprobe zu laden bekomme ich lauter Fehler
WARNING: Error inserting snd (/lib/modules/2.6.2/kernel/sound/core/snd.ko): Unknown symbol in module, or unknown parameter (see dmesg) WARNING: Error inserting snd_seq_device (/lib/modules/2.6.2/kernel/sound/core/seq/snd-seq-device.ko): Unknown symbol in module, or unknown parameter (see dmesg) WARNING: Error inserting snd_rawmidi (/lib/modules/2.6.2/kernel/sound/core/snd-rawmidi.ko): Unknown symbol in module, or unknown parameter (see dmesg) WARNING: Error inserting snd_mpu401_uart (/lib/modules/2.6.2/kernel/sound/drivers/mpu401/snd-mpu401-uart.ko): Unknown symbol in module, or unknown parameter (see dmesg) WARNING: Error inserting snd_ac97_codec (/lib/modules/2.6.2/kernel/sound/pci/ac97/snd-ac97-codec.ko): Unknown symbol in module, or unknown parameter (see dmesg) WARNING: Error inserting snd_timer (/lib/modules/2.6.2/kernel/sound/core/snd-timer.ko): Unknown symbol in module, or unknown parameter (see dmesg) WARNING: Error inserting snd_pcm (/lib/modules/2.6.2/kernel/sound/core/snd-pcm.ko): Unknown symbol in module, or unknown parameter (see dmesg) FATAL: Error inserting snd_via82xx (/lib/modules/2.6.2/kernel/sound/pci/snd-via82xx.ko): Unknown symbol in module, or unknown parameter (see dmesg)
Wenn ich dmesg ausführe zeigt er mir auch lauter Fehler "Unkown Symbol" an
Kann mir da jemand helfen?
Gruß
Diablo999
-
Da fällt mir auch ein guter Sprich zu ein:
Hubraum ist durch nichts zu ersetzen, außer durch noch mehr Hubraum!!!
:D
Gruß
Diablo999
Tiefe und Flache Kopie
in C und C++
Geschrieben
*grmpfl*
:bimei :bimei