L-Wert-Frage beim Thema Bild anzeigen.



  • Hallo zusammen,
    zu Beginn das obligatorische: "Ich hoffe ich bin im richtigen Forum." Es geht nämlich auch um die GDI+.
    Folgender Schnipsel Code ist der Grund des Anstoßes:

    graphics.DrawImage(Image::FromFile(L"D:\\Temp\\big-dgm.bmp"), 0, 0);
    

    Das funktioniert so sogar. Fakt ist jedoch, dass der Pfad von Image::FromFile dynamisch sein soll. Ohne das L vor dem, hier händisch eingegebenen Pfad, weigert sich das Programm aber. Wie kann ich meinen Pointer savedZeiger[1].ort so modifizieren, dass er von graphics.DrawImage angenommen wird. Nebenbei: Der Fehler bei Nutzung des direkten Pointerinhaltes ist:

    error C2664: 'Gdiplus::Image::FromFile': Konvertierung des Parameters 1 von 'char' in 'const WCHAR *' nicht möglich

    Die Bedeutung dieses Satzes ist mir schon klar, ich würde nur gerne ohne komplizierte Umwandlungsfunktionen auskommen, wenn das geht, und klammere mich deshalb an den Strohalm des "L" :p
    Grüße



  • Soweit ich weiß kann man in den Projekteinstellungen bei VC++ ( das verwendest du doch oder?) die Kodierung umstellen, auf Multi... (?)



  • Danke schonmal,
    aber diese Einstellung ist schon der Fall.
    Hinter der Pointer-Adresse befindet sich übrigens ein normaler Char.
    Grüße


  • Administrator

    Grundsätzlich kann man es in den VS Einstellungen umstellen, dass man kein Unicode verwenden möchte. Ich rate davon aber eigentlich eher ab.

    Ohne Umwandlung kommst du da aber nicht weiter:
    http://www.c-plusplus.net/forum/viewtopic-var-t-is-168607.html

    Ist zwar für std::wstring <-> std::string , kann man aber grundsätzlich analog für char und wchar_t verwenden.

    Weil du sowieso schon die WinAPI verwendest, könntest du auch gleich die folgende Funktion verwenden:
    http://msdn.microsoft.com/en-us/library/dd319072.aspx

    Grüssli



  • Dravere schrieb:

    Grundsätzlich kann man es in den VS Einstellungen umstellen, dass man kein Unicode verwenden möchte. Ich rate davon aber eigentlich eher ab.

    Wiesoo 🙂



  • PapaWiesoIstDerHimmelBlau schrieb:

    Wiesoo 🙂

    Höhere Geschwindigkeit und mehr Möglichkeiten mein Sohn.



  • Was mich jetzt mal interessieren würde:
    Bei der Funktion MultyByteToWideChar brauch ich deutlich weniger Aufwand und Know How. Hat die Fkt. einen Nachteil?
    Grüße

    P.S.: Danke schonmal für die Antworten.


  • Administrator

    FlashMuller schrieb:

    Hat die Fkt. einen Nachteil?

    Sie gehört zur WinAPI und ist daher nicht Teil des C++ Standards 😉

    Grüssli


Log in to reply