トルネード

毛利のメモ書き

Delphi WinRT HSTRINGIterablesについて

Delphi 10.3 WinAPI.HSTRINGIterables.pasにはHSTRING変換のための関数とTIterableHSTRINGとTIteratorHSTRINGが入っています。中身はTList<HSTRING>なんですが、使えそうなら使ってみるのもいいかもしれません。この2つのクラスはインターフェイスも持っています。そのひとつのインターフェイスであるIIterable_1__HSTRINGは「Windows.Foundation.Collections.IIterable<HSTRING>」ということのようです。

 

procedure TForm1.Button3Click(Sender: TObject);
var
  IterableHSTRING1: TIterableHSTRING;
  IterHSTRING1: IIterator_1__HSTRING;
begin
  IterableHSTRING1  := TIterableHSTRING.Create;
  IterableHSTRING1.Add(CreateHSTRING('毛利'));
  IterableHSTRING1.Add(CreateHSTRING('Delphi'));

  IterHSTRING1  := IterableHSTRING1.First;

  repeat
    Memo1.Lines.Append(WindowsGetStringRawBuffer(IterHSTRING1.Current, nil));
  until not IterHSTRING1.MoveNext;

end;
    

Delphi WinRT HSTRINGIterablesについて 

WinAPI.HSTRINGIterables.pasには下記のようなHSTRING変換するための関数も用意されています。

function CreateHSTRING(const S: string): HSTRING;
function CreateHSTRINGRef(var S: string): HSTRING;
function HSTRINGToString(const hs: HSTRING): string;
function HSTRINGIsNullOrEmpty(const hs: HSTRING): Boolean;
procedure DeleteHSTRING(const hs: HSTRING);

 

Delphi WinRT HSTRINGIterablesについて

 

Delphi 10.3 WinRTでRSSフィードを取得 : アンドロイドは電気Delphiの夢を見るか?

Delphi WinRT HttpClientについて - 怪獣農場

note.com