- PR -

C++プログラムのノータッチ・デプロイメント化

1
投稿者投稿内容
Dog
会議室デビュー日: 2003/11/17
投稿数: 4
投稿日時: 2003-11-17 20:47
C++(C)のCADプログラムをノータッチ・デプロイメント化するとしたら、C#化する以外に(簡単な)良い方法はありますでしょうか?

どなたか、教えていただけないでしょうか?

C++コンパイラが出力するコードは、検証不能なコードであり、ローカルPCのファイルシステムにインストールされているコードだけがロード可能と「Essential .NET」に記載がありました。セキュリティの設定等でインターネット上のプログラムをロードして、実行することはできないのでしょうか?
nishi
常連さん
会議室デビュー日: 2003/11/14
投稿数: 25
お住まい・勤務地: 大阪
投稿日時: 2003-11-18 09:35
C++のソースをノータッチ・デプロイメント化
というのは経験がないので解りませんが
「ローカルPCのファイルシステムにインストールされているコードだけがロード可能」
というのは.NETのコード アクセス セキュリティ機能で引っかかっているということでしょうか?
「セキュリティの設定等でインターネット上のプログラムをロードして、実行することはできないのでしょうか?」
とのご質問ですから、コード アクセス セキュリティ機能かなと思いますが。
それでしたら、管理ツール内にある「Microsoft .NET Framework 1.1 構成」を使って
セキュリティを変更する方法もあります。
ただしセキュリティ面を変更するので注意が必要です。
StrongName(アセンブリ署名)を付けるとか、Signcode.exeでAuthenticode デジタル署名を付けるとかも必要になるかもしれません。
Dog
会議室デビュー日: 2003/11/17
投稿数: 4
投稿日時: 2003-11-18 16:48
ヘルプに下記のような記載がありました。

「検証可能なタイプ セーフ コードの作成」:”タイプ セーフではない言語もあり、Microsoft Visual C++ などの一部の言語コンパイラは、検証可能なタイプ セーフ マネージ コードを生成できません。”

「タイプセーフとセキュリティ」:”タイプセーフでないすべてのコードは、列挙子メンバSkipVerificationが渡されたSecurityPermissionを与えられていないと実行できない”

この意味がよくわかりません。
タイプセーフなプログラムからタイプセーフでないプログラムを呼び出すとき、予めSkipVerificationが渡されたSecurityPermissionを与えておく必要があるということでしょうか?
タイプセーフでないexeを呼び出す場合はどうすればよいのでしょうか?

どなたか、教えていただけないでしょうか?


Dog
会議室デビュー日: 2003/11/17
投稿数: 4
投稿日時: 2003-11-19 14:33
Microsoft .NET Framework1.1 構成にて、セキュリティの変更を試みましたが、My Computerと同等としてもSystem.Load.FileLoadExceptionのエラーとなりました。
StrongNameもSignCodeも試してみましたが、同じでした。

セキュリティポリシーを変更すれば可能となるようなのですが、どのように変更すればよいか今のところわかっていません。

以上、現状についてです。
Dog
会議室デビュー日: 2003/11/17
投稿数: 4
投稿日時: 2003-12-01 11:11
下記に対策の記載がありましたので、報告いたします。

http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vcmex/html/vclrfproducingverifiablecomponentswithmanagedc.asp
1

スキルアップ/キャリアアップ(JOB@IT)