- - PR -
AvtiveXコンポーネントの開発
| 投稿者 | 投稿内容 | ||||||||
|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2005-02-25 10:28
http://www.atmarkit.co.jp/flinux/special/webdav/webdav02b.html
次のページのほうです。 っていうか、「ネットワークドライブ」ではなく 「ネットワークプレイス」でしたね・・・すいません。 | ||||||||
|
投稿日時: 2005-02-25 10:32
WinInetですが,確か,
VB向けのサンプルがMSDNにまだあった?と思うので それを見ながら,C++&ATLでさくっと必要なメソッドを実装して, ActiveX COMコンポーネントを作成して クライアント側にインストールしてもらっておいて, ASP.NET側では, Objectタグで,それを利用ということでしょう。 > HTTPにてファイル転送を行うというものです ダウンロードはともかく,アップロードは, FTPということになるんじゃないかと... # クライアント側のコンポーネントをどの方式で作成したとしても, WEBページ内のObjectタグで利用するんだったら, 明示的にインストールされたものでないと, 障害なくローカルファイルにアクセスできないじゃないかと... # C#でActiveXコンポートネントを作成できなくはないけど, どうかなぁ〜。 C++&ATLがわからんということで, C#で作るにしても, ネットワークから直接流れてきたC#等で作成されたマネジドオブジェクトは, セキュリティの関係で,ふつうは,ローカルファイルにアクセスできないので クライアント側へのインストールというか, レジストリの登録は必要かと。 なので,ダウンロード画面を用意して,一旦,ダウンロードさせて, そして,それをインストールさせてから...ということでしょう。 | ||||||||
|
投稿日時: 2005-02-25 11:10
WebDAVでいければいいと考えてはいたんですが、客先からの要望仕様で、
・NTFSのアクセス権限でアクセスが拒否されるフォルダ(読み取り権限がないなど)は画面上に表示させない。 ・使用する前に必ずログオン画面を表示させる などがあり、使えないと考えました。 | ||||||||
|
投稿日時: 2005-02-25 11:24
ネットワークプレイスはシェルの機能なので、CreateFile() などのファイル入出力 API では操作できないはずです。 なので、エンドユーザに「Web フォルダ」を直接使わせる以外の応用は難しいのではないでしょうか。 _________________ // 渋木宏明 (Hiroaki SHIBUKI) // http://hidori.jp/ // Microsoft MVP for Visual C# // // @IT会議室 RSS 配信中: http://hidori.jp/rss/atmarkIT/ | ||||||||
|
投稿日時: 2005-02-25 11:51
こういうのもあるみたいです。 http://www.marroncraft.com/webdrive/index.htm 特定の商品の宣伝になってしまって申し訳ないのですが、 WEBDAVやFTPなどの接続先をネットワークドライブとして マウントしてくれるクライアントツールです。 開発費と導入費を比べてみて、導入費の方が安いのであれば ツールの導入という選択肢もありそうです。 | ||||||||
|
投稿日時: 2005-02-25 11:57
危なっかしいなぁ・・・
NTFSのアクセス権管理において、「ファイルを読み込む為」のアクセス権と、「ファイル名を見る為」のアクセス権は別になっています。「フォルダ内容の一覧を表示する」のアクセス権を与えなければ、WEB共有でもフォルダ名は見えなくなります。フォルダ名を見せたくないなら、そのように正しくNTFSアクセス権を設定してもらうのが常道じゃないかなぁ。 もし本当に読み取り権限が無い場合にファイル名を表示しないようにするためには、全てのファイルを一度開いてみて、エラーになったら表示しないといった処理を記述する事になりますよ。
これは運用の問題ですよね。本来Windowsにログオンしている時点で、認証は完了しているます。明示的にログオフしない限り、再度認証が表示されないのは正しい動作です。 逆にActiveXコントロールにしたところで、立ち上げっぱなしで離席するユーザーが居る限り、正規に認証をしていないユーザーが勝手に操作してしまう可能性をなくす事は出来ませんよね。ActiveXコントロールを使う事は、本質的な解決にはなっていないと思います。 _________________ 甕星 <mikahosi@abox9.so-net.ne.jp> http://blogs.msmvp.jp/mikahosi/ | ||||||||
|
投稿日時: 2005-02-25 13:49
甕星さま、ご丁寧な解説、とても助かります。
無知ですいません。「ファイルを見せるため」の権限の設定はどのように設定するのでしょう? あるフォルダ(仮に名前をFolderとします)に対し、Aというアカウントで「フルコントロール」の設定をしていますが、それ以外のアカウントには何も許可していません。しかし、A以外のアカウントでログオンしてもFolderという名前は表示されてしまいます。ただしクリックして開こうとすると「アクセスが拒否されました。」のメッセージが表示されます。 ログオンついては確かに運用の問題です。 客先の使用方法として、AさんとしてログオンしているPCからBさんがこのWebアプリを使用するというようなことを想定しないといけないのです。セキュリティなどの面から見るととんでもない運用だと思われるかもしれませんが。なのでこのWebアプリでは必ずログオン画面が必要なのです。 仕様や運用がなっていないのかもしれませんが・・・。 | ||||||||
|
投稿日時: 2005-02-25 15:49
板違いですので、そちらへ行って質問することにします。
| ||||||||
