C#-Compiler integraler Teil von Windows?

12/10/2015 - 00:54 von ram | Report spam
Eine der hàufigsten Operationen ist es, eine Zip-Datei von
einer URI zu kopieren und zu entpacken, aber gibt es ein
Kommando:

download -unpack ^
http://example.com/example.zip %USERPROFILE%\Documents\example\

? Nein!

Nun kann man dies zwar von cmd aus erledigen, indem man die
Powershell aufruft (wenn man mindestens Powershell Version 3
und Net 4.5 hat), aber die basiert auf Dotnet, und dann kann
ich das ganze ja auch gleich in C# programmieren!

Nun habe ich gesehen, daß heute unter Windows auch oft der
C#-Compiler »csc.exe« vorhanden ist. Kann man davon
ausgehen, daß ein C#-Compiler heute auf jedem modernen
Windows-System (ab Windows 7) vorhanden ist, auch wenn dort
nicht extra Entwicklungswerkzeuge installiert werden,
und daß dies voraussichtlich auch so bleiben wird?
 

Lesen sie die antworten

#1 Stefan Kanthak
12/10/2015 - 13:32 | Warnen spam
"Stefan Ram" schrieb:

Eine der hàufigsten Operationen ist es,



In welchem Universum?

eine Zip-Datei von einer URI zu kopieren und zu entpacken,
aber gibt es ein Kommando:

download -unpack ^
http://example.com/example.zip %USERPROFILE%\Documents\example\

? Nein!



Wozu?
"use the right tool for the job" resp. EIN Kommando fuer EINE
Aufgabe.

Wenn Dir BITSADMIN.EXE /Transfer ... nicht gefaellt: wer hindert
Dich, Dir mit den seit dem letzten Jahrtausend verfuegbaren
Bordwerkzeugen ein HTTP_GET.VBS oder HTTP_GET.JS zu schreiben?

HTTP_GET.VBS
Const strURL = "http://example.com/file.zip"
Const strDest = "...\file.zip"

Dim arrByte

With WScript.CreateObject("Microsoft.XMLHTTP")
.Open "GET", strURL, vbFalse
.Send vbNullString
arrByte = .ResponseBody
' varStream = .ResponseStream
' strText = .ResponseText
WScript.Echo "HTTP/1.1 " & .Status & " " & .StatusText
WScript.Echo .GetAllResponseHeaders
If .Status < 200 WScript.Quit .Status
If .Status > 299 WScript.Quit .Status
End With

With WScript.CreateObject("ADODB.Stream")
Const adTypeBinary = 1

Const adSaveCreateNotExist = 1
Const adSaveCreateOverWrite = 2

.Type = adTypeBinary
.Open
.Write arrByte
.Flush
.SaveToFile strDest, adSaveCreateOverWrite
.Close
End With
EOF

Und wenn Du schon dabei bist: UNZIP.VBS (wie auch ZIP.VBS) ist mit
dem Windows Script Host auch ganz einfach:

UNZIP.VBS
Const strZIPFile = "...\source.zip"
Const strDestDir = "...\target"
Const intOverWrite = 16

With WScript.CreateObject("Shell.Application")
.NameSpace(strDestDir).CopyHere .NameSpace(strZIPFile).Items, intOverWrite
End With
EOF

Du koenntest aber auch <http://curl.haxx.se/download.html>
sowie <http://info-zip.org/UnZip.html> besuchen...

Nun kann man dies zwar von cmd aus erledigen, indem man die
Powershell aufruft (wenn man mindestens Powershell Version 3
und Net 4.5 hat), aber die basiert auf Dotnet, und dann kann
ich das ganze ja auch gleich in C# programmieren!

Nun habe ich gesehen, daß heute unter Windows auch oft der
C#-Compiler »csc.exe« vorhanden ist. Kann man davon
ausgehen, daß ein C#-Compiler heute auf jedem modernen
Windows-System (ab Windows 7) vorhanden ist, auch wenn dort
nicht extra Entwicklungswerkzeuge installiert werden,
und daß dies voraussichtlich auch so bleiben wird?



CSC.EXE ist Teil des .NET Framework und wird seit dessen Version 1.1
standarmaessig unter "%SystemRoot%\Microsoft.NET\Framework\v<ersion>\"
installiert.

Stefan
[
Die unaufgeforderte Zusendung werbender E-Mails verstoesst gegen §823
Abs. 1 sowie §1004 Abs. 1 BGB und begruendet Anspruch auf Unterlassung.
Beschluss des OLG Bamberg vom 12.05.2005 (AZ: 1 U 143/04)


news://freenews.netfront.net/ - complaints:

Ähnliche fragen