「DokanNet」の版間の差分
imported>Administrator |
imported>News4vip |
||
(他の1人の利用者による、間の8版が非表示) | |||
1行目: | 1行目: | ||
− | '''DokanNet'''(どかんねっと)とは、[[Windows]]向けに独自の[[ファイルシステム]]を簡単に作成できる[[ライブラリ]]である[[Dokan]]に付属する[[.NET Framework]] | + | '''DokanNet'''(どかんねっと)とは、[[Windows]]向けに独自の[[ファイルシステム]]を簡単に作成できる[[ライブラリ]]である[[Dokan]]に付属する[[.NET Framework]]向け[[バインディング]]である。 |
+ | |||
+ | == 概要 == | ||
+ | DokanNetは、[[Mono]]プロジェクトによる[[UNIX]]系[[OS]]向けの[[Mono.Fuse]]のWindows版とも言える存在であるが、あまりの簡潔明瞭さにDokanNetを利用した実装は数えきれないほど存在している模様。 | ||
+ | DokanNetを使うことで[[C Sharp|C#]]や[[F Sharp|F#]]などを用いて簡単に独自の[[ファイルシステム]]を作ることができる。 | ||
+ | DokanNetに付属する[[C Sharp|C#]]のサンプルを見るとわかるが、[[Dokan]]と[[C言語]]を使った場合に比べ、アホみたいに[[ソースコード]]が簡潔明瞭になる。 | ||
DokanNetの利用には[[Dokan]]が必要であり、作成した[[プログラム]](独自ファイルシステム)にDokanライブラリ(およびドライバー)を同梱する必要がある。 | DokanNetの利用には[[Dokan]]が必要であり、作成した[[プログラム]](独自ファイルシステム)にDokanライブラリ(およびドライバー)を同梱する必要がある。 | ||
− | [[ | + | == ライセンス == |
− | + | [[ライセンス]]は、[[Dokan]]は[[LGPL]]および[[MIT ライセンス]]、[[DokanNet]]は[[MIT ライセンス]]となっている。 | |
− | |||
== DokanNetの使い方 == | == DokanNetの使い方 == | ||
DokanOperationsインターフェイスを実装したクラスを作り、そのインスタンスをDokanNet.DokanMain静的メソッドの引数に渡してやるだけである。ビックリするくらい簡潔明瞭。 | DokanOperationsインターフェイスを実装したクラスを作り、そのインスタンスをDokanNet.DokanMain静的メソッドの引数に渡してやるだけである。ビックリするくらい簡潔明瞭。 | ||
+ | |||
+ | DokanMainは終了するまで制御を返さないので別スレッドに乗っけた方がよさそう。 | ||
+ | |||
+ | 実際に動かすには[[コンソールアプリ]]や[[WinForms]]で[[タスクトレイ]]に[[常駐]]するような[[アプリ]]を作るだけでよく、ちょっと頑張れば何でもできてしまう気がする。[[Windowsサービス]]にするのも手かもしれない。 | ||
== DokanNetの実装例 == | == DokanNetの実装例 == | ||
23行目: | 31行目: | ||
Dokan SSHFSは、[[SSH]]でアクセスできる先のファイルシステムを、ローカルのドライブとしてマウントするプログラム。 | Dokan SSHFSは、[[SSH]]でアクセスできる先のファイルシステムを、ローカルのドライブとしてマウントするプログラム。 | ||
Dokan SSHFSの開発にはDokanNetと[[SharpSSH]]が使われている。 | Dokan SSHFSの開発にはDokanNetと[[SharpSSH]]が使われている。 | ||
+ | |||
+ | === その他、サーバーパーティー製など === | ||
+ | * [[MSSQLFS]] | ||
+ | * [[WindowsAzureBlobFS]] | ||
+ | * [[JSDokan]] | ||
+ | * [[PutioFS]] | ||
== 関連項目 == | == 関連項目 == |
2013年10月23日 (水) 02:49時点における最新版
DokanNet(どかんねっと)とは、Windows向けに独自のファイルシステムを簡単に作成できるライブラリであるDokanに付属する.NET Framework向けバインディングである。
目次
概要[編集 | ソースを編集]
DokanNetは、MonoプロジェクトによるUNIX系OS向けのMono.FuseのWindows版とも言える存在であるが、あまりの簡潔明瞭さにDokanNetを利用した実装は数えきれないほど存在している模様。 DokanNetを使うことでC#やF#などを用いて簡単に独自のファイルシステムを作ることができる。 DokanNetに付属するC#のサンプルを見るとわかるが、DokanとC言語を使った場合に比べ、アホみたいにソースコードが簡潔明瞭になる。
DokanNetの利用にはDokanが必要であり、作成したプログラム(独自ファイルシステム)にDokanライブラリ(およびドライバー)を同梱する必要がある。
ライセンス[編集 | ソースを編集]
ライセンスは、DokanはLGPLおよびMIT ライセンス、DokanNetはMIT ライセンスとなっている。
DokanNetの使い方[編集 | ソースを編集]
DokanOperationsインターフェイスを実装したクラスを作り、そのインスタンスをDokanNet.DokanMain静的メソッドの引数に渡してやるだけである。ビックリするくらい簡潔明瞭。
DokanMainは終了するまで制御を返さないので別スレッドに乗っけた方がよさそう。
実際に動かすにはコンソールアプリやWinFormsでタスクトレイに常駐するようなアプリを作るだけでよく、ちょっと頑張れば何でもできてしまう気がする。Windowsサービスにするのも手かもしれない。
DokanNetの実装例[編集 | ソースを編集]
DokanNetMirror[編集 | ソースを編集]
DokanNetMirrorはDokanNetに付属のサンプルプログラムである[1]。
RegistoryFS[編集 | ソースを編集]
RegistoryFSはDokanNetに付属のサンプルプログラムである[2]。
Dokan SSHFS[編集 | ソースを編集]
Dokan SSHFSはDokanNetを用いてDokanの中の人が作っているファイルシステムである[3]。本気モードでありサンプルプログラムではない。
Dokan SSHFSは、SSHでアクセスできる先のファイルシステムを、ローカルのドライブとしてマウントするプログラム。 Dokan SSHFSの開発にはDokanNetとSharpSSHが使われている。