Re: 【仕様提案】FileRead_readのサイズ指定引数の64bit化 ( No.1 ) |
- 名前:管理人 日時:2025/08/26 02:01
一度に2GiB以上読み込もうとされるとなりますと、ファイルの内容を全部メモリに読み込もうとされている感じでしょうか?
もしそうでしたら、関数リファレンスには載っていませんが FileRead_fullyLoad系の関数が 2GiB以上に対応しています
// 指定のファイルの内容を全てメモリに読み込み、その情報のアクセスに必要なハンドルを返す
// ( 戻り値 -1:エラー -1以外:ハンドル )、使い終わったらハンドルは FileRead_fullyLoad_delete で削除する必要があります
int FileRead_fullyLoad( char *FilePath ) ;
// FileRead_fullyLoad で読み込んだファイルのハンドルを削除する
int FileRead_fullyLoad_delete( int FLoadHandle ) ;
// FileRead_fullyLoad で読み込んだファイルの内容を格納したメモリアドレスを取得する
const void *FileRead_fullyLoad_getImage( int FLoadHandle ) ;
// FileRead_fullyLoad で読み込んだファイルのサイズを取得する
LONGLONG FileRead_fullyLoad_getSize( int FLoadHandle ) ;
まず最初に FileRead_fullyLoad でファイルをメモリに丸ごと読み込み、そのファイルのFileRead_fullyLoadハンドルを取得します
そしてメモリに読み込まれたファイルのデータは FileRead_fullyLoad_getImage で取得することができます
( ファイルのサイズは FileRead_fullyLoad_getSize で取得できます )
使用が終わりデータが不要になったら FileRead_fullyLoad_delete でFileRead_fullyLoadハンドルを削除します
↑
こちらの関数群で代用することはできないでしょうか?
|
Re: 【仕様提案】FileRead_readのサイズ指定引数の64bit化 ( No.2 ) |
- 名前:was-blue.0793 日時:2025/08/31 23:26
>> 管理人さん
ご回答ありがとうございます。
これら関数群を使用することによりデータを一気に読み取ることができました。
これら関数群についてですが、SetUseAsyncLoadFlag関数を用いた非同期読み込みに対応できますか?(リファレンスでは対応関数リストに名前がありませんでした)
それではよろしくお願いします。
|
Re: 【仕様提案】FileRead_readのサイズ指定引数の64bit化 ( No.3 ) |
- 名前:管理人 日時:2025/09/02 01:22
> これら関数群についてですが、SetUseAsyncLoadFlag関数を用いた非同期読み込みに対応できますか?(リファレンスでは対応関数リストに名前がありませんでした)
FileRead_fullyLoad のみ対応しています( リファレンスの対応関数リストにも追加しておきました )
|
Re: 【仕様提案】FileRead_readのサイズ指定引数の64bit化 ( No.4 ) |
- 名前:was-blue.0793(解決済) 日時:2025/09/07 19:20
>> 管理人さん
ご対応ありがとうございます。
望む動作にすることができたのでこちらは解決済みとさせていただきます。
|