webForumDet fria alternativet

HttpWebRequest, ladda ner fil

.NETur .NET

2 svar · 305 visningar · startad av aleborg

Medlem sedan jan. 20013 341 inlägg
Frågan#1

Jag har en .msi fil liggandes på en URL, den här vill jag från mitt WinForm-program(C#) ladda ner och sen stänga mitt program och köra filen(en enkel version av automatisk uppdatering :D
Nån som vet hur man går till väga?

Hittade den här koden:

	string lcUrl = "http://url:en";
				
	HttpWebRequest loHttp =	(HttpWebRequest) WebRequest.Create(lcUrl);
	loHttp.Timeout = 10000;    // 10 secs
	loHttp.UserAgent = "Code Sample Web Client";
	// *** Retrieve request info headers
	HttpWebResponse loWebResponse = (HttpWebResponse) loHttp.GetResponse();

	Encoding enc = Encoding.GetEncoding(1252);  // Windows default Code Page

	StreamReader loResponseStream =
		new StreamReader(loWebResponse.GetResponseStream(),enc);

	string lcHtml = loResponseStream.ReadToEnd();

	loWebResponse.Close();
	loResponseStream.Close();

Men den läser ju bara in responsen i en sträng!

Medlem sedan apr. 20012 266 inlägg
Medlem sedan jan. 20013 341 inlägg
#3
	string URL = "http://url:en";
	WebClient client = new WebClient(); 
	byte [] bytedata = client.DownloadData(URL);
	client.DownloadFile(URL, "C:\\setup.msi");
	this.Close();
	System.Diagnostics.Process.Start("C:\\filen.msi");

löste det!

135 ms totalt · 3 externa anrop · v20260731065814-full.b746b907
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)