Zum Inhalt springen

Klotzkopp

Mitglieder
  • Gesamte Inhalte

    9912
  • Benutzer seit

  • Letzter Besuch

  • Tagessiege

    3

Alle Inhalte von Klotzkopp

  1. Hier ein Erfahrungsbericht von der Umstellung eines mittelgroßen Projekts (13,3 MB Quellcode) von VC 6 auf 7: Im Projekt gab es: - MFC (MDI) - WTL - ATL COM - ATL OLEDB Consumer Templates - OLE Container - Hosten von Script-Engines - Sockets - Komprimierung (in/deflate) - Crypting (Windows Provider) - Multithreading Folgende Probleme traten auf: Allgemein: VC 7 lässt es einem nicht durchgehen, wenn man auf statische Member mit Klasse.Member zugreift. VC 7 mag auch offenbar in .def-Dateien keine DESCRIPTION oder @[Zahl] bei exportierten Symbolen. Die HtmlHelp-Funktion hat nur noch zwei Parameter. Einige Strukturen im Zusammenhang mit RichEdit-Controls (z.b. CHARFORMAT) werden unter VC 6 trotz #define UNICODE als ANSI kompiliert. Unter VC 7 sind sie dann aber UNICODE. MFC: Einige MessageMap-Einträge enthielten Handler, die void oder UINT waren. VC 7 hätte da gerne LRESULT als Rückgabewert. Die Position einiger interner MFC-Header hat sich verändert. ATL OLEDB Consumer Templates: Das unter VC 6 "selbst definierte" Makro COLUMN_ENTRY_TYPE_STATUS war unter VC 7 vorhanden, hatte aber die Reihenfolge der Parameter vertauscht. Komprimierung / STL In der dynamischen Deflate-Implementierung wurde ein reverse_iterator<unsigned int*> benutzt, von dem man aber unter VC 7 keine Instanz erzeugen konnte. Zusammenfassung: Die meisten Probleme ließen sich durch geringfüge Codekorrekturen lösen, in einigen Fällen waren Compilerversionprüfungen mit #if/#else/#endif notwendig (z.B. RichEdit-Strukturen), und den dynamischen Deflate-Code habe ich einfach rausgenommen, weil statische Komprimierung an der Stelle völlig ausreichte.
  2. Hatten wir schon mal: http://www.fachinformatiker-world.de/forums/showthread.php?s=&threadid=12837
  3. InitCommonControlsEx aufgerufen?
  4. Also, das hier läuft: #include <windows.h> #include "resource.h" HWND hMainWindow; INT_PTR CALLBACK MainProc( HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam ) { switch( uMsg ) { case WM_COMMAND: switch( wParam ) { case IDCANCEL: PostQuitMessage( 0 ); break; default: break; } break; default: break; } return 0; } APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { MSG Msg; hMainWindow = CreateDialog(hInstance, MAKEINTRESOURCE(IDD_DIALOG1 ), 0, MainProc); ShowWindow(hMainWindow,nCmdShow); while(GetMessage(&Msg,0,0,0)) { TranslateMessage(&Msg); DispatchMessage(&Msg); } return Msg.wParam; } [/CODE]
  5. Ich hab das hier mal nachgebaut, und es funktioniert. Was liefert GetLastError denn zurück?
  6. Hast Du die .rc-Datei dem Projekt unter "Source Files" hinzugefügt?
  7. if(hMainWindow == NULL)
  8. Nochmal: Hast Du eine Nachrichtenbehandlungsfunktion für TVN_DELETEITEM erstellt? Wenn ja, was steht drin? Der MessageMap-Eintrag sollte in etwa so aussehen: ON_NOTIFY(TVN_DELETEITEM, IDC_TREE1, OnDeleteitemTree)
  9. Sicher geht das einfacher. Aber daraus lernt man ja nichts. So wie ich den Algorithmus verstanden habe, wird der Exponent n als Dualzahl interpretiert. Die Prüfung auf ungerade ist der Test, ob an der gerade verarbeiteten Dualstelle des Exponenten eine 1 oder eine 0 steht. Die Division durch zwei wechselt dann zur nächsten Dualstelle. k wird sozusagen bitweise bearbeitet, vom niederwertigsten Bit angefangen. Ist k zu Anfang ungerade, enthält die Potenz den Fakter x hoch 1, also wird der reinmultipliziert. k wird eventuell vermindert und halbiert, und der Stellenwert der Potenz durch Quadrierung verdoppelt auf x hoch 2. Ob dieser Faktor im Ergebnis enthalten ist, hängt davon ab, ob k jetzt wieder ungerade ist. Beim Beispiel 5 ist k nach dem ersten Durchgang (5-1)/2 = 2, also gerade, damit ist x hoch 2 nicht enthalten. Der "Stellenwert-Faktor" wird wieder quadriert, also x hoch 4, und jetzt ist k wieder ungerade (nämlich 1), also ist x hoch 4 enthalten, und wird reinmultipliziert. Danach ist k Null, und wir sind fertig. Das Ergebnis ist also x hoch 1 mal x hoch 4 gleich x hoch 5.
  10. ... Amroth beheld the fading shore Now low beyond the swell, And cursed the faithless ship that bore Him far from Nimrodel Of old he was an Elven-King, ... Frage ich mich auch. Wenn es um alle geht, die auch nur erwähnt werden, kann man gleich die Stammbäume des Silmarillion runterbeten AFAIK waren die zwei Menschen...
  11. Sind in der Adresse irgendwelche Sonderzeichen? Was ist das für ein Mailserver?
  12. ? Wie gesagt, mach einen Doppelpunkt nach dem from.
  13. Hast Du ein HELO oder EHLO abgesetzt? Versuch mal, die Mailadressen in spitze Klammern zu setzen.
  14. Du gibst das doch hoffentlich nicht alles in einer Zeile ein?
  15. Du machst nach "mail from" keinen Doppelpunkt.
  16. Du kannst als lokalen Port 0 angeben, dann sucht sich Windows selbst einen freien Port zwischen 1024 und 5000.
  17. @Net-srac: Du musst nicht jedesmal denselben lokalen Port verwenden. Wenn Du unterschiedliche verwendest, klappt es problemlos.
  18. Ohne das wird's nicht gehen. Ich würde eine rekursive Funktion empfehlen.
  19. Hast Du einen Handler für TVN_DELETEITEM? Wenn ja, was steht drin?
  20. Set ol = GetObject( ,"Outlook.Application" )
  21. 'Tool' ist etwas übertrieben copy L101????.txt gross.txt
  22. *VBrauskram* Private Function kgv(a As Integer, b As Integer) If a < b Then l = a h = b Else l = b h = a End If i = h Do If i Mod l = 0 Then kgv = i Exit Do End If i = i + h Loop End Function[/CODE]
  23. Das wird der Compiler zwar akzeptieren, aber das wird nicht funktionieren. variablenname=GetLastError();
  24. Was gibt WritePrivateProfileString zurück? Was gibt GetLastError zurück?
  25. Klotzkopp

    kgv

    Wer lesen kann, ist klar im Vorteil Forum: Delphi/VB/VBS/AS 400/C#/.net/Sonstige --> Thema geschlossen.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...