2011-07-11 47 views
0

状況は以下の通りです:Windows上で仮想的にマップされたネットワークドライブをエミュレートするC++コード?

私は、問い合わせ時に仮想ファイルのリスト(ファイル名、サイズ、最終更新日、作成日、ID)を返します。また、同じWebサービスのIDを使用して、任意のファイルのバイナリコンテンツデータを取得することもできます。私が何をしたいか

私は(EX用:Z)マップされたネットワークドライブが存在することを、オペレーティング・システム(Windows XP、Vistaまたは7)を説得するC++コードの断片を書きたいですなユーザーがWindowsエクスプローラで(Z:\)を入力すると、Webサービスから返される仮想ファイルの一覧が表示されます。また、エクスプローラビューでファイルアイコンをダブルクリックすると、C++コードはWebサービスからのバイナリデータを取得し、正当なファイルコンテンツとしてOSに提示する必要があります。

つまり、ユーザー(およびその問題のOS)は、Zと他の通常のドライブとの違いを判断できません。

アイデア?

+0

WebDAVラッパーを作成し、Webフォルダを使用しますか? – ChrisV

+0

@ChrisV:Webフォルダはファイルをドライブ文字の下に表示するのですか、URL構文のみで表示しますか? –

+0

ここにXPとVistaでマウントするための情報があります。私はVistaの指示がWindowsのために働くと思う(しかし分からない):http://smallvoid.com/article/winnt-webdav-network-drive.htmlこれは、これが最善の方法のように思われることに同意しなければならない。 Windowsファイルシステムの作成は容易ではありません。 – andrewdski

答えて

1

に必要なもの "ユーザ空間のファイルシステム" と呼ばれています。たとえば、Dokan libraryの上に作成することができます。

1

私たちのCallback File Systemはあなたが探しているものです。

コールバックファイルシステムでは、一般的なデータ(リモートWebサービスから取得したものなど)をドライブレターにマップできます。

+0

@ user698585あなたは私たちが持っている解決策を求めました。あなたが自由なものを好むなら、それは大丈夫ですが、あなたはあなたの質問にこれを言及していたはずです。 –

+0

私の謝罪、あなたはそれが問題に言及されていたはずです。 –

関連する問題