MSX-DOS2 FCS 03 74

From Z80 Machines Wiki
Jump to: navigation, search

3.74パス文字列全体を取得する(5EH)

パラメータ:C = 5EH(_WPATH)

DE = 64バイトバッファへのポインタ

結果:A =エラー

DE =完全パス文字列で埋めます

HL =最後の項目の始まりへのポインタ


この関数は単にASCIIZパス文字列を内部バッファからユーザのバッファにコピーします。この文字列は、前の「最初のエントリの検索」または「新しいエントリの検索」機能によって検索されたファイルまたはサブディレクトリの、ルートディレクトリからの完全なパスとファイル名を表します。返される文字列には、ドライブ、または最初の "\"文字は含まれません。レジスターHLは、「パスの解析」機能(機能5Bh)とまったく同じように、ストリングの最後の項目の先頭文字を指します。

「最初のエントリの検索」または「新しいエントリの検索」機能呼び出しがDEで行われた場合 ASCIIZ文字列を指すと、それに続く "全パスの取得"関数呼び出しは、 "find"関数によって返されたfileinfoブロックに対応するサブディレクトリまたはファイルを表す文字列を返します。これがサブディレクトリである場合、fileinfoブロックはレジスタDEで別の "find first entry"関数呼び出しに渡され、このサブディレクトリ内のファイルを検索します。この場合、新しく配置されたファイルは既存の完全パス文字列に内部的に追加されます。そのため、後続の "get whole path string"関数呼び出しは配置されたファイルの正しい完全パス文字列を返します。

内部の完全パス文字列は多くの関数呼び出しによって変更され、多くの場合無効になる可能性があるため、この関数の使用には細心の注意を払う必要があります。 「全パスの取得」機能呼び出しは、それが関連する「最初の項目の検索」または「新規項目の検索」機能の直後に実行する必要があります。