2016-09-16 1 views
0

In dem Dokument Support Statement for Visual Basic 6.0 on Windows... heißt es:Wofür werden die VB6-Lokalisierungsunterstützungs-Binärdateien verwendet?

Lokalisierungsunterstützung Binaries

Die folgenden Binärdateien notwendig sind für Visual Basic 6.0-Anwendungen unterstützt auf lokalisierten Versionen des Windows ausgeführt wird System arbeitet. Sie werden unterstützt, werden jedoch nicht in Windows ausgeliefert. Diese Dateien sind erforderlich, die mit Ihrer Anwendungskonfiguration geliefert werden.

Zum Beispiel wird mfc42jpn.dll für Japan erforderlich, mfc42ita.dll für Italien usw.

Aber was tun diese Lokalisierungsdateien eigentlich? Warum müssen sie aufgenommen werden?

Wir verschicken seit Jahren international Software, ohne diese Dateien zu integrieren, und AFAIK hat niemand Probleme damit gehabt.

+0

Siehe verwandte Frage http://stackoverflow.com/questions/39518024/where-to-get-vb6-localization-support-binaries darüber, wo diese Binärdateien tatsächlich erhalten. – DaveInCaz

+1

Ich habe keine Zeit zu überprüfen, aber AFAICR sie enthalten Übersetzungen. Wenn Sie also die japanische Datei versenden, sehen Ihre japanischen Benutzer Japanisch für einige Texte aus der VB6-Laufzeit. Wenn Sie zum Beispiel 'True' implizit in eine Zeichenkette konvertieren, ist das Japanisch für" True ", nicht das Englische. Wenn Sie die japanische Datei nicht versenden (und wenn die Datei nicht bereits auf dem PC des Benutzers installiert ist), ist es das englische "True". Es hängt also von Ihrem Code ab, ob es einen Unterschied macht. In der Tat kann es sogar Fehler aufdecken, wenn Sie die Dateien versenden: Ich habe dies gesehen, wenn Legacy-Code SQL-Strings aus Boolean baut. – MarkJ

Antwort

2

Das sind Satelliten-DLLs, die Zeichenfolgenressourcen in verschiedenen Sprachen für die OCXs und DLLs enthalten, denen sie entsprechen. In den meisten Fällen handelt es sich hierbei um Ausnahmebeschreibungstextwerte oder andere Textwerte hier und dort, abhängig von der beteiligten Steuerung. Ich nehme an, dass sie auch Hilfe-String-Werte enthalten können, die zum Beispiel im Objektbrowser der IDE zur Entwurfszeit angezeigt werden.

AFAIK, impliziter und im alten Stil Conversions (z Str$()) von Booleschen Werten verwenden immer US-Englisch (die unveränderlichen Locale), aber richtige explizite Umwandlungsoperationen (zum Beispiel CStr()) werden OLE Konvertierungen mit dem aktuellen Sitzung Gebietsschema verwenden. Diese Satelliten-DLLs sind dort nicht beteiligt. Es ist auch möglich, die OLE-Formatierungsfunktionen direkt aufzurufen und bestimmte LCIDs zu übergeben.

Verwandte Themen