Alle Beiträge von Klotzkopp
-
Laufwerke und ihre Buchstaben
char pszVolume[200]; GetVolumeInformation( "D:\\", pszVolume, 199, NULL, NULL, NULL, NULL, 0 );
-
streams, files und hex-Zahlen
aout.width( 4 ); aout.fill( '0' );
-
Programm für Farbcodes
Machs doch mit HTML: <html><body bgcolor=#a040f0></body></html>
-
CString als char?
CString::GetAt und CString::operator[] sind identisch. Sie machen nur Assertions auf ungültige Indices, also hast Du Recht: Man sollte vorher die Länge prüfen.
-
vernünftige Anleitung -> C++ Datenbankzugriff
Leider nicht. Standard-C/C++ weiß nichts von Datenbanken oder Tabellen. Die Vorgehensweise hängt davon ab, welche Datenbank-API Du verwendest. Welche API Du verwenden kannst, häng wiederum von der Plattform und der verwendeten Datenbank ab. Eine allgemeingültige Lösung gibt es da nicht. Nachtrag: Ich sehe, Du machst ODBC mit Visual C++. Dann schiebe ich Dich mal ins richtige Forum. Thema verschoben nach: C++: Compiler, IDEs, APIs
-
Dialogfeld mit RichEdit
Vermutlich am fehlenden AfxInitRichEdit-Aufruf.
-
CString als char?
Ja. Aber ich arbeite dann mit einer "legalen" Kopie. Das ist doch nach wie vor dasselbe Problem. Du castest das const raus, und hast damit undefiniertes Verhalten. Dass das bei CString und Deinem Compiler funktioniert, ist reines Glück. Ein Beispiel:LPCSTR p = "x"; char& w = (char&)(*p); w = 'y';[/CODE]Was macht das bei Dir? Diese Art von Synchronisierung kann aber nicht legal funktionieren, weil CString keine nicht-const-Referenzen rausgibt, sondern nur Kopien oder const-Zeiger. Jeder schreibende Zugriff auf den CString kann den Zeiger, den der LPCSTR-Operator zurückgegeben hat, ungültig machen, und dann hast Du eine ungültige Referenz.
-
CString als char?
- CString als char?
char c = DeinCString[0];- 2 Bildervergleichen
Kein Problem. Wir hatten die Details des Problems per ICQ geklärt. Kannst Du ja nicht wissen.- Problem bei Client-Server Anwendung
Ich vermute einen Timeout seitens des Servers. Was passiert, wenn der Server anstelle des Datenbankzugriffs einige Sekunden wartet?- >> operator überladen
Die Begrenzung auf 100 Zeichen ist willkürlich. Ich würde folgendes empfehlen: friend istream& operator>>(istream& _in, MyString& s) { delete s.string; s.string = NULL; std::string temp; _in >> temp; int len = temp.size(); if( len ) { s.string = new char[len+1]; strcpy( s.string, temp.c_str() ); } return _in; }[/CODE]- Suche Software, die aktuellen Bildschirm filmt
http://fachinformatiker-world.de/forums/showthread.php?s=&threadid=25093- Zahlenwerte als Grafiken darstellen???
Standard-C/C++ kann das überhaupt nicht. Welche Methoden Du verwenden kannst, hängt davon ab, für welche Plattform und mit welchem Compiler bzw. welcher Entwicklungsumgebung Du arbeitest. --> Thema verschoben nach: C++: Compiler, IDEs, APIs- 2 Bildervergleichen
Nachtrag: GDI+ ist AFAIK bei Windows XP enthalten. Für Windows NT4 SP6, Windows 2000, 98 und ME kann man es hier bekommen: http://www.microsoft.com/downloads/release.asp?releaseid=32738- 2 Bildervergleichen
Falls GDI+ zur Verfügung steht, geht das relativ einfach. Hier eine Beispiel-Konsolenanwendung: // GDI+ #include <windows.h> #include <gdiplus.h> using namespace Gdiplus; #pragma comment( lib, "gdiplus.lib" ) // für cout #include <iostream> using namespace std; int main() { // GDI+ initialisieren GdiplusStartupInput gdiplusStartupInput; ULONG_PTR gdiplusToken; GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL); // Scopeklammern, damit alle Objekte vor GdiPlusShutdown zerstört sind { Bitmap bm1( L"C:\\kk.gif" ); Bitmap bm2( L"C:\\kk2.gif" ); if( bm1.GetWidth() != bm2.GetWidth() || bm1.GetHeight() != bm2.GetHeight() ) { // Unterschiedliche Abmessungen cout << "Die Bilder haben unterschiedliche Abmessungen." << endl; cout << "Es wurde kein Vergleich durchgeführt." << endl; } else { int nDifferentPixels = 0; Color color1, color2; for( int x=0; x<bm1.GetWidth(); ++x ) { for( int y=0; y<bm1.GetHeight(); ++y ) { if( Ok == bm1.GetPixel( x,y, &color1 ) && Ok == bm2.GetPixel( x,y, &color2 ) ) { if( color1.GetValue() != color2.GetValue() ) { ++nDifferentPixels; } } } } cout << "Unterschiedliche Pixel: " << nDifferentPixels << endl; } } GdiplusShutdown(gdiplusToken); return 0; } [/CODE]- Wie kann ich den Runtime Error von xp abschalten
Ein Laufzeitfehler r6025 ist ein rein virtueller Funktionsaufruf. Dagegen kann man nichts machen. Die Software, die Du einsetzt, ist fehlerhaft oder nicht mit Windows XP kompatibel. Bei welchen Programmen passiert es denn genau?- Routen über 2 Netzkarten
Aber ich: http://fachinformatiker-world.de/forums/showthread.php?s=&threadid=36696&werbeid=17 --> Thema geschlossen.- Directory Dialog
Hast Du Argbeils letzten Beitrag gelesen?- C++ Header aus einer DLL Datei
http://msdn.microsoft.com/msdnmag/issues/02/02/PE/default.aspx- Directory Dialog
Ähh...- Tastenkombinationen
Das funktioniert bei allen Dateien und Ordnern im Explorer, und auch bei vielen anderen Programmen. Hatten wir eigentlich schon Strg-Umschalt-Esc? Zeigt unter NT/2000/XP den Taskmanager an.- Zwei Vektoren übergeben
@Guybrush Threepwood & maxim_42: Probiert es doch einfach aus. Es geht übrigens beides nicht.- Directory Dialog
As Far As I Know: Soweit ich weiß- Directory Dialog
Die MFC bieten diese Funktionalität AFAIK nicht. Über die WinAPI kann man es mit SHBrowseForFolder machen, das hatten wir hier auch schon ein paar mal. Aber das wollte Argbeil ja auch nicht... - CString als char?