none
.NET FrameworkをインストールせずにC#で作ったEXEを実行する方法 RRS feed

  • 質問

  • やまも2といいます。

    JavaからC#への移行を検討しています。C#で作成したアプリケーションを開発
    環境とは別のマシン上で実行させる場合に.NET Framework 再頒布可能パッケー
    ジをインストールする必要があると思うのですが、このパッケージをインスト
    ールせずにC#でEXEを作る際に必要なDLL(mscoree.dll等)をEXEの中に格納する
    もしくは、EXEと同じディレクトリに置いておいて実行させるなどの方法は
    ないのでしょうか?


    2006年8月4日 12:57

回答

  • ありません。

    2006年8月4日 14:41
  • yamamo2 さん、こんにちは。

     yamamo2 さんからの引用
    JavaからC#への移行を検討しています。C#で作成したアプリケーションを開発環境とは別のマシン上で実行させる場合に.NET Framework 再頒布可能パッケージをインストールする必要があると思うのですが、このパッケージをインストールせずにC#でEXEを作る際に必要なDLL(mscoree.dll等)をEXEの中に格納する
    もしくは、EXEと同じディレクトリに置いておいて実行させるなどの方法はないのでしょうか?

    Java をやられているのであれば、動作原理はわかっているかと思いますが、
    実行させるためには、アセンブリに合致した .NET Framework が必須なので、できないです。

    そもそも、こういった案件ですと .NET CLR 系の言語を選択する意味すらなくなってしまいます。
    別のテクノロジの言語で開発された方が、現実的だと思います。

    2006年8月5日 1:12

すべての返信

  • ありません。

    2006年8月4日 14:41
  • yamamo2 さん、こんにちは。

     yamamo2 さんからの引用
    JavaからC#への移行を検討しています。C#で作成したアプリケーションを開発環境とは別のマシン上で実行させる場合に.NET Framework 再頒布可能パッケージをインストールする必要があると思うのですが、このパッケージをインストールせずにC#でEXEを作る際に必要なDLL(mscoree.dll等)をEXEの中に格納する
    もしくは、EXEと同じディレクトリに置いておいて実行させるなどの方法はないのでしょうか?

    Java をやられているのであれば、動作原理はわかっているかと思いますが、
    実行させるためには、アセンブリに合致した .NET Framework が必須なので、できないです。

    そもそも、こういった案件ですと .NET CLR 系の言語を選択する意味すらなくなってしまいます。
    別のテクノロジの言語で開発された方が、現実的だと思います。

    2006年8月5日 1:12
  •  じゃんぬねっと さんからの引用

    yamamo2 さん、こんにちは。

    Java をやられているのであれば、動作原理はわかっているかと思いますが、

    多分 Java で言うところの「プライベートJRE」とか「ahed-of-time (AOT) Java コンパイラ (によるランタイム・ライブラリの同梱)」などをお探しなのだと思いますが,Microsoft は現時点でそのような機能をリリースしていません.
    Mono プロジェクトの方ではそのような研究がなされていたかと思います.

    一応補足と言うことで.

    2006年8月5日 15:12
  • > Mono プロジェクトの方ではそのような研究がなされていたかと思います.
     
    Mono 以外にもJavaのnative compilerと同様に、商品として販売されている会社もありますね。
     
     
    もっとあったきがしますが、ちょっと URL まででてこないです。
     
    2006年8月7日 7:44
  • > Mono 以外にもJavaのnative compilerと同様に、商品として販売されている会社
    > もありますね。
    > もっとあったきがしますが、ちょっと URL まででてこないです。

    Lady.BUGさん、ありがとうございます。やっぱり、こういうツールの需要あるでしょうからね。私の方でも探してみます。

    さすがに、取引先のマシンでデモなどをやるときにちょっと「.NET Frameworkをインストールさせてください」と言っても普通はさせてくれませんからね(^_^;)
    EXEだけ持って行って動かすということができないと困ると思うんですけどね??
    2006年8月7日 12:21
  • > さすがに、取引先のマシンでデモなどをやるときにちょっと「.NET Frameworkをインストールさせてください」と言っても普通はさせてくれませんからね(^_^;)
    > EXEだけ持って行って動かすということができないと困ると思うんですけどね??

    アプリケーションを動かすのにある程度の環境設定は必要なことが多いと思うので、たいていはノートPCを持っていってデモしますけど。
    お客さんの環境で本当に動くのか、を確かめるのはまた別の話だろうし。

     

    2006年8月7日 13:36
  • どっとねっとふぁんさんが書かれているとおり、デモをやるならばこそ、自分が管理している完璧に調整したマシンでやるべきだと思います(それでも本番で動かないことがあるのはお約束)。

    デモの途中で不慮の事態で動作しなかったら、お客さんの印象めちゃくちゃ悪いと思いますよ。それに、昨今の状況を見ると、お客さんのマシンに「一時的なデモだからこれ入れさせてください」といって、OKという人は多くないように思います。

    2006年8月7日 23:41