.NET-Software-Entwicklung - DotNetNuke - Business-Develoment
# Wednesday, September 12, 2007

eBook OpenXML explained zum Nulltarif

Hier mal wieder ein Hinweis auf ein kostenloses eBook.

Wouter Van Vugt hat auf 129 Seiten das Thema Grundlagen rund um „OpenXML“ behandelt.  Dieses eBook steht auf der Website von “OpenXMLDeveloper.org” kostenlos zum herunterladen bereit (PDF, 3,2 MB). In einem gesonderten Download sind darüber hinaus die im Buch behandelten Samples verfügbar.

 


Wednesday, September 12, 2007 1:51:41 AM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
Allgemein | XML

V-Server: Wie erstelle ich eine Sicherung mit dem NTBackup?

Heute Abend habe ich mich mal wieder mit einem V-Server (Virtueller Server) bei 1und1 rumgeschlagen. Mein Ziel war ein automatisches Update jede Nacht durchzuführen. Dabei bekam ich allerdings ständig den Fehler:

Beim Erstellen der Volumeschattenkopie wurde ein Fehler ermittelt:0x8004230f

Das virtualisierte Dateisystem basiert auf der Virtualisierungstechnik Virtuozzo von SWSoft und dadurch steht die Volumenschattenkopie in Windows nicht zur Verfügung.

Durch den Befehl ntbackup mit verschiedenen Befehlszeilenparametern
kann man den Sicherungsvorgang über die Eingabeaufforderung oder Batchdatei ausführen.

C:\>ntbackup backup C:\Daten /J "Backup" /F "C:\Backup\Daten.bkf" /SNAP:off

Dieser Befehl führt eine Sicherung des Ordner C:\Backup und deren Unterordner in die Datei
C:\Daten.bkf durch.

Die Volumenschattenkopie wird über den Befehlszeilenparameter /SNAP:off
deaktiviert.


Wednesday, September 12, 2007 1:34:02 AM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
Allgemein | Software
# Monday, September 10, 2007

Neues Authentifizierungssystemen bei DotNetNuke (LiveId, OpenId, CardSpace)

In der kommenden Version von DotNetNuke (DNN 4.6.0) ist ein sehr interessantes Feature die Möglichkeit der Implementierung von neuen Authentifizierungssystemen jenseits von DNN. Nun ist es nicht nur mehr möglich sich gegen DotNetNuke oder einer ADS (Active Directory Service) zu authentifizieren, sondern eine Anmeldung kann nun durch:

  • Cardspace
  • LiveID
  • OpenID

Dafür wurde ein "neues" Providermodell für die Authentifizierung implementiert. In den letzten Tagen habe ich für einen Kunden bereits einen eigenen Provider für eine Anmeldung bei der zentralen Golf-Online-Seite erstellt und erste positive Erfahrungen damit gesammelt. Dafür muss man lediglich drei UI-Komponenten entwickeln: Login, Settings and LogOff – jeweils von Basisklassen abgeleitet (AuthenticationLoginBase, AuthenticationSettingsBase and AuthenticationLogOffBase). Die Konfiguration der einzelnen verfügbaren Provider wird über die Tabelle Authentication vorgenommen. Dort wird ganz einfach ein Prefix und die drei UI-Komponenten angegeben.

Es ist auch möglich dem Benutzer die Auswahl selber zu überlassen, mit welchem Dienst er sich Authentifizieren möchte – das find ich insgesamt schon ziemlich sexy.

Wenn sich der Benutzer über z.B. LiveID angemeldet hat, dann wird nach erfolgreicher Authentifizierung ein Benutzerkonto angelegt oder aber man kann diesen Login mit einem existierenden DNN-Benutzerkonto verknüpfen. In der Datenbank gibt es dafür die Tabelle: UserAuthentication


Monday, September 10, 2007 3:48:52 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | .NET 2.0 | ASP.NET | DNN - Module | DotNetNuke
# Tuesday, September 04, 2007

Open Source .NET code performance and memory profiling software

Bei der Suche nach Performancemessungen für ein .NET Projekt, habe ich ich folgende interessante(s) Seite / Projekt gefunden:

ProfileSharp

Bis jetzt nur kurz getestet, scheint es aber ein gute Lösung zu sein um:

  • Eine Speicheranalyse durchzuführen (z.B. Memoryleaks)
  • Wo welche Rechenleistung benötigt wird

Besonders interessant ist, dass der Profiler keinerlei Veränderungen am SourceCode benötigt - Bestandteile des Profilers müssen also nicht in das Projekt / Assembly k(c)ompiliert werden. Er läßt sich einfach von außen anfügen

Das Produkt ist OpenSource und steht damit jedem zur Verfügung. Ob bei dem Funktionsumfang / Leistung mit kommerzielle Produkten aufnehmen kann werd ich sehen.

 


Tuesday, September 04, 2007 6:01:36 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | .NET 2.0 | Allgemein | Opensource | Software
# Wednesday, August 29, 2007

Eine .NET WinForms Anwendung nur einmal starten / arbeiten mit einem mutex

Wenn man eine Anwendung nur einmal durch den Anwender starten lassen möchte, dann ist das mit der Hilfe von einem erzeugten Mutex sehr einfach zu realisieren.

Nur ein paar Zeilen Quellcode sind dafür in der Main() Methode notwendig. Wie immer ist der Beispiel-Code in .NET C#.

bool createdNew;
///Einen neuen Mutex erzeugen, damit die Anwendung nur einmal gestartet werden kann.
System.Threading.Mutex appMutex = new System.Threading.Mutex(true, Application.ProductName, out createdNew);
///Wenn die Erzeugung erfolgreich war
if (createdNew)
{
///... dann kann die Anwendung ausgeführt werden
LogIn frmLogIn = new LogIn();
Application.Run(frmLogIn);

if (frmLogIn.DialogResult == DialogResult.OK)
Application.Run(new MainForm());

// den Mutex wieder frei geben
appMutex.ReleaseMutex();
}
else
{
///Wenn die Anwendung schon ausgeführt wird -> Hinweis-Dialog
string msg = String.Format("Das Programm \"{0}\" wurde bereits gestartet!", Application.ProductName);
MessageBox.Show(msg, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Information);
}


Wednesday, August 29, 2007 8:36:23 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | .NET 2.0 | .NET 3.0 | Allgemein | Winform
# Tuesday, August 28, 2007

Alternatives ControlPanel / DotNetNuke Adminpanel

Das Core-Team von DotNetNuke hat in den letzten Versionen schon einiges an der Usability verbessert. Darunter gehört z.B. die Vererbung von Seiten-Rechten innerhalb der Seitenstruktur.

In vielen Projekten höre ich aber immer wieder, dass das ControlPanel (dort wo z.B. die Module ausgewählt werden) nicht flexibel genug ist und es Vorteilhaft wäre, wenn man anhand der DotNetNuke spez. Rollen die Funktionen ganz gezielt freischalten kann. Somit könnte man bestimmten Rollen ganz gezielt lediglich ein paar Module zur Verfügung stellen, die diese für ihre tägliche Arbeit benötigen. Der Vorteil liegt ganz klar auf der Hand: Die Komplexität für die Redaktuere wird reduziert. In vielen Fällen werden ja wirklich nur ganz wenige Module für die normale Arbeite benötigt (z.B.Text/HTML, Links, Images).

Seit ein paar Monaten verfolge ich eine Projekt, dass das DotNetNuke ControlPanel ersetzt (oder viel mehr eine Alternative bereit stellt). Mit diesem ControlPanel ist es nun endlich möglich die Berechtigungen innerhalb des Controlpanels sehr gezielt zu vergeben.

Hier kann man das Modul downloaden

Leider gibt es keine SourceCode Version von diesem Modul.


Tuesday, August 28, 2007 4:29:07 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | .NET 2.0 | ASP.NET | DNN - Module | DotNetNuke
# Friday, July 27, 2007

Edles XP-Desktop Design in schwarz-grauen

Gerade hab ich durch Zufall ein Cooles Theme für Windows XP gefunden. Es ist sogar ein offizielle Desktop-Theme von Mircosoft, das es allerdings nicht auf der Seite von Micrsoft direkt gibt.

Diese beiden Links geben sowohl eine Anleitung als auch einen Link zum entsprechenden Skin.
http://dlc.softwareload.de/Zune-Desktop-Theme-fuer-Windows-XP/48024
http://dlc.softwareload.de/Royale-Noir-Theme-fuer-Windows-XP/48019


Ich find es cool und habe es direkt mal installiert ...

Friday, July 27, 2007 2:46:54 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
Allgemein

Ein Web 2.0 Pop Up Fenster

In der letzten Zeit findet man im Web immer wieder Popup-Fenster die wie folgt aussehen:

web20popup.jpg

Die Umsetzung erfolgt via JavaScript und CSS und stellt kein großes Geheimnis dar. Wer sich allerdings trotzdem nicht die Mühe machen möchte (und niemand möchte wirklich etwas erarbeiten, was es schon gibt), für den habe ich hier einen tollen Link: http://orangoo.com/labs/GreyBox/. Auf dieser Seite gibt es eine Komponente (JavaScript) die einem bei der Umsetzung unterstützt.

Die Vorteile:

  • Es wird nicht durch die PopUp-Blocker verhindet, da es ja kein neues Fenster ist
  • Mit nur 22kb ist das Script recht klein
  • Wird schon auf viele Websites eingesetzt und kann als stabil betrachtet werden

Friday, July 27, 2007 10:21:33 AM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | Allgemein | ASP.NET | Controls | Opensource
# Wednesday, July 25, 2007

C#/VB .NET Coding Guidelines

Gerade habe ich ein kostenloses eBook zum Thema Coding Guidlines für C# und VB.NET gefunden und möchte darauf aufmerksam machen.

Den Download gibt es direkt unter submain.com

Das eBook hat folgende Themen:

  • Naming Guidelines
  • Class Member Usage Guidelines
  • Guidelines for Exposing Functionality to COM
  • Error Raising & Handling Guidelines
  • Array Usage Guidelines
  • Operator Overloading Usage Guidelines
  • Guidelines for Casting Types
  • Common Design Patterns
  • Callback Function Usage
  • Time-Out Usage
  • Security in Class Libraries
  • Threading Design Guidelines
  • Formatting Standards
  • Commenting Code
  • Code Reviews
  • Additional Notes for VB .NET Developers

Ebenso recht nützlich ist das Tool SmartOutline for VS2005, welches als kostenlose Version auf der Seite zur Verfügung gestellt wird. Damit wird das Handling von #region's - welche ich sehr gerne benutze - noch etwas verbessert.


Wednesday, July 25, 2007 5:00:41 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | .NET 2.0 | .NET 3.0 | Allgemein | Software
# Thursday, July 19, 2007

Die DotNetNuke WebControls / DNN NavigationProvider

Im Augenblick beschäftige ich mich mit dem DNN NavigationProvider. um für einen Kunden ein CSS basiertes Menu zur Verfügung zu stellen. Ursprünglich dachte ich eigentlich, dass man auf das Rendern des Menüs Einfluß hat und bestimmen kann, wie das Menu auszusehen hat.

Nachdem ich den Sourcecode der mitgelieferten Provider analysiert habe .. kam zunächst recht schnell die Ernüchterung. Da wird in der class DNNMenuNavigationProvider auf eine Objekt vom Typ DNNMenu zugegriffen. Doch der Sourcecode scheint davon nicht mit im Standarddownload enthalten zu sein.

Mein erster Schreck - das ich das Rendern gar nicht beeinflussen kann - ging schnell vorbei. Zum einem ist natürlich die Klasse DNNMenu in dem Downloadpaket DotNetNuke WebControls enthalten und zum anderen ist die Nutzung dieses Objektes ja gar nicht notwendig.

Jetzt werde ich mal versuchen meinen eigenen Menuprovider zu entwicklen und bin gespannt wie das klappt!


Thursday, July 19, 2007 11:34:23 AM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | .NET 2.0 | ASP.NET | Controls | DotNetNuke | Opensource
# Saturday, July 07, 2007

Screenshot von langen Websites

Immer wieder hat man das Problem einen Screenshot von einer Website zu erstellen, die viel zu lang ist und einfach nicht auf einen Bildschirm passt.
Gerade habe ich ein Add-ons - Screengrab - für den Firefox gefunden, dass einen Screenshot der gesamten Website erstellt auch wenn diese nicht wirklich komplett auf dem Bildschirm zu sehen ist.

Hier ist der direkte Downloadlink Firefox Add-ons Screengrab


Saturday, July 07, 2007 12:50:34 AM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
Allgemein | Software
# Wednesday, May 30, 2007

DotNetNuke 4.5.2 Released

Nachdem ich eigentlich schon wieder viel zu lange nichts mehr über DNN veröffentlicht hab, möchte ich damit nun endlich wieder beginnen.

Am 29.05 (also gestern) wurde die Version 4.5.2 veröffentlicht und steht wie gewohnt unter www.dotnetnuke.com zum Download bereit.

Mittlerweile ist eine ganze Menge an neuen Features implementiert wurden und eine einzelne Aufzählung wäre mit Sicherheit zu lang(weilig). Einen sehr genauen Einblick über die Veränderungen innerhalb von DotNetNuke bekommt man wie immer in der Bug Tracker.

 


Wednesday, May 30, 2007 6:17:58 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | .NET 2.0 | DotNetNuke | Opensource
# Thursday, May 24, 2007

Ich habe nichts am System modifiziert .. aha .. Systeminformationen hilft

Wer kennt das nicht: ein Kunde, ein Bekannter oder die Freundin sagt ganz unschuldig: Ich habe nichts gemacht .. der PC läuft einfach nur so nicht mehr. In solchen Momenten ist es doch immer schön, wenn man sich zumindest auf Windows verlassen kann. Das sagt einem nämlich welche Veränderungen an einem System stattgefunden haben, bevor ein Problem am System aufgetreten ist.

Einen Hinweis hierzu ist der "Systemverlauf" den Windows XP bieten. Er ist ein Teil des Programms "Systeminformationen" ("Start/Programme/Zubehör/Systemprogramme/Systeminformationen" oder mit "msinfo32" starten). Dort gibt es unter "Ansicht" den Eintrag "Systemverlauf". Dieser ist unterteil in drei Berichte: Hardwareressourcen, Komponenten und Softwareumgebung.

Die dargestellten Daten sind in Form von XML-Dateien im folgenden Pfad abgelegt:
%SystemRoot%\PCHEALTH\HELPCTR\DataColl


Weitere Informationen findet man direkt bei Microsoft.


Thursday, May 24, 2007 10:26:33 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
Allgemein | Software

Status List im Vista Style

Soeben habe ich ein sehr interessante Projekte oder viel mehr Komponente auf codeproject gesehen und möchte meiner Umwelt diese nicht vorenthalten.

Dabei handelt es sich jeweils um sehr schön gemachte Status List entwickelt in C#. Hier ist der direkte Link zu dieser .NET Komponente .... klick :)

Dazu passend gibt es auch noch ein Status Label (wohl in VB.NET) ... klick


Thursday, May 24, 2007 12:31:25 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | .NET 2.0 | Controls | Opensource
# Friday, May 04, 2007

Eine DotNet Technologie Suchmaschine

Suchmaschinen wie www.google.de oder www.live.de sind für alle Entwickler - ob .NET, PHP, Delphi, etc. - ein wertvolles Werkzeug um schnell Antworten und Lösungen bei Problemem zu finden.

Das größte Problem dabei ist aber meist, dass man nicht nur Suchergebnisse bekommt dich sich auch wirklich mit .NET befassen und somit wird die Recherche unnötig erschwert. Dieses gehört aber der Vergangenheit an, denn Dan Appleman hat folgende Website erstellt:

http://www.searchdotnet.com/

Diese Suchmaschine basiert auf Google, allerdings werden wirklich nur .NET relevante Ergebnisse angezeigt.

Die ersten Erfahrungen mit dieer Suchmaschine waren sehr positiv!


Friday, May 04, 2007 3:15:04 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | .NET 2.0 | .NET 3.0 | Allgemein
# Wednesday, April 18, 2007

Die Live-Suche von Microsoft liebt mein Blog

Also ich mir gerade so ein wenig die Referrer angeschaut habe bzw. die Suchbegriffe inkl. Positionen bin ich über folgendes gestolpert:

In der Microsoft Live-Suche bin ich auf Platz 1 von 6 Millionen Treffer und das mit dem Begriff ".net 2.0".

MSNLoveMe.jpg

Find ich persönlich schon ziemlich sexy und mein Tag ist gerettet :D


Wednesday, April 18, 2007 12:18:35 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET 2.0 | Allgemein
# Monday, April 16, 2007

ASP.NET Job-Angebot in NRW (Standord MG)

Mal (wieder) in eigener Sache:

Wir suchen zur Entwicklung von Webanwendungen unter Microsoft .NET eine(n) Kollegen(-in) (m/w) mit ASP.NET-Kenntnissen zur Festanstellung (Großraum Mönchengladbach).

Aufgaben

Entwickelt werden hauptsächlich Module für DotNetNuke unter C# und/oder VB.NET. Schwerpunkte sind Online-Communities, eCommerce bzw. Online-Shops.

Anforderungen
  • Kenntnisse in der Entwicklung von Web-Anwendungen (optimalerweise in ASP.NET).
  • SQL-Kenntnisse sollten vorhanden
  • Selbständiges und eigenverantwortliches Arbeiten

Bei Interesse bitte Kontakt per eMail aufnehmen mit Daniel Müller (kontakt2007 @ gandke . de).


Monday, April 16, 2007 2:41:35 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
Allgemein
# Wednesday, April 11, 2007

Enterprise Library 3.0 steht zum Download bereit

Die von mir gern benutze und geschätzte Enterprise Library steht nun endlich in der Version 3.0 als Download zur Verfügung. Folgende Application Blocks sind in dem Download-File enthalten:

  • Caching Application Block
  • Cryptography Application Block
  • Data Access Application Block
  • Exception Handling Application Block
  • Logging Application Block
  • Policy Injection Application Block
  • Security Application Block
  • Validation Application Block


Ebenso wurde die Integration der Windows Communication Foundation (WCF) vorgenommen. Leider ist meine Zeit im Augenblick etwas knapp aber ich hoffe mir die Finale der Library bald genauer anschauen zu können.

Download Enterprise Library 3.0

 


Wednesday, April 11, 2007 11:54:03 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET 3.0 | Allgemein | WCF
# Tuesday, April 10, 2007

Back to blogging

Okay, ich bin wieder da! Nachdem ich nun schon recht lange keinen neuen Beitrag mehr geschrieben habe, wird es Zeit sich zu melden. Ich lebe und arbeite noch und komme nun endlich wieder dazu regelmäßig hier zu schreiben ;-)

Was ich gemacht habe? Die letzten Monate habe ich damit verbracht mich mit dem Segelsport zu beschäftigen und meinen SBF-See und den SKS (Sport-Küsten-Schiffer) zu machen. Das war ne ganze Menge Lernerei und Prüferei. Doch nachdem ich am Karfreitag meine praktische Prüfung für meinen SKS hatte, bin ich jetzt wieder frei wie ein Vogel :)

Wer gute Informationen und Lernmaterial benötigt, dem kann ich folgende Seiten mit vielen nützlichen Informationen ans Herz legen:

http://www.ney-info.de/diesunddas/Segelscheine/index.htm
http://www.tim.flindt24.de/

Ach, neben dem Segeln habe ich nun auch wieder mit der Musik angefangen und bin in eine Band hier in Mönchengladbach eingestiegen. Wer mal eine Rock Cover-Band hören (oder buchen:)) möchte - voila:

Herpes - Meine Coverband in Mönchengladbach. Ich bin übrigens der Mensch an den Keys .....

Natürlich habe ich die letzten Wochen nicht nur komplett dafür geopfert, denn "business as usual" stand trotzdem auf dem Programm. Nur die Schreiberei kam halt ein wenig zu kurz....:(


Tuesday, April 10, 2007 10:22:05 AM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
Allgemein
# Sunday, April 01, 2007

GS-Auftrag wie alles begann

Nette Geschichte wie alles begann von Michael Gandke. Das Softwarehaus Gandke & Schubert und die Geschichte von GS-Auftrag.


Sunday, April 01, 2007 4:31:05 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
Software