Du bist hier: Skip Navigation LinksHome

MSBuild: Benutzerdefinierte Build-Aufgaben entwickeln

Montag, 22. Februar 2010

Schon vor langer Zeit habe ich mich erfolgreich vom F5-Build befreit :-) In den letzten beiden Wochen habe ich wieder verstärkt an der Anpassung verschiedener Build-Prozesse gewerkelt und auch meine lieben Kollegen in Sachen MSBuild gepimpt. Was mich heute dazu veranlasst hat, einige Informationen zum Thema benutzerdefinierte Build-Tasks aufzuschreiben und hier zu veröffentlichen...

mehr...

Option Strict Off = Option Shit On

Donnerstag, 12. November 2009

Visual Basic ermöglicht die Konvertierung vieler Datentypen in andere Datentypen – dabei bleibt allerdings die starke Typisierung auf der Strecke. In der Zusammenarbeit mit Entwicklern im Projekt, oder bei Trainings habe ich immer wieder festgestellt, dass dieses "tolle" Feature, eher hinderlich als nützlich ist, da es negative Auswirkungen auf die Code-Qualität haben kann.

mehr...

ASP.NET Server Controls - Teil 1
Eigenschaften benutzerdefinierter Steuerelemente über Markup initialisieren

Montag, 18. Mai 2009

Ich schreibe heute etwas über ASP.NET Server Controls. Das klingt wenig spannend, da es bereits dutzende Blog-Beiträge zu diesem Thema gibt, aber es ist ein interessantes Thema und es begleitet mich gerade im aktuellen Projekt. Einen Teil meiner Erfahrungen möchte ich hier in einer mehrteiligen Serie zur Verfügung stellen. Im Fokus der Artikel steht die Anpassung und Erweiterung der Entwurfszeit von Server Controls. Im ersten Teil geht es um die Verwendung komplexer Typen in Eigenschaften und was man tun muss, um diese über das Markup der Seite zu initialisieren.

mehr...

Alles neu macht der Mai :-)

Freitag, 15. Mai 2009

So. Nun habe ich die Seite mit einem neuen Layout neu gestartet - ist etwas dunkler geworden, aber mir gefällts. Ich werde mich disziplinieren und hier in der nächsten Zeit wieder mehr Content reinstreuen, als das bislang der Fall war. Aber meistens fehlt einfach die Zeit dazu... die Projekte gehen vor. Inhaltlich wird es sich natürlich um Themen aus dem Bereich .NET-Entwicklung drehen - sollte sich in diesem Jahr noch Urlaub ereignen, ist vielleicht auch das eine oder andere Foto dabei...

Tabbed Multi Document Interface (MDI) Control

Mittwoch, 15. April 2009

Für ein Kundenprojekt habe ich eine Reihe von GUI-Komponenten entwickelt - eines davon ist ein MDI-Steuerelement, das untergeordnete Fenster in Form einer Reiterdarstellung organisiert, so wie es bekannte moderne Anwendungen erlauben.

mehr...

Ein handlicher Commandline-Handler

Mittwoch, 15. April 2009

Da ich derzeit wieder verstärkt Tools schreibe, die sich bequem über die Konsole nutzbar sein sollen, habe ich mir eine winzige Library geschrieben, die mir das Handling von Befehlen und Parametern erleichtert. Eines der Tools ermöglicht den Zugriff auf Visual SourceSafe - wobei alle nötigen Parameter wie folgt übergeben werden können.

			  vssman.exe /get:latest /vss -ini:"\\vss-share\srcsafe.ini" -user:matze -project:"$/vssman" -localPath:"C:\Projects\vssman"
		  

Dabei ist erst einmal nicht so wichtig, was das Tool eigentlich macht, sondern wie der CommandHandler die übergebenen Argumente aufbereitet. Ich habe dieses Tool herausgegriffen, weil sich die Funktionsweise daran gut demonstrieren lässt. Der Handler erzeugt aus den angegebenen Argumenten eine "Kette" - wobei jedes Argument dem ein "/" vorangestellt ist (Befehl) als neues Glied hinzugefügt wird. Alle Argumente, die mit einem "-" beginnen, werden als Parameter an das zuletzt hinzugefügte Glied angehängt. Das sieht dann so aus...

In der Anwendung kann die verarbeitete Auflistung der Argumente so verwendet werden.

      static void Main(string[] args) 
      { 
        ArgumentCollection arguments = new ArgumentCollection(); 
        arguments.Initialize(args, null); 
        Argument vssGet = arguments.Find("get"); 
        if ("latest".Equals(vssGet.Value)) 
        { 
       
        } 
      }
    

Aber es geht natürlich besser; denn der Handler ermöglicht die Verwendung benutzerdefinierter Argument-Klassen, die eine starke Typisierung und eine Verarbeitung von Befehlszeilen ohne Fallunterscheidungen ermöglichen. Der Handler eignet sich außerdem für Anwendungen, die durch Plugins erweitert werden können und deren Funktionen auch auf der Kommandozeile zur Verfügung stehen sollen.

mehr...

LIB Viewer - .h-Dateien exportieren

Freitag, 27. März 2009

Haben Sie sich schon einmal gefragt, welche Funktionen eine Bibliothek (.lib) exportiert? Manchmal beinhalten Bibliotheken versteckte Methoden, die in einer mitgelieferten Header-Datei nicht enthalten sind, oder Sie möchten einfach die Syntax der Funktionen in der Header-Datei mit der Bibliothek vergleichen. mehr...

Latest Posts

Latest Comments