Re: DXアーカイブの中の読み込みで強制終了する? ( No.1 ) |
- 名前:kanamaru 日時:2020/10/02 20:51
色々調べてみましたけど混在させることができる機能はないようです
で、どうにかして混在させる方法を考えると、
パスワードを指定する関数は当たり前ですが、アーカイブを読み込む前に指定する必要があるはず。
ということはパスワードを指定する前なら
パスワードなしは読み込めるはず。
なので、構造としては
1.パスワードなしアーカイブの拡張子を指定する
2.パスワードなしアーカイブからファイルを読み込む
3.パスワードを指定する
4.パスワード付きアーカイブの拡張子を指定する
5.パスワード付きアーカイブからファイルを読み込む
とすればいいはず。複数あるなら1から2、3から5は必要に応じて繰り返してください。
アーカイブの中のファイルの読み込みを全部あらかじめやらなければいけないですが、(特にパスワードなしを)
ファイル読み込みの関数って画像にしろ動画にしろ音楽にしろそういうソフトでない限りは
最初に読み込むはずなのでおそらく影響はないと思います。
上記の方法は試してないので大丈夫だとは思いますが失敗したらすいません。
|
Re: DXアーカイブの中の読み込みで強制終了する? ( No.2 ) |
- 名前:管理人 日時:2020/10/04 19:37
私からもご返信を
kanamaruさんのご返信の方法で問題ありませんが、
SetDXArchiveKeyString( NULL );
を実行することでパスワード設定を無効化できますので、ファイル読み込み関数を呼ぶ前に
SetDXArchiveKeyString によるパスワード設定と( パスワード無しのDXアーカイブの場合は NULL を渡して呼ぶ )
SetDXArchiveExtension による拡張子指定をしていただければ
複数の拡張子やパスワードのDXアーカイブを扱うことができます
よろしければお試しください m(_ _)m
|
Re: DXアーカイブの中の読み込みで強制終了する? ( No.3 ) |
- 名前:was-blue.0793(解決) 日時:2020/10/29 22:39
>>kanamaruさん、管理人さん
パスワードなしのDXアーカイブを読み込むときにNULLではなく「""」(空文字列)を渡してしまっていたことが原因だったようです。
ご教示の方法でDXアーカイブを混在させることができました。ありがとうございます。
|