掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
構造体にChar型で正しく格納するには? (ID:20647)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
// 宣言部 type TChar255 = array[0..255] of char; TNotes = record A : TChar255; B : TChar255; C : TChar255; D : TChar255; E : TChar255; F : TChar255; G : TChar255; end; // exe 側 procedure TForm1.Button3Click(Sender: TObject); var Notes: TNotes; begin FillChar(Notes, SizeOf(TNotes), 0); (略) du_SendMail(Notes); end; // dll 側 function Char255toText(aChar255: TChar255): String; var i,j: Integer; begin Result := ''; for i := 0 to 15 do begin for j := 0 to 15 do begin Result := Result + ' ' + IntToHex(Ord(aChar255[i*16 + j]), 2); end; Result := Result + #$D#$A; end; end; function du_SendMail(var FNotes : TNotes): LongInt; stdcall; var noteStr: String; begin MessageDlg('A' + #$D#$A + Char255toText(FNotes.A), mtInformation, [mbOk], 0); MessageDlg('B' + #$D#$A + Char255toText(FNotes.B), mtInformation, [mbOk], 0); MessageDlg('C' + #$D#$A + Char255toText(FNotes.C), mtInformation, [mbOk], 0); MessageDlg('D' + #$D#$A + Char255toText(FNotes.D), mtInformation, [mbOk], 0); MessageDlg('E' + #$D#$A + Char255toText(FNotes.E), mtInformation, [mbOk], 0); MessageDlg('F' + #$D#$A + Char255toText(FNotes.F), mtInformation, [mbOk], 0); MessageDlg('G' + #$D#$A + Char255toText(FNotes.G), mtInformation, [mbOk], 0); Result := 0; end; これで、実際のデータを確認してみるとどうでしょう? とりあえず、D5環境で、igyさん同様、変なデータになりません。 入力した内容が、そのまま受け渡しされています。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.