2

Microsoft Sync Framework を使用して、SQL Server データベースを Windows Mobile 5 エミュレーター上の SQL Compact SDF ファイルと同期しています。展開している実際のデバイスには 2 ギガの SD カードがあるので、そこにデータベース ファイルを保存したいと考えています。ただし、Windows Mobile 5 エミュレーターで共有フォルダーをストレージ カードとしてマップすると、バグのため、SQL Compact エンジンはマップされたストレージ カードでデータベース ファイルを作成または変更できません。エミュレータでの開発中にこれを乗り越えるために、データベースを内部デバイス ストレージに格納するつもりでしたが、32 MB に制限されており、それを増やす方法が見つかりません。エミュレータのストレージ容量を増やす方法を知っている人はいますか? 私はRAMではなくストレージスペースについて話している:)。

それ以外の場合、エミュレーターのストレージ カードに SQL Compact データベース ファイルを保持できないというバグを回避する方法を知っている人はいますか?

ありがとう!

4

4 に答える 4

4

http://forum.xda-developers.com/showthread.php?t=549675の下に、RAM ディスクをセットアップするエミュレーター用のドライバーがあります。エミュレーター用のドライバーは外部ストレージ カードと見なされますが、そうではありません。フォルダーのマッピングに関する問題に悩まされています。RAMDiskに保存されているSQL Compact sdfファイルを確認しましたが、魅力的に機能します。64MB ドライブとして使用しましたが、最大 256 MB まで処理できるようです。

于 2009-11-18T10:21:30.690 に答える
3

実際にこれを行うことができます。

まず、デバイス エミュレーターを開き、選択したエミュレーターを実行します。私の場合、Windows Mobile 5.0 を開きます

次に、実行中に、デバイス エミュレーターから、実行したエミュレーターを右クリックして [名前を付けて保存] を選択し、どこかに保存してから、このファイルをテキスト エディターで開きます。

そこには、memsize というオプションがあり、次のように設定します。

<MemSize Reconfigurable="true">256</MemSize>

残念ながら、それを高く設定しようとすると、最大値は 256 になります。

ここで、デバイス エミュレーターから、先ほど保存したエミュレーター エントリ (オリジナルではなく、デバイス エミュレーターの [マイ デバイス エミュレーター] の下にあるカスタム) を選択し、変更した cfg ファイルを使用して実行します。

お役に立てれば。

于 2009-06-24T09:10:07.227 に答える
0

実際のデバイスをお持ちの場合は、ActiveSyncを介して接続してデバイスでテストすることをお勧めします。エミュレータのメモリを変更する方法はわかりませんが、HPにはテスト用にダウンロードできるエミュレータがあり、そのうちの1つがターゲットにしようとしているものと一致することは間違いありません。

于 2009-05-05T17:45:17.053 に答える
0

Microsoft Device Emulator V3 (これは、以前の「\Microsoft Device Emulator\1.0」フォルダーにインストールされ、上書きされることに注意してください) で、Windows Mobile 5 を使用して、パラメーターを指定せずに「deviceemulator」と入力したときに得られるヘルプを以下に貼り付けます。最初に記載されているのは、memsize に関するメッセージです。256 MB を超える値で試してみたところ、ヘルプ ダイアログ ボックスが表示されました。/sharedfolderをストレージカードとして認識させようとしたときに、これをいじっていました。おそらく、これは新しいデバイスエミュレーターで可能になるでしょう。動作させることができれば、カードに SDF ファイルを配置してテストできます。

デバイス エミュレータ

メモリ サイズは 64 ~ 256 の値にする必要があります。

コマンド ライン オプションのヘルプ

binfile - エミュレーターによってロードされる binfile のファイル名。
@responsefile - XML 応答ファイルのファイル名。
/a - エミュレーター ウィンドウを常に最前面に表示します。
/battery - AC の代わりにバッテリーからの実行をエミュレートします
/batterycharge percentage - エミュレートされたバッテリー充電率
/c - コンソール ウィンドウを作成して表示し、シリアル ポート 1 からの出力を表示します。
/cpucore - ARMv4 または ARMv5。デフォルトは ARMv4 です。
/cpuoptions - (T)humb、D(ebug)、I(ネットワーキング)、M (Long Multiply)、E (DSP) の組み合わせ。これらのうち、T、D、I は常に設定されます。
/defaultsave - 保存された状態の名前として VMID を使用し、保存された状態ファイルをユーザーごとのディレクトリに配置します。
/flash filename - フラッシュ メモリ エミュレーションを有効にし、フラッシュ メモリ ストレージ ファイル名を指定します。
/h - ネットワーク パケットのホストオンリー ルーティングを設定します。
/hostkey キー名 - ホスト キーを指定します。キー名は「None」、「Left-Alt」、または「Right-Alt」のいずれかです。
/language LangID - UI 言語を指定します。LangID は 10 進数です。
/memsize サイズ - エミュレートされた RAM サイズを設定します。サイズはメガバイト単位です。
/nosecurityprompt - 保存された状態から復元するときに、安全でない可能性がある周辺機器を有効にするときにプロンプ​​トを表示しません。
/n [macaddress] - オプションの macaddress でカードがバインドされるホスト アダプタを指定する CS8900 ネットワーク アダプタを有効にします。
/p [macaddress] - NE2000 PCMCIA ネットワーク アダプタを有効にします。オプションの macaddress は、カードがバインドするホスト アダプタを指定します。
/r アドレス - ROM ファイルのベース アドレスを指定します (16 進数)。
/rotate angle - ディスプレイを度単位で回転します。角度は 0、90、180、または 270 です。
/s filename - 保存状態のファイル名を指定します。
/sharedfolder directoryname - directoryname をストレージ カードとしてマウントします。
/skin filename - 指定されたスキン ファイルを読み込みます。
/tooltips state - ツールチップを有効または無効にします。状態は「ON」または「OFF」です。
/u0 serialport /u1 serialport /u2 serialport - ゲスト シリアル ポート 0 ~ 2 を Windows シリアル ポートにマップします。
/vfp - ベクトル浮動小数点コプロセッサ: true または false。デフォルトは false です。
/video xx - 画面サイズとビット深度を指定します。
/vmid {GUID} - VMID GUID を指定します。
/vmname name - ウィンドウのタイトルを指定します。
/z - ディスプレイを通常の 2 倍のサイズにズームします。
/speakerphone - {[SpeakerPhone][Headset][Carkit]} - スピーカーフォン、ヘッドセット、Carkit モードを指定する 0 ~ 7 のビットマップ番号。

わかった   
于 2009-07-20T23:30:40.880 に答える