2017-01-06 3 views
-2

ボタンを押したときにFTPサーバに入り、別のプログラムをクライアントのコンピュータに自動的にインストールするプログラムを作成しようとしています。プログラムを別のプログラムでインストールする方法#

プログラムは、クライアントのコンピュータ上の古いファイルを削除しています。新しいものにインストールする。

if (!new WebClient().DownloadString("ftp://username:[email protected]/version.txt").Contains("1.0.0.0")) 

         { 

         } 
         else 
         { 
          if (MessageBox.Show("New Update! Would you like to update?", "Yay!", 
           MessageBoxButtons.YesNo, MessageBoxIcon.Information) == 
           System.Windows.Forms.DialogResult.Yes) 
          { 
Process.Start("ftp://username:[email protected]/place/thing.exe"); 
           Application.Exit(); 
           ProcessStartInfo Info = new ProcessStartInfo(); 
           Info.Arguments = "/C choice /C Y /N /D Y /T 3 & Del " + 
               Application.ExecutablePath; 
           Info.WindowStyle = ProcessWindowStyle.Hidden; 
           Info.CreateNoWindow = true; 
           Info.FileName = "cmd.exe"; 
           Process.Start(Info); 

Process.Start( "ftp://username:[email protected]/place/thing.exe")。

これは、クライアントのコンピュータにインストールする新しいファイルです。これまではクライアントをWebブラウザに導き、ダウンロードリンクでブラウザを開きます。自分のコンピュータに自動的にインストールします。

+0

ファイルをダウンロードしてからprocess.startを呼び出してください – Steve

+0

@Steve申し訳ありませんが、ダウンロードはどういう意味ですか?私はクライアントがprocess.startを通してファイルをダウンロードさせようとしています。 – RockyBoa

+0

プロセスを作成して開始する前に 'Application.Exit'を呼び出すのはなぜですか? –

答えて

1

FTPはファイルコピープロトコルであり、リモートファイルシステムではありません。したがって、FTPサーバー上でホストされているファイルを実行するためのウィンドウが表示されません。 FTPプロトコルを使用してファイルをローカルのTempフォルダにダウンロードし、ダウンロードしたファイルを実行する必要があります。

+0

あなたはそれをする方法を言う投稿に私を指摘できますか?私は1つを見つけることができません。 – RockyBoa

+0

本当ですか? ".net ftp client download file"を検索すると、このようなヒット数が数百に上がらなかったでしょうか? http://www.schiffhauer.com/downloading-a-file-from-ftp-with-system-net-ftpclient/「.net外部プログラムを実行する」を検索しても、このようなヒットはほとんどありませんでしたか? http://stackoverflow.com/questions/3173775/how-to-run-external-program-via-a-c-sharp-programあなたのグーグルのスキルをちょっと磨く必要があります。 – PhillipH

関連する問題