バイナリファイルに書き込むの際に起こるエラー 1 に関して
使用ソフトウェア:
使用ソフトウェア・バージョン: 7.1
使用ソフトウェア・バージョンに特化: 8.6
二次のソフトウェア: N/A
問題: Win32 File I/O API を使用してデータをディスクに書き込んでいます。しかし エラーコード1がバイナリファイルに書き込む.vi で発生します。
図1: Write to Binary Fileで発生するエラーコード1
どうしてこのエラーが発生するのでしょうか、そしてどのように回避できるのでしょうか。
解決策: このエラーは各実行で書き込まれるデータ量によって起こるエラーです。Win32 File I/O を用いる場合、書き込まれるデータはディスクセクターサイズの倍数である必要があります。
例えば、ディスクセクターサイズが 512 bytes の場合、書き込まれるデータサイズは 512 の倍数である必要があります。例えば 512 の I8, 256 の I16 や 128 の I32 などです。
各実行の書き込まれるデータを変更する方法は下記をご参考ください。
図 2: Win32 File を使用する参考例
メモ: バイナリファイルに書き込む.vi の
配列または文字列サイズを先頭に追加? 端子にFalse を入力します。これによって書き込まれた実際のサイズが明確になり、作られたファイルへの操作へのアクセスもしやすくなります。
関連リンク: Developer Zone Example: Stream to Disk Using Win32 File IO
添付:
報告日時: 11/23/2009
最終更新日: 07/08/2010
ドキュメントID: 53MEUSFN
Other Support Options
Ask the NI Community
Collaborate with other users in our discussion forums
Request Support from an Engineer
A valid service agreement may be required, and support options vary by country.