0

クライアントサーバーアプリケーションを作成しました。サーバーアプリケーションを実行しているコンピューターが1台あり、クライアントアプリケーションを実行しているコンピューターが複数あります。

これまでのところ、アプリケーションの新しいバージョン/パッチを入手するたびに、最初にVNCを介してサーバーアプリケーションにバイナリをコピーしてから、クライアント側でスクリプトを実行するスクリプトを開始します。つまり、バイナリをローカルフォルダ(ネットワークの実行が機能していません!)...次に、クライアントアプリケーションがすべてのクライアントコンピュータで起動されます...

それで、私の古いスタイルの方法を置き換えることができる良い機会は何ですか?

http / ftpで更新するクリックワンスアプリケーションを作成しようとしましたが、成功しませんでした^^

4

3 に答える 3

4

Prestoと呼ばれるオープンソースアプリを使用しています:http://presto.codeplex.com/

初期設定を行った後、各展開での手動手順は2つだけです
。1。バイナリをネットワークの場所にコピーし
ます。2。Prestoのボタンを押して、新しい展開を開始します。

Prestoの大きな利点は、Prestoを使用してアプリとサーバーを最初にセットアップし、各環境に適切な構成設定を指定できることです。デプロイメントを開始すると、インストールが自動的に行われ、正しい値が構成ファイルに書き込まれます(QAはQA値を取得し、本番環境は本番環境の値を取得します...)。

Prestoを使用すると、サービスの停止、フォルダーの削除、新しいバイナリのコピー、構成ファイルの更新などを行うことができ、すべて自動化されています。

于 2012-06-14T19:23:06.303 に答える
1

そのため、Webフロントエンドは非常に人気があります:)

優れた自動更新メカニズムとバージョン管理を実装してみてください。クライアントにはハードコードされたサーバーバージョンがあり、各コールサーバーでの最初の呼び出しにはすべて独自のバージョンが含まれています。バージョンが一致しない場合-自動更新の時間。サーバー上-バージョン間で標準のクライアントアプリケーションインストールをダウンロードするのはエンドポイントです。

したがって、クライアントには外部アップデータプロセスがあります。これは、クライアントが新しいバージョンが存在することを認識した後に開始されます。アップデータプロセスの目標は、新しいインストール/パッケージをダウンロードすることと、クライアントを更新/再インストールするインストールを実行することです。新しい/変更されたファイルを解凍してコピーします。

一部の外部ライブラリを使用しない場合。プロセスは次のようになります。

クリックワンスは別のアプローチであり、機能するはずです。

Similrの質問はこちら

.NETアプリケーションの自動更新

とにかく、おそらくあなたのクライアントアプリは良いインストーラーを必要とします。インストーラーが残っている場合は、単純なダウンローダー/アップデーターとバージョン管理をサービスに実装します。

于 2012-06-14T19:24:06.943 に答える
0

より少ないコードでこれを行うのはそれほど難しいことではありません。

  1. アプリケーションでhttpサービスを設定します。
  2. 現在のバージョンがリストされているファイルを作成します。
  3. アプリケーションでftpサービスを設定して、新しいバイナリを提供します。
  4. Updater.exeアプリケーションをクライアントに追加します。これにより、http経由で新しい更新がチェックされ、ftp経由で新しいバージョンがダウンロードされます。また、クライアントバージョンファイルを作成する必要があります。

つまり、古いスタイルの方法をもう一度実行するだけで完了です。クライアントアプリケーションがサーバーを実行できるかどうかはわかりません。その場合は、サーバーアプリからサービス(http、ftp)を分離することをお勧めします。

于 2012-06-14T19:39:57.507 に答える