exeやdllを共有したい場合に、Windowsのファイルとプリンタの共有機能を利用し、フォルダを公開して、そのフォルダ上にあるC#で作成したプログラムを実行してみてください。


なにやら、警告が表示されないでしょうか?


これは.netの「コード アクセス セキュリティ ポリシー」による制限です。


ローカル以外のC#のプログラムは、ファイルの読み書き、プリンタの利用、ODBCの利用等が出来ないようになっております。

(セキュリティレベルを高めるために)


これを設定するのが、XPの場合は

「コントロールパネル」→「管理ツール」→「Microsoft .NET Framework 1.1 構成」です。


ちなみに、v1.1の場合は1.1と書かれていてv2.0の場合は


「Microsoft .NET Framework 2.0 構成」と記載されています。


構成が英語で「Configuration」と書かれていることもあるので注意!


方法は色々とありますが、イントラネット上は全て安全という設定を例にとって説明します。


ウィンドウが表示されたら、「コードアクセスセキュリティポリシーの構成」をクリックします。


次に「ゾーンセキュリティの変更」をクリックします。


別ウィンドウが表示されたら「このコンピュータへの変更を行う」にチェックがついているのを確認し「次へ」


「イントラネット」アイコンを選択し、スライドバーを一番上に設定し、「次へ」をクリック


最後に「完了」ボタンをクリックして完了です。



ただし!!v2以降から不思議な事に構成ツールがSDK版にしかインストールされていません。


そう、「Microsoft .NET Framework 2.0 構成」がないんです。


じゃぁ再配布版を使ってる人はネットワーク上のアセンブリは実行できないの!?って話なるんですが、ツール自体は同梱されています。


ただし、GUIではなくWindowsのCLIターミナル、コマンドプロンプトで実行します。


スタート→ファイル名を指定して実行→cmdでコマンドプロンプトを表示します。


大半の人は次のコマンドで、.NETがインストールされているフォルダに移動できるのでは?


XXX>cd C:\WINDOWS\Microsoft.NET\Framework\v2.*
XXX>caspol.exe -machine -chggroup LocalIntranet_Zo
ne FullTrust
(Yes/Noを聞かれるのでyで改行)


でLAN内のC#アプリを実行可能になります。


もっと詳細を知りたい人は、caspolでググってください。