Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

UNICODE und Funktionsaufruf in CA


2 replies to this topic

Johannes John

Johannes John
  • Full Members
  • 223 posts

Posted 22 January 2003 - 13:04

Hallo,

hat schon mal jemand mit UNICODE-Strings gearbeitet und die versucht über eine CA an eine Funktion in einer DLL zu übergeben und evtl. auch wieder zurück?

Einfaches Beispiel wäre MessageBoxW.

Dank im voraus!
Johannes

Martin Aigner

Martin Aigner
  • Full Members
  • 133 posts

Posted 13 February 2003 - 13:10

Wenn z.B. in C die Konstante UNICODE definiert ist, dann wird der Aufruf MsiGetProperty automaitsch auf die Unicode-Variante umgeleitet.

Alles bleibt wie es war, nur der Typ des Strings ist nicht mehr char sondern WCHAR oder TCHAR (und die Stringfunktionen muessen natuerlich UNICODE Tauglich sein).
SD-Technologies GmbH
Macrovision Certified Training Partner.
More infomation at www.sd-technologies.de

Johannes John

Johannes John
  • Full Members
  • 223 posts

Posted 13 February 2003 - 13:58

Hallo Martin,

danke, für deine Antwort.

Hast du schon mal z.B. einen chinesischen Setup gemacht?

Die Möglichkeiten innerhalb der DLL sind klar, nur meine ersten Versuche z.B. die MessageBoxA bzw. W aus der USER32.DLL direkt in einer CA aufzurufen, haben nicht dazu geführt, dass ich die Vorgehensweise des WI verstehe.

Was z.B. kommt in einer DLL an, wenn ich ein Property als Parameter übergebe? Kommt da ASCII, MultiByte oder UNICODE an?
Und wenn ich mir den Wert der Property in der DLL über MsiGetPropertyW hole, kommt da was anderes raus als beim Aufrufparameter?

Ich werde demnächst entsprechende Versuche unternehmen!

Wohl denn!
Johannes