更新用の関数を作成したい。新しいバージョンが表示されると、ダウンロード用のボタンが付いた入力ボックスが表示されます。そのボタンを押すと、saveFileDialogが表示され、ファイル(新しいバージョン)を目的の場所に保存します。
私はこの機能を持っています:
public void descarcare()
{
SaveFileDialog saveFileDialog1 = new SaveFileDialog();
saveFileDialog1.CreatePrompt = true;
saveFileDialog1.OverwritePrompt = true;
saveFileDialog1.FileName = "myText";
saveFileDialog1.DefaultExt = "txt";
saveFileDialog1.Filter ="Text files (*.txt)|*.txt|All files (*.*)|*.*";
saveFileDialog1.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
DialogResult result = saveFileDialog1.ShowDialog();
if (result == DialogResult.OK)
{
try
{
WebClient webClient = new WebClient();
byte[] receivedData = webClient.DownloadData("http://startut.ro/smartAppointment.rar");
FileStream fs = new FileStream(saveFileDialog1.FileName, FileMode.Create);
BinaryWriter bw = new BinaryWriter(fs);
bw.Write(receivedData);
bw.Close();
fs.Close();
((IDisposable)fs).Dispose();
}
catch (Exception e)
{
string message = e.Message;
MessageBox.Show("Nu ai o conexiune de internet stabilită. Încearcă să te conectezi la internet, și după aceea să descarci noua versiune !", "EROARE CONEXIUNE INTERNET");
}
}
}
まず、テストボタンを使用して関数が機能するかどうかを確認し、その後、入力ボックスに実装します。
private void button14_Click(object sender, EventArgs e)
{
descarcare();
}
ボタンを押すと、saveFileDiaglogが表示され、その後クラッシュします。saveFileDialogでクラッシュが発生します。コードなしでsaveFileDialogしかない場合、クラッシュします。問題はsaveFileDialogです。