vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
TOP-Angebot: 17 bzw. 24 Entwickler-Vollversionen zum unschlagbaren Preis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Fortgeschrittene Programmierung
Teil 2: Probleme mit Unicode-Strings auf ausländischen Systemen 
Autor: Preisser
Datum: 01.05.09 18:29

Teil 2:

Wenn ich einen Text anzeigen will, rufe ich die Funktion folgendermaßen auf:
Private Declare Function TextOut Lib "gdi32" _
  Alias "TextOutW" ( _
  ByVal hDC As Long, _
  ByVal X As Long, _
  ByVal Y As Long, _
  ByVal lpString As String, _
  ByVal nCount As Long) As Long
 
Private Sub PrintW(hDC As Long, Text As String, X As Long, Y As Long)
TextOut hDC, X / Screen.TwipsPerPixelX, Y / Screen.TwipsPerPixelY, StrConv( _
  Text, vbUnicode), Len(Text)
End Sub
 
Public Sub TestText()
PrintW Me.hDC, "Dies ist ein Text. " & ChrW(65411) & ". Blabla.", 0, 0
End Sub
Ich muss also diesen Text nochmal mit der StrConv-Funktion nach Unicode konvertieren. Wie bereits angesprochen, gibt es hier jedoch (auf einem japanisch oder chinesisch eingestellten Windows) Probleme mit einem String, der nach Unicode konvertiert Bytewerte wie 135 enthält, was dazu führt, dass nach dieser Stelle einfach irgendwelche chinesische Zeichen erscheinen.
Auf einem deutschen Windows sieht es so aus, auf einem japanischen dagegen so.

Wenn ich nicht die VB-StrConv Funktion verwende, sondern eine selber gebaute, dann erscheint bei diesen Zeichen ein Kästchen (da Wert 0).

Kann mir jemand dieses Verhalten auf einem japanischen Windows erklären und gibt es eine Lösung für die TextOutW-Funktion, dass ich den anzuzeigenden String irgendwie anders übergeben kann?

Beitrag wurde zuletzt am 01.05.09 um 18:32:20 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Probleme mit Unicode-Strings auf ausländischen Systemen3.155Preisser01.05.09 18:28
Teil 2: Probleme mit Unicode-Strings auf ausländischen Syste...2.050Preisser01.05.09 18:29
Re: Teil 2: Probleme mit Unicode-Strings auf ausländischen S...1.952Preisser04.05.09 20:56
Re: Teil 2: Probleme mit Unicode-Strings auf ausländischen S...1.880moDiag05.05.09 10:27
Re: Teil 2: Probleme mit Unicode-Strings auf ausländischen S...2.056ModeratorDieter05.05.09 10:40
Teil 1: Weitere Ergebnisse2.126Preisser23.05.09 16:23
Teil 2: Weitere Ergebnisse1.924Preisser23.05.09 16:24

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel