ASP.NET Programmierung   ·   Microsoft MVP ASP/ASP.NET   ·   Peter Bucher   ·   Jürgen Gutsch   ·   Karsten Samaschke   ·   Microsoft ASP.NET
Willkommen bei ASP.NET Zone. Anmelden | Registrieren | Hilfe

Glückwunsch zum Microsoft MVP 2011

Nunmehr zum 11ten mal freue ich mich über die Verleihung des Microsoft MVP Award im Bereich Visual Developer ASP/ASP.NET bzw. dieses mal ASP.NET/IIS, da Classic ASP in der Webentwicklerwelt nur noch eine kleine Rolle spielt.

Das schöne an dieser Auszeichnung ist, dass sie im Gegensatz zu Zertifizierungen wie MCSD, MCSE, MCP, usw. nicht durch Kursbesuche und/oder Prüfungen erworben werden kann, sondern eine Anerkennung des Fachwissens und des Engagements rund um die Entwicklergemeinschaft im Bereich ASP und ASP.NET darstellt.

Microsoft bietet unter der Adresse http://mvp.support.microsoft.com/ detaillierte Informationen zum Microsoft MVP Programm.

Eingetragen von Stefan Falz | 1 Kommentare

Windows 7 Entwicklerwettbewerb

Werbeanzeige Windows 7 Entwicklerwettbewerb

Microsoft hat ein neues Gewinnspiel. Zu gewinnen gibt es u.a. 3 * je eine Las Vegas Reise inkl. Flug, Hotel (Mandala Bay), Besuch der MIX 2011 und natürlich ein wenig Spielgeld zum zocken :)

Hier die wichtigstens Infos zum "Gewinnspiel" (eigentlich ja Windows 7 Entwicklerwettbewerb aber Glück spielt sicher auch eine Rolle, schließlich winkt eine Reise nach Vegas :)

Auftrag:

Welche Funktion suchst du in Deinem System vergeblich? Die Mäusejagd, das Schneetreiben oder etwas ganz anderes? Stell Dich der Herausforderung und baue Deine eigene verrückte Wunsch-Anwendung. Dabei sollte mindestens eine der vielen neuen Windows 7 Funktionen verwendet werden. Lade Dir dein Werkzeug kostenlos herunter und zeig wie kreativ Du bist. Wie Dein Windows 7 aussehen soll, kannst Du jetzt selbst bestimmen.

Anforderungen für den Wettbewerb:

  • Verwendung einer Version von Visual Studio 2010 (z.B. kostenfrei Visual Studio Express herunterladen)
  • .NET Framework oder Visual C++ basierend
  • Verwendung von Windows 7 Funktionen
  • Möglichst wenig Zeilen (gibt Pluspunkte)
  • Sämtliche Bestandteile (Bibliotheken, Bilder, etc.) müssen mit eingereicht werden
  • Der Teilnehmer muss die Software selber erstellt haben und sämtliche Rechte an allen eingebundenen Bestandteilen besitzen.

Und das gibt es zu gewinnen:

  • 1. - 3. Preis: Großer Las Vegas Gambling-Trip mit Besuch der MIX und Helikopterflug.
  • 4. Preis: 40‘‘ Sony LCD Flatscreen TV KDL-40NX715 bietet Full HD und 3D im brillianten Design, dazu bekommst du das Sony Sound System mit 3D-fähigem BluRay BDV-IZ1000W
  • 5. Preis: Xbox mit Kinect, 1x Controller sowie den 3 Spielen Kinect Adventures, Kinect Sports und Dance Central
  • 6. Preis: Windows Phone7 (LG Optimus 7)
  • 7. Preis: Paket mit Maus, Tastatur und Headset

Weitere Informationen und Teilnahmebedingungen.

P.S.: Normalerweise blogge ich über so etwas ja nicht aber bei den in Aussicht gestellten Preisen denke ich, dass sicher einige gerne teilnehmen werden. (Mich inklusive)

Eingetragen von Stefan Falz | 0 Kommentare

Update zur ASP.NET Sicherheitslücke

Da es leider immer noch keinen Patch zur aktuellen ASP.NET Sicherheitslücke gibt, sollte man lt. dem entsprechenden Blogpost von Scott Guthrie zusätzlich zu dem bereits erwähnten Workaround (Aktivieren der CustomErrors ...) nun noch IIS UrlScan einsetzen, um den Schutz zu verbessern.

Installieren und aktivieren von IIS URLScan mit einer individuellen Regel

Wenn ihr das IIS URLScan Modul noch nicht auf eurem IIS verwendet, könnt iht dieses hier herunterladen:

    * x86 Version
    * x64 Version

Nach der Installation fügt ihr eine neue URL Scan Regel ein. Hierfür öffnet ihr die UrlScan.ini, welche ihr im Normalfall hier findet:

    * %windir%\system32\inetsrv\urlscan\UrlScan.ini

So ziemlich am Ende der Datei steht der Abschnitt [DenyQueryStringSequences].  Dort fügt ihr einen zusätzlichen Eintrag "aspxerrorpath=" hinzu und speichert die geänderte UrlScan.ini Datei.

    [DenyQueryStringSequences]
    aspxerrorpath=

Weitere Details hierzu findet ihr hier.

Eingetragen von Stefan Falz | 1 Kommentare

Aktuelles ASP.NET Sicherheitsproblem - Sofortige Aktion notwendig!

Ein aktuelles und sehr übles Sicherheitsproblem macht gerade Schlagzeilen.

Vorab das wichtigste: Es ist absolut notwendig, dass man unverzüglich die Workarounds, die u.a. von Scott Guthrie gepostet wurden, anwendet. Details dazu siehe:

  http://weblogs.asp.net/scottgu/archive/2010/09/18/important-asp-net-security-vulnerability.aspx

Ein kleiner Auszug aus dem Blogbeitrag:

What does the vulnerability enable?

An attacker using this vulnerability can request and download files within an ASP.NET Application like the web.config file (which often contains sensitive data).

At attacker exploiting this vulnerability can also decrypt data sent to the client in an encrypted state (like ViewState data within a page).

Da in den Config Dateien oftmals sicherheitsrelevante Daten (wie bspw. ConnectionStrings inkl. Pfade, Usernamen und Passworte, ...) stehen, ist es, wie schon gesagt, dringend notwendig, sich über die Sicherheitslücke zu informieren. der Blogbeitrag von Scott Guthrie beinhaltet eigentlich alles inkl. einem kleinen Hilfstool, mit dem man die problematischen Webs auf eigenen Webservern besser finden kann.

Eingetragen von Stefan Falz | 2 Kommentare

Glückwunsch zum Microsoft MVP 2010!

Nunmehr zum 10ten mal freue ich mich über die Verleihung des Microsoft MVP Award im Bereich Visual Developer ASP/ASP.NET.

Das schöne an dieser Auszeichnung ist, dass sie im Gegensatz zu Zertifizierungen wie MCSD, MCSE, MCP, usw. nicht durch Kursbesuche und/oder Prüfungen erworben werden kann, sondern eine Anerkennung des Fachwissens und des Engagements rund um die Entwicklergemeinschaft im Bereich ASP und ASP.NET darstellt.

Microsoft bietet unter der Adresse http://mvp.support.microsoft.com/ detaillierte Informationen zum Microsoft MVP Programm.

Eingetragen von Stefan Falz | 1 Kommentare

Schließung der Microsoft Newsgroups

Microsoft wird seine Newsgroups schließen. Die Gründe sind vielfältig, teilweise verständlich, teilweise auch wieder nicht. Als Zeitrahmen kann man 1-x Monate annehmen. Die am wenigstens besuchten Newsgroups werden früher schließen als die gut besuchten (verständlich :)

Die User der Newsgroups werden dann zu gegebener Zeit über entsprechende Postings seitens Microsoft auf Alternativen hingewiesen, primär natürlich die Microsoft Foren. Daneben gibt es natürlich noch weitere Optionen, bspw. die ASP.NET Zone :)

Vom Thema her passen folgende Newsgroups zu der Zielgruppe, die auch in der ASP.NET Zone zu finden ist:

  microsoft.public.de.german.entwickler.dotnet.asp
  microsoft.public.de.german.inetserver.iis
  microsoft.public.de.german.inetserver.iis.asp

Falls also ein Besucher der o.g. Newsgroups nicht weiß, wo er seine Fragen nun stellen soll, ist dieser ganz herzlich eingeladen, das in der ASP.NET Zone zu tun.

Ich für meinen Teil trauere den NGs jetzt schon ein wenig nach, da ich dort ebenfalls seit mehr als 10 Jahren aktiv bin. Newsgroups und Foren haben beide ihre Vor- und Nachteile, daher hätte ich es begrüßt, wenn die Newsgroups bleiben würden. Aber die Entscheidung ist gefallen und damit muss ich mich dann jetzt wohl leider abfinden.

Eingetragen von Stefan Falz | 1 Kommentare

OleDb: Parameter für OleDbCommand müssen zwingend in Reihenfolge sein?

Bekanntlicherweise ist es bei OleDbCommand Objekten, die bspw. auf eine Access Datenbank zugreifen, zwingend erforderlich, die verwendeten Parameter in der richtigen Reihenfolge anzugeben, da benannte Parameter hier nicht möglich sind.

Dim MySqlStatement     As String = "SELECT * FROM <Tabelle> WHERE <Spalte1> = ? AND <Spalte2> = ?"
Dim MyConnectionString As String = "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=<PfadZurDatenbank>.mdb" )
Dim MyConnection       As New OleDbConnection( MyConnectionString )
    MyConnection.Open()
 
Dim MyCommand          As New OleDbCommand( MySqlStatement, MyConnection )
    MyCommand.Parameters.AddWithValue( "?", "Wert 1" )
    MyCommand.Parameters.AddWithValue( "?", "Wert 2" )
 
    ...
 
    MyCommand.Dispose()
 
    MyConnection.Close()
    MyConnection.Dispose()

Im Beispiel werden zwei Parameter verwendet. Über AddWithValue werden die Werte für die beiden Parameter zugeordnet. Man erwartet (und so ist es auch dokumentiert), dass "Wert 1" bei "<Spalte1>" und "Wert 2" bei "<Spalte2>" zugeordnet wird. Ist auch so. Aber, uns das ist das böse an der Sache, nicht bei SubSelects, wie bspw. einer IN Klausel.

Sähe das SQL Statement bspw. so aus ...

SELECT * FROM <Tabelle> WHERE <Spalte1> = ? AND <Spalte2> IN ( SELECT <SpalteX> FROM <AndereTabelle> WHERE <SpalteY> = ? )

... sollte man erwarten, dass "Wert 1" bei "<Spalte1>" und "Wert 2" bei <SpalteY>" - also im SubSelect - zugeordnet wird. Ist aber nicht so. In dem Fall muss man die Statements von innen nach außen auflösen, fürs Beispiel also die Befehle zum Hinzufügen der Parameter lediglich in der Reihenfolge vertauschen, also bspw. so:

    MyCommand.Parameters.AddWithValue( "?", "Wert 2" )
    MyCommand.Parameters.AddWithValue( "?", "Wert 1" )

Bei komplexeren bzw. tiefer verschachtelten SQL Statements kann das aber zum einen ziemlich eklig werden und zum anderen in Try&Error ausarten, was einer sicheren Arbeitsweise nicht wirklich zugänglich ist.

Die Ursache dürfte hier aber nicht bei .NET zu suchen sein. Gibt man nämlich eine parametrisierte Abfrage in Access ein und lässt diese ausführen, wird bei einem SubSelect ebenfalls der Parameter im inneren Statement zuerst vom Benutzer abgefragt. Von daher dürfte das ein "normales" Verhalten sein, welches aber doch sehr zur Verwirrung beiträgt, wenn man überall nur liest "die Reihenfolge der Parameter muss zwingend eingehalten werden".

Man könnte jetzt sagen: "Verwende halt ein DBMS, das benannte Parameter unterstützt" aber a) geht das auch nicht immer und b) arbeiten halt nunmal viele Leute immer noch mit OleDb und Access, ... Ergo: Bitte dokumentieren (Für den Fall, dass es dokumentiert ist, wäre ich für einen Link dankbar, ich hab bei einer - zugegebenermaßen sehr kurzen - Suche nichts dazu gefunden)

Als Anhang ein kleines Testprojekt, dass das Problem veranschaulicht (natürlich ist das nichts, was man so produktiv verwenden würde, es soll ja auch nur das Problem veranschaulichen und auf die Schnelle ist mir nichts besseres eingefallen :).

Edit: Ich habe die an dieser Stelle falsche bzw. nicht ausreichende MSDN Dokumentation mal bei Connect gemeldet. Wenn sich jemand dazu berufen fühlt, kann der- oder diejenige gerne das Problem dort bestätigen und/oder dafür abstimmen, dass es wichtig ist. Je mehr dies tun, desto größer ist die Chance, dass die Doku an den betreffenden Stellen erweitert wird.

https://connect.microsoft.com/VisualStudio/feedback/details/553888/doc-order-of-oledbparameter-objects-must-directly-correspond-to-the-position-is-wrong-with-subselects
Eingetragen von Stefan Falz | 1 Kommentare
Attachment(s): OleDbParameter.zip

VS 2010: Jetzt auch auf Deutsch verfügbar

Da hat Microsoft sich aber echt mal beeilt. Visual Studio 2010 ist jetzt auch auf Deutsch erhältlich. Eigentlich waren die deutschen Versionen ja erst für Anfang Mai angekündigt aber man beschwert sich ja nicht, wenn es mal richtig schnell geht :) MSDN Abonnenten können sich wie so oft als erste freuen, denn dort sind die Downloads bereits verfügbar.

Team Foundation Server 2010 und der Team Explorer 2010 sind ebenfalls bereits lokalisiert und stehen zum Download bereit.

Als kleines Schmankerl findet man seit heute auch Office 2010 (ebenfalls auch schon in Deutsch und anderen Sprachen) in den MSDN Downloads.

Eingetragen von Stefan Falz | 1 Kommentare
Abgelegt unter: , , ,

VS 2010: Ich bin da

Visual Studio 2010 - die aktuellste Entwicklungsumgebung von Microsoft - ist da. Derzeit noch nicht auf Deutsch (soll wohl am 12. Mai erscheinen) aber wer will die schon, wenn er die englische Version schon heute haben kann :)

MSDN Abonnenten können sich freuen, dort gibt es die Vollversion als Download. Ebenso Team Foundation Server 2010 und Team Explorer 2010. Für diejenigen, die kein MSDN Abo haben, gibt es die Trial Versionen, die sich aber lt. ReadMe später zu einer Vollversion upgraden lassen. (Auszug aus der Seite zum Thema Trial Lizenzen: Enter the full official product key to unlock the product.)

VS2010 RTM Readme:
http://go.microsoft.com/fwlink/?LinkID=133421


[Trialversionen]

VS2010 Ultimate
http://www.microsoft.com/downloads/details.aspx?FamilyID=06a32b1c-80e9-41df-ba0c-79d56cb823f7&displaylang=en

VS2010 Premium
http://www.microsoft.com/downloads/details.aspx?FamilyID=f81412a2-d48e-4040-9b32-27eaf771c5db&displaylang=en

VS2010 Professional
http://www.microsoft.com/downloads/details.aspx?FamilyID=5414e4c0-c1f8-473e-8e9d-a1a7be786141&displaylang=en

Eingetragen von Stefan Falz | 1 Kommentare
Abgelegt unter: , ,

Internet Explorer: Kritische Sicherheitslücke in IE 6 und IE 7


Aktuell gibt es wieder eine kritische Sicherheitslücke im Internet Explorer 6 und 7. Da sich über die Lücke auch Code ausführen lassen soll und es aktuell noch keinen Patch von Microsoft gibt, kann man die getrost als "Aua" bezeichnen.

Details zu der Lücke findet ihr hier und hier.

Tenor (wie meistens bei solchen Sachen): Ausführung von Active Scripting (JavaScript) und ActiveX verbieten. Bestimmte Konstellationen wie bspw. IE auf Windows Server 2003 und 2008 verhindern zwar standardmäßig ebenfalls die Ausführung dieser Elemente, falls die erweiterte Sicherheit aktiviert ist aber besser einmal zuviel als einmal zuwenig nachgeschaut.

Eingetragen von Stefan Falz | 0 Kommentare

Silverlight: Neue Versionen mit Lichtgeschwindigkeit - Silverlight 4 Beta


Bei Silverlight hat Microsoft es wohl ziemlich eilig :) Kaum ist eine neue Version released, steht fast schon die nächste Version als Beta in den Startlöchern.

Silverlight 4 ist als Beta verfügbar.

Einige der interessanten Neuerungen:

  • Option, direkt aus Silverlight heraus zu drucken
  • neue/verbesserte Controls
    • RichTextBox
    • MaskedTextBox
    • DataGrid
    • ...
  • Verbessertes DataBinding bzw. dessen Handling
  • Erheblich verbesserte Entwicklerunterstützung innerhalb Visual Studio (2010)
  • Unterstützung für Google Chrome
  • Drag&Drop aus externen Anwendungen
  • ... und vieles mehr
Weitere Informationen findet ihr unter anderem hier.
Eingetragen von Stefan Falz | 1 Kommentare
Abgelegt unter:

Security: Außerplanmäßige Sicherheitspatches für Internet Explorer und Visual Studio (Update)

Boah, da bin selbst ich platt.

Wie hier schon geschrieben, hat Microsoft heute außerplanmäßig einige Patches für Internet Explorer 5, 6, 7 und 8 sowie alle Visual Studio Versionen, die mit .NET arbeiten, rausgebracht. Wichtig sind sie, also am besten gleich Windows Update aufrufen.

Hat man früher aus Platzgründen noch einzelne Dateien nur partiell aktualisiert (also nur die betreffenden Stellen neu geschrieben), werden heute "Sicherheitspatches" veröffentlicht, die fast nicht mehr auf eine CD passen.

Ich lade hier über Windows Update grade 624,1 Megabyte *eyesroll* runter (und ja, das sind auf dem aktuellen System nur die Patches für IE 7, VC++ 2005, VS 2005 und VS 2008, sonst nix). Nicht, dass mich das aus Zeitgründen stören würde (16 MBit im Downstream, mehr gibt die Telekom hier leider nicht her) aber Hey, das sollen "Sicherheitspatches" sein, keine komplett neue Entwicklungsumgebung! Es soll auch noch Leute geben, die mit weniger Bandbreite auskommen müssen. Und wenn ich mir vorstelle, ich müsste mir "Sicherheitspatches" mit 384 kb/s runterladen, wirds mir ganz anders.

@Microsoft: Bitte mal ganz stark überlegen, ob das der richtige Weg sein kann. Nix dagegen, wenn ein SP oder ein R2, ... eine solche Größe hat. Aber doch kein "Sicherheitspatch".

Eingetragen von Stefan Falz | 0 Kommentare

Security: Außerplanmäßige Sicherheitspatches für Internet Explorer und Visual Studio

Microsoft patcht ja bekanntlich einmal im Monat (normalerweise am zweiten Dienstag im Monat). Außerplanmäßige Updates/Patches haben daher meist eine sehr hohe Priorität und es ist äußerst wahrscheinlich, dass das dahinterliegende Problem äußerst schwerwiegend ist.

Daher an dieser Stelle der Hinweis, dass nächsten Dienstag, 28.07.2009, zwei Patches (einer für Internet Explorer 5, 6, 7 und 8 sowie ein weiterer für Visual Studio.NET 2003, Visual Studio 2005 und 2008 erscheinen sollen.
(Ich denke allerdings, dass auch VS 2010 betroffen ist, daher auch hier aufpassen)

Details zu den Patches findet ihr hier und hier. Allerdings derzeit keine technischen Infos zu den Problemen selbst, von daher kann man wohl davon ausgehen, dass es bereits Exploits dafür gibt. Lt. Heise Newsticker könnte es sein, dass selbst die sog. Killbits nicht helfen.

Daher: Obacht und patcht zügig.


Eingetragen von Stefan Falz | 1 Kommentare

Debug? Release? Wo ist die Projektmappenkonfiguration?

Das Problem

Bei einigen Kollegen und Kunden zeigte Visual Studio 2008 (auch inkl. SP 1) ein komisches Phänomen. Es gibt dort einfach keine Möglichkeit, die Projektmappe bzw. das Projekt von Debug auf Release oder umgekehrt umzustellen, ohne die vbproj bzw. csproj Dateien mit dem Editor zu bearbeiten.

Ein Klick mit der rechten Maustaste auf die Projektmappe bringt normalerweise den Menüpunkt "Projektmappenkonfiguration". Bei den betreffenden Rechnern: Nix davon zu sehen. Egal, wo man auch geschaut hat. Weder in den Projekteigenschaften, noch in den Symbolleisten und/oder Menüs.

Die vermeintliche Lösung

Natürlich kann man sich das Listenfeld auch über die Bearbeitung der Symbolleisten und Befehle anzeigen lassen. Wunderbar, über:

Anpassen
 -> Befehle
    -> Erstellen
       -> Projektmappenkonfigurationen

ist die Option schnell gefunden und irgendwo oben in eine der vorhandenen Symbolleisten gezogen.

Hmmmm. Aber das Listenfeld ist und bleibt deaktiviert. Grau auf grau und keine Chance, es zu aktivieren. (siehe Bild 1)



Tja, das war dann wohl nix. Schade eigentlich. Aber irgendwie muss das doch gehen!?

Die wirkliche Lösung

Nachdem mir das jetzt schon bei mehreren Kollegen und Kunden aufgefallen ist und das sowohl die als auch mich ziemlich genervt hat, habe ich jetzt mal explizit geschaut, welche Einstellung dafür verantwortlich ist. Und auch flugs gefunden.

Extras
 -> Optionen
    -> Projekte und Projektmappen
       -> Allgemein
           -> "Erweiterte Buildkonfigurationen anzeigen" aktivieren



Wenn man die Checkbox bei der entsprechenden Option aktiviert, kann man nun ohne Probleme und langes Suchen die gesamte Projektmappe von Debug auf Release und umgekehrt einstellen. Und so sieht das dann aus:



Die (wahrscheinliche) Ursache

Den einzigen Unterschied, den wir so auf die Schnelle feststellen konnten, war die Abfrage von VS 2008 beim ersten Start. VS will hier wissen, wie es primär eingesetzt wird. Ich wähle hier in den allermeisten Fällen die Webentwicklung. Soweit sich die Betroffenen erinnern, haben Sie entweder explizit gar nichts ausgewählt oder VB Entwicklung. Ich denke daher, dass Visual Studio in dem Fall die entsprechende Einstellung nicht aktiviert.

Das Ganze ist zwar kein Bug aber doch ziemlich nervig. Aber evtl. hilft dieser Eintrag ja dem ein oder anderen, der auch über das Problem stolpert.

Andre Loker hat noch darauf hingewiesen, dass dies natürlich auch die Visual Studio Express Editions (inkl. Visual Web Developer Express Edition) betrifft. Die Lösung ist hier genau dieselbe wie für die "richtigen" Visual Studio 2008 Versionen.


Mehr Beiträge Nächste Seite »