C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

ノータッチデプロイメントにおいて、exeからexeの起動


(過去ログ 1 を表示中)

[トピック内 6 記事 (1 - 6 表示)]  << 0 >>

■479 / inTopicNo.1)  ノータッチデプロイメントにおいて、exeからexeの起動
  
□投稿者/ ken 一等兵(6回)-(2005/06/01(Wed) 11:12:46)

分類:[.NET 全般] 


分類:[.NET 全般] 

こんにちは。kenです。

また質問させてください。

現状開発も一段落し、ノータッチデプロイメントについて
検証を行っております。

そこで質問なのですが、ノータッチデプロイメントで起動した
exeからIIS上においてある、別exeは呼び出し可能でしょうか?

ノータッチデプロイメントにおいて、そういう方法がある意味邪道
であることは承知の上で、起動する方法をご教授頂けないでしょうか?

他のサイトでもそういう書き込みはあったのですが、1つのexeだけを作成
するであるとか、画面をDLLにしてランチャからインスタンス化して
使用するであるとか、確かに最もな方法だとは思いますが、
そこを曲げてでも、exeからIIS上のexeに遷移する方法を知りたいと
考えております。

もし、exeからIIS上のexeに遷移する方法をご存知の方がおられましたら、
どのようなクラスのメソッドを用いて実現しているのか
ご教授頂きたく思います。

また、もうひとつ標題とは内容が違うのですが、Application Updater Component
についてなのですが、これは一度クライアントにインストールする必要が
ありますよね?IIS上に既存では無かったexeを勝手に検出して、クライアントに
ダウンロードするものではないですよね?
資料見ましたが、そのことについて言及はしていませんでした。
コンポーネントの名前からもUpdater(更新)なので、無理なのでしょうね?
もしご存知の方おられましたら、ご教授願えませんか?
単純に検証した段階では、ダウンロードされませんでした。

何卒、宜しくお願い致します。

0
引用返信 編集キー/
■482 / inTopicNo.2)  Re[1]: ノータッチデプロイメントにおいて、exeからexeの起動
□投稿者/ 小野@どっとねっとふぁん 二等兵(3回)-(2005/06/01(Wed) 15:06:44)

分類:[.NET 全般] 

ためしてないけど、、、
Process.Start("http://サーバ/アプリ.exe")
で起動するような気がする。
これを実行するマシンのセキュリティの設定は低くしてやらないと
だめだろうけど。

Application Updater Componentはそもそも一度インストールした後、
バージョンアップがあったときにアプリケーションを置き換える
ものなんじゃないかな?
これもちゃんと見てないけど。

0
引用返信 編集キー/
■483 / inTopicNo.3)  Re[2]: ノータッチデプロイメントにおいて、exeからexeの起動
□投稿者/ ken 一等兵(8回)-(2005/06/01(Wed) 18:43:05)

分類:[.NET 全般] 

小野@どっとねっとふぁんさんこんにちは。

> Process.Start("http://サーバ/アプリ.exe")
> で起動するような気がする。

やってみました。が一瞬IEが立ち上がってしまうのです。
画面遷移の度に、画面にIEがちらつくのはかなりつらいです。

確か小野さんは、以前にも他のサイトで同じ質問に回答されてました
よね?
そのときは1つのEXEとn個のDLLにすればいいという内容だったと
記憶していますが、今回私が知りたいのは、純粋にEXEをキックするかの
ようにIIS上のEXEを起動する方法なので、質問させて頂きました。

ですので、すいませんがもう少し相談させてくださいね。

ちょっと前置きが長くなりましたが上記の方法だと、常に例外が
発生しているようです。
確かにProcess.Startで(一瞬IEが起動しますが)目的のEXEは起動しましたが、
IEが終了した瞬間に、例外が発生します。
どうやらIEのプロセスが終了してしまうため発生しているようです。

名前空間にもProcessと含まれているので、プロセスの状態が捕捉できない
ような状況でのProcess.Startメソッドは少し違うような気がしました。

そこで、自分なりに考えたのですが、ノータッチデプロイメントは
IIS等のWebサーバからアセンブリをダウンロードして(語弊は勘弁してください)
クライアントで実行するのですから、何とかしてあたかもIE等のブラウザから
リクエストがあったかの如く、IISをだますことはできないでしょうか?

その方法を探ったのですが、どのクラスをどのように使用すれば、
Webサーバにリクエストを送信できるのか調べあぐねています。

どなたかご存知の方おられましたら、私のひとつの考察にお力をお貸し
願えないでしょうか?
きっとノータッチデプロイメントで同じ悩みを抱えておられる方が
いらっしゃると思います。

何卒、宜しくお願い致します。


0
引用返信 編集キー/
■484 / inTopicNo.4)  Re[3]: ノータッチデプロイメントにおいて、exeからexeの起動
□投稿者/ 中博俊 少将(62回)-(2005/06/02(Thu) 00:49:31)
中博俊 さんの Web サイト

分類:[.NET 全般] 

>そこで、自分なりに考えたのですが、ノータッチデプロイメントは
>IIS等のWebサーバからアセンブリをダウンロードして(語弊は勘弁してください)
>クライアントで実行するのですから、何とかしてあたかもIE等のブラウザから
>リクエストがあったかの如く、IISをだますことはできないでしょうか?

ノータッチデプロイメントはIEをホストにIEExecがいてはじめて成り立つので、ごまかすことは難しいと思います。

#わかんないけどね(^^

0
引用返信 編集キー/
■487 / inTopicNo.5)  Re[3]: ノータッチデプロイメントにおいて、exeからexeの起動
□投稿者/ 小野@どっとねっとふぁん 二等兵(4回)-(2005/06/02(Thu) 15:14:05)

分類:[.NET 全般] 

もしかすると、Assembly.LoadFromでexeのアセンブリ読み込んで、
リフレクションでMainメソッドたたく、という方法が使える「かも」
しれません。
上記の文章だけで何をやるかがイメージできる人なら挑戦してみても
よいかも。
思いつきで書いてるので、本当にできるかどうかわかりませんが。

(以下、ひとりごと)
自分ならそもそもそんな設計しない、かノータッチデプロイメントを
使わない方法をさがす、かだろうな。
なので、上記の方法をテストしたり、詳しく教えたりする気はありません。
できちゃってるものを無理やりノータッチデプロイメントで動かせないかと
考えてるように思いますけど、セキュリティの設定の問題等々もあるし
あんまり益ないんじゃないかと。。。
Ver2.0がでたらまた変わるしねぇ。

0
引用返信 編集キー/
■492 / inTopicNo.6)  Re[4]: ノータッチデプロイメントにおいて、exeからexeの起動
□投稿者/ ken 一等兵(9回)-(2005/06/02(Thu) 19:32:52)

分類:[.NET 全般] 

こんにちは。

返信遅くなりました。

> もしかすると、Assembly.LoadFromでexeのアセンブリ読み込んで、
> リフレクションでMainメソッドたたく、という方法が使える「かも」
> しれません。
> 上記の文章だけで何をやるかがイメージできる人なら挑戦してみても
> よいかも。

上記の件ですが、近いことをやってみましたが、やはりIEの呪縛からは
逃れられないようです。
よくよく考えてみると、ノータッチデプロイメントにてIEがやっているのは、
リクエストを出しているだけではないですね。タスクマネージャを見ると、
IEExecというプロセスが起動して、.NETアプリのプロセスが全くないです。
IEExecの上で、プロセスが起動しているようにみえるので、ノータッチ
デプロイメント自体がそれに依存しきっていると考えられます。

ですので、上記の方法はあきらめて、他の方法を探ってみます。

当方の考察の相談にのって頂いた方々がおられたことに感謝、感謝。

本当にありがとうございました。

----------
ken

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -