このファイルへのすべてのアクセスを処理できるファイルを作成する方法。私のプログラムは、このファイルから読み込んだすべてのプログラムに要求されたデータを送り、このファイルへのすべての書き込みを受け取ることができます。仮想チェンジ・ファイルの作成方法は?
答えて
NTFSストリーム:
NTFS Stream代替選択肢かもしれません。 Windows Sysinternalsから
引用:
NTFSファイルシステムは、アプリケーションに情報の 代替データストリームを作成する能力を提供します。デフォルトでは、すべてのデータが、しかし 「ファイル:ストリームを」構文を使用して、ファイルのメイン無名のデータ・ストリームに を格納している...、あなたが読んで交互に書き込みすることができます
ストリーム上の
その他の関連資料:
- File Streams(MSDNページ)
- Streamsを使用して、C++のコードサンプルは、pですhere。
- NTFS Streamsは(AuditMyPC.com上のエントリ)
- NTFS Alternate Streams: What, When, and How To
これはディスク上に保持されており、次の世代のWin8ファイルシステムでは消えてしまいます。 –
CreateFileMapping/MapViewOfFileを使用して共有メモリ領域を作成する必要があるように私には聞こえます。ウェブと書籍で多くの例が見つかります。
例:http://voiceofgeek.blogspot.com/2009/02/memory-mapped-file-in-delphi.html – Pateman
質問はかなり曖昧です。
他のアプリケーションを使用する場合は、ファイルを使用するのではなく、他のプロセス間通信(IPC)メカニズムを選択できます。または、一時ファイル(特別なTEMPORARY属性で作成されたファイル)を使用することもできます。
他のアプリケーションがあなたのものではなく、ファイルがディスク上に存在することが予想される場合は、このファイルを作成するか、既存のファイルシステム上に仮想ファイルシステムとディスクまたは仮想ファイルを作成する必要があります。仮想ファイルシステムを作成するには、カーネルモードのドライバ(ファイルシステムドライバ)が必要です。既存のディスクに仮想ファイルを作成するには、カーネルモードのファイルシステムフィルタドライバが必要です。
カーネルモードのドライバは、Windows内部の知識を作成し、必要とするのに手間と時間がかかります。オプションの1つとして、CBFS(Callback File System)製品を使用できます。この製品を使用すると、ユーザーモードで仮想ファイルシステムを作成できます(ドライバを提供します)。しかし、CBFSはあなたの仕事にとって過度のものになる可能性があります。
あなたのより良い選択肢は、タスクと要件を確認し、他のアプリケーションにデータを提供する別の方法を見つけることです。
たとえば、他のプログラムのアクセスごとにデータを変更する仮想ファイルを作成する必要があります。このファイルはRAMまたはディスクには存在しません。なぜなら、ファイルアクセスデータのすべてのバイトが変更され、この変更が自分のプログラムの処理であるからです。 – MohsenB
@MohsenBこのアプローチには問題があります。OSはファイルデータが読み込まれるとそのデータをキャッシュし、読み込みごとに新しいデータを置き換えることはできません。また、データはすべてのプログラムで同じでなければなりません(同じ理由で - キャッシュ)。これらは、Windowsファイルシステムアーキテクチャの制限事項です。Unixライクなシステムとは異なり、データストリームとしてではなく、ファイルを名前付きデータとして扱います。 –
ありがとう、私の最終目標は、暗号化された他のファイルをシミュレートする仮想ファイルを作成するため、この暗号化されたファイルは非常に大きいです。 – MohsenB
はあなたが必要なもののような音の仮想ファイルは何という名前のパイプ http://msdn.microsoft.com/en-us/library/windows/desktop/aa365150(v=vs.85).aspx
サンプルを書くことができますか? – MohsenB
例を示します。xxmCGI.exeは、WebサービスからCGI呼び出しをネームド・パイプをホストするxxmHost.exeプロセスにルーティングします。http://xxm.svn.sourceforge.net/viewvc/xxm/trunk/Delphi/cgi/ xxmCGI.dpr?view =マークアップhttp://xxm.svn.sourceforge.net/viewvc/xxm/trunk/Delphi/cgi/xxmHostRun.pas?view=markup –
- 1. Eclipse仮想ファイルリソースの作成方法
- 2. nginx仮想ホスト構成ファイルの作成
- 3. 仮想モニタ/仮想ディスプレイデバイスの作成
- 4. Delphiのアプリケーションで仮想ファイルを作成する方法
- 5. 仮想ディスクマウントポイントの作成
- 6. 仮想ファイルシステムメモリブロックの作成
- 7. PythonのElementTreeで「仮想ルート」を作成する方法は?
- 8. oracle仮想ボックスの自動スナップショットを作成する方法は?
- 9. Webサーバー用の仮想ディレクトリを作成する方法は? (ASP.NET)
- 10. ASP.NET用のIIS7で仮想ディレクトリを作成する方法は?
- 11. Liferay 7で仮想インスタンスの作成アクションのモデルリスナを作成する方法は?
- 12. 一時ファイルまたは仮想ファイルをEJBに作成
- 13. シリアル化時に仮想JSONプロパティを作成する方法は?
- 14. MAMPで仮想ホストを作成する方法は?
- 15. Linuxで仮想CANポートを作成する方法は? (C++)
- 16. 作成 - Azure仮想マシンWindows
- 17. ZUGFeRD請求書の仮想XMLを作成する方法
- 18. wixで仮想アカウントを作成する方法の例
- 19. Windows 7でxamppの仮想ホストを作成する方法
- 20. テーブルを使ってオウレリア・仮想仮想化を作成する
- 21. Genymotion(Androidエミュレータ)で作成した仮想デバイスを振る方法
- 22. 3Dモデルファイルから仮想モデルを作成する方法
- 23. CakePHP版で「仮想フィールド」を作成する方法1.2未満
- 24. 仮想COMポートを作成する方法
- 25. ゴラン仮想ファイル
- 26. Azureのカスタム仮想マシンイメージの作成
- 27. Pythonの仮想環境の作成
- 28. IIS7別のサーバー上のファイルに仮想ディレクトリを作成する
- 29. 仮想マシンの作成Azure REST API
- 30. 仮想ディスクの作成とフォーマット
のですか? –
"仮想ファイル"は、ディスクまたはラム上に実際に存在しないファイルです。これをソフトウェアでシミュレートします。 – MohsenB
ディスク上に存在せず、RAMに存在しない場合はどこですか? –