ホーム > デベロッパ > BREW FAQ

BREW FAQ : リムーバブルディスクへのファイルアクセスをエミュレートするには …?

リムーバブルディスクへのファイルアクセスをエミュレートするには …?

BREW 3.1 から miniSD や MMCなどのリムーバブルディスクへアクセスできるようになりました。

リムーバブルディスクを使用したファイルアクセスは、 以下の手順でエミュレートできます。

  1. Windows の [スタート] メニューから、 BREW MIF エディタ ver 3.0 を起動します。
  2. [依存ファイル] タブを選択し、外部クラスモジュールとして AEECLSID_CARD0_ACCESS を追加してください。 外部クラスモジュールの追加方法は、 『BREW SDK 3.0 ユーザードキュメンテーション』の「外部依存クラスの追加」を参照してください。
  3. Windows の [スタート] メニューから、 BREW シミュレータ ver 3.0 を起動します。
  4. [プロパティ] タブを選択し、[MMC1 ディレクトリ] を設定します。 ここで設定したディレクトリがリムーバブルディスクのディレクトリになります。
  5. リムーバブルディスクにアクセスするために、 ファイル名の先頭に AEEFS_CARD0_DIR を設定します。 詳細は、『BREW 3.0 API リファレンス』の「IFileMgrインタフェース」を参照してください。
  6. IFILEMGR_OpenFile を使用し、リムーバブルディスク上のファイルをオープンします。

以下に、リムーバブルディスク上のテキスト ファイルから、 データを読み込むサンプルコードを記載します。

IFileMgr*  fileMgr;
IFile*     file;
char       fileName[32] = {0};
char       buffer[128]  = {0};
int        size = 0;

if (SUCCESS == 
ISHELL_CreateInstance(pMe->m_pIShell, AEECLSID_FILEMGR, (void**)&fileMgr)) {

 // リムーバブルディスクにアクセスするため、
 // ファイル名の先頭に AEEFS_CARD0_DIR を設定します。
 STRCAT(fileName, AEEFS_CARD0_DIR);
 STRCAT(fileName, "test.txt");

 // リムーバブルディスク上のテキスト ファイルをオープンします。
 file = IFILEMGR_OpenFile(fileMgr, fileName, _OFM_READ);

 if (file != NULL) {
  // リムーバブルディスクからファイルを読み込みます。
  size = IFILE_Read(file, buffer, sizeof(buffer) - sizeof(char));

  if (size > 0) {
   // リムーバブルディスクから読み込んだテキスト ファイルの内容を
   // ログに表示します。
   DBGPRINTF("*** read from file : %s ***", buffer);
  }

  // IFile インターフェイスを解放します。
  IFILE_Release(file);
}

 // IFileMgr インターフェイスを解放します。
 IFILEMGR_Release(fileMgr);
}