プロジェクト

全般

プロフィール

開発したアプリケーションで,ローカルドライブのファイルにアクセスすると問題ないが,クライアントドライブのファイルにアクセスするとローカルに比べて非常に遅い.なお,エクスプローラでクライアントドライブのファイルにアクセスした場合は,このような現象は見られない.

技術ノート
2010/06/30

[番号]
技術ノート KGTN 2010070101

[現象]
開発したアプリケーションで,ローカルドライブのファイルにアクセスすると問題ないが,クライアントドライブのファイルにアクセスするとローカルに比べて非常に遅い.なお,エクスプローラでクライアントドライブのファイルにアクセスした場合は,このような現象は見られない.

[説明]
クライアントドライブのファイルにアクセスする場合,その処理 (機能) が呼び出すWindowsのAPIを 「ネットワークを介して」 クライアント側へ転送し,クライアント側で実行し,そしてその結果を 「ネットワークを介して」 サーバ側へ返します.1つの処理は多数のAPIを呼び出しますので,その数に比例してネットワークを介した処理が増加し,結果的にローカルドライブに比べ速度が低下することがあります.このような場合は,クライアントドライブにあるファイルを一旦ローカルドライブにコピーし,アプリケーションはコピーしたファイルを参照するのが良い方法です.

また,ファイルオープンのダイアログでプレビュー機能が実装されているアプリケーションでは,その処理の中でクライアントドライブにあるファイル (の内容) を読むことになりますので,ローカルドライブに比べ速度がかなり低下します.このような場合は,プレビュー機能を使用しないような仕様変更等をご検討下さい.

ファイル

KGTN2010070101.pdf (58.1 KB) kitasp 技術センター, 2010/07/01 08:30