3

Delphi アプリケーションで日本語の文字、特に Unicode 文字「5c」を表示する際に問題があります。アプリケーション名をレジストリに保存してから、何らかのポップアップで表示する必要があります。

問題を具体的にこのコードに絞り込みました:-

  Var
   Str : WideString;
   Str2: WideString;
   Str3 : WideString; 
 TntEdit5.Text := TntOpenDialog1.FileName; //correctly displayed

 Str3 := TntEdit5.Text;

 ShowMessage('Original =' + Str3);

 Str := UTF8Encode(TntEdit5.Text) ;
 ShowMessage('UTF8Encode =' + Str3);


 Str2 := UTF8Decode(Str) ;
 ShowMessage('UTF8Decode =' + Str3);
 end;

Str、Str2、および Str3 で正しい名前が得られません。では、文字列で名前を取得する方法は? テキストを表示したくありませんが、それを使用してレジストリやその他の機能に保存したいと考えています。

SHowMessage の代わりに、MessageBoxW(Form1.Handle, PWChar( Str3 ), 'Path', MB_OK );正しい結果が得られたものを使用しました。

しかし、文字列をファイルなどに書き込むなど、この文字列を内部的に使用したいのですが、どうすればよいですか?

前もって感謝します

4

1 に答える 1