しばらくの間、これに苦労していました。画像タイプのデータを持つ古いテーブル (SQL Server) があります。テキストを取得したい。
これまでのところ、これは私がやったことです。
- 変換またはキャストを試みます (許可されていません)
- SP を呼び出して、データを Delphi に持ち込もうとします (バリアントにデータを割り当てるところまで来ました)。
- RTFからテキストへの関数を調べました(画像データを文字列に入れることができれば、SOで何かが見つかりました)。
これは私がこれまでに持っているコードです。今のところボタンクリックに添付されています(サービスで実行されます)。report var への代入が正しくないと思いますし、SetString も正しくない可能性があります。私がこれを正しい方法で行っているかどうかさえわかりません。
var
report: array of byte;
s: string;
begin
ADOStoredProc1.Parameters.ParamByName('@EncounterID').Value := '7';
ADOStoredProc1.Open;
while not ADOStoredProc1.EOF do
begin
report := ADOStoredProc1.FieldByName('Report').Value;
SetString(s, PAnsiChar(@report[0]), length(report));
Memo1.Lines.Add(s);
ADOStoredProc1.Next;
end;