Neues rund um's Thema .Net, Team Foundation Server und SCRUM RSS 2.0
# Monday, August 28, 2006
Monday, August 28, 2006 9:46:07 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
.Net 3.0

Dieses Tool erstellt automatisch XML-Kommentare für einzelne Methoden, Eigenschaften etc. Wenn man sprechende Methoden- und Parameternamen verwendet, kann das Tool daraus automatisch eine Beschreibung generieren. Außerdem können neue Parameter zu den XML-Kommentaren hinzufügen.

http://www.roland-weigelt.de/ghostdoc/

Es gibt auch ein kleines Video, das die Funktionsweise des Tools zeigt.

http://channel9.msdn.com/Showpost.aspx?postid=121822

Monday, August 28, 2006 9:41:59 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Tools

Hier werden einige Fragen zu .Net 3.0 beantwortet. Was ist es? Ist es kompatibel zu .Net 2.0? etc.

http://msdn.microsoft.com/winfx/learning/netfx3faq/default.aspx

Monday, August 28, 2006 9:23:22 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
.Net 3.0

Zwei MS Press-Bücher kann man sich hier kostenlos als PDF herunterladen. Außerdem gibt es eine ganze Reihe von Online-Kursen zu Office 2007 die für einen zeitlich begrenzen Zeitram kostenlos angeboten werden.

http://blogs.msdn.com/walzenbach/archive/2006/08/13/696889.aspx

Monday, August 28, 2006 7:30:14 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
News

Bei Galileo-Computing kann man sich kostenlos das Openbook "Praxisbuch Objektorientierung" herunterladen. Ich habe es leider noch nicht gelesen, deshalb hier die Kurzbeschreibung des Verlages:

Kaum eine Software, die nicht mehr objektorientiert entworfen und entwickelt wird! Die beiden Autoren geben eine umfassende Einführung in die Prinzipien und die Anwendung der Objektorientierung. Das Buch ist aufgabenorientiert, bietet Beispiele in den Sprachen C++, Java, Ruby, und C# sowie ein Kapitel zur aspektorientierten Programmierung.

http://www.galileocomputing.de/openbook/oo/

Monday, August 28, 2006 6:45:58 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Bücher

Der Task-Manager liefert oftmals nur unzureichende Informationen über die einzelnen Prozesse etc. Mit dem Tool Process Explorer kann man zu jedem Prozess umfangreiche Informationen abfragen. Das Tool kann auch den Task-Manager ersetzen.

Sehr praktisch ist, dass man das Tool nicht installieren muss, sondern die Exe separat gestartet werden kann.

http://www.sysinternals.com/Utilities/ProcessExplorer.html

Monday, August 28, 2006 3:28:12 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Tools
# Friday, August 25, 2006

22:02 - Im Internet nach einem Tutorial gesucht.
22:10 - Genau das Passende gefunden.
22:11 - Ausdruck starten, um zu Hause zu lesen
22:12 - Geflucht, weil der rechte Rand mal wieder abgeschnitten ist

Für sole Probleme hat jeder so seinen eigenes Patentrezept, im Querformat drucken, nach Word kopieren und von da drucken oder - dieses kleine Tool installieren. Damit kann im IE die Seite so angepasst werden, dass Sie auf jeden Fall auf die Seite passt. Das Tool bietet auch eine Vorschau. Echt genial!

ACHTUNG - Bei der deutschen Version des IE muss das Icon manuell in die Symbolleiste eingefügt werden:
Rechte Maustaste auf die Symbolleiste / Anpassen dann aus der linken Liste das Icon "Fit-width Print" in die rechte Liste übernehmen.

http://www.visiontech.ltd.uk/software/#IEPrint

Friday, August 25, 2006 10:12:28 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Tools

Jeder Programmierer kennt das Problem. Am Entwicklungsrechner hat man einen schönen großen Monitor aber wie sieht die Anwendung bei einer anderen Auflösung, z.B. 1024 x 768 aus? Ein Fenster genau auf diese Größe zu bringen ist genau das, was Sizer tut. Man kann sich beliebige Größen defibnieren und dann einfach diese Größe für ein Fenster einstellen lassen.

http://www.brianapps.net/sizer.html

Friday, August 25, 2006 10:02:57 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Tools

Mit diesem Tool lassen sich verschiedene Befehle auf Datenbanken ausführen. Damit lassen sich z.B. Daten einer Tabelle abfragen und nach CSV oder XML exportieren. Der besondere Charme des Tools ist, dass es nicht installiert werden muss, es kann einfach die EXE gestartet werden. Damit ist es gut geeignet als Datenbank-Viewer für unterwegs.

http://www.albahari.com/queryexpress.html

Friday, August 25, 2006 8:11:19 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
SQL | Tools

Das Buch beschreibt das Thema Threading in C' recht ausführlich und lässt sich auch als PDF herunterladen.

http://www.albahari.com/threading/

Friday, August 25, 2006 8:03:36 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Know-How
# Thursday, August 24, 2006
Ich habe im Speicher ein DataView mit ca. 22000 Datensätzen. Aus diesem DataView musste ich nun innerhalb einer Schleife 55 Abfragen machen. Dazu zwei Methoden:

dvINNs.RowFilter = "ProductDSID = " + drProducts["ProductDSID"];
foreach (DataRowView drINN in dvINNs)
{
...
}

oder

foreach (DataRow drINN in dvINNs.Table.Select("ProductDSID = " + drProducts["ProductDSID"]))
{
...
}

Ich habe eine Zeitmessung durchgeführt. Dies ergab für Methode I 1,5 Sek und für Methode II 0,03 Sek. D.h. der Select ist um Faktor 50 (in meinem Beispiel) schneller als der RowFilter.

Thursday, August 24, 2006 8:50:19 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Know-How
# Wednesday, August 23, 2006

Oft möchte man von einem DateTime-Wert die Kalenderwoche abfragen. Hierzu gibt es eine einfache Funktion:

Application.CurrentCulture.Calendar.GetWeekOfYear(CurrentDate, System.Globalization.CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday);

Dabei steht in CurrentDate das aktuelle Datum und die beiden anderen Parametern definieren Regeln, welche Woche als erste KW gilt. Standard in Deutschland ist dass der 1. Janur in KW 1 liegt, wenn dieser Tag ein Montag, ein Dienstag oder ein Mittwoch ist. Andernfalls zählt der 1. Januar noch zur letzten Woche des alten Jahrs und die KW1 beginnt am darauffolgenden Montag.

Wednesday, August 23, 2006 9:37:33 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Tipps und Tricks
# Tuesday, August 22, 2006

Auf MSDN solve bekommt man ein VS 2005 Standard Edition und 6 Monate kostenloses Web-Hosting wenn man min. 5 CodeClips anschaut.

 

http://www.microsoft.com/germany/msdn/solve/news/watchandwin.mspx

Tuesday, August 22, 2006 9:22:20 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
News

Um Einträge in die Toolbox von VS hinzuzufügen gibt es die Standard-Methode - rechte Maustaste, Elemente auswählen und sich dann die Elemente einzeln auswählen um sie hinzuzufügen. Weniger bekannt ist eine Methode, die gerade bei einer größeren Anzahl hinzuzufügender Controls schneller ist. Man kann die zugehörigen DLL-Dateien einfach per Drag & Drop aus dem Windows-Explorer auf die Toolbox ziehen.

Tuesday, August 22, 2006 7:02:21 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Tipps und Tricks

Der kostenlose Internet Explorer Developer Toolbar von Microsoft bietet eine Fülle von sehr nützlichen Funktionen für Web-Entwickler. Der Toolbar integriert sich im Internet-Explorer. Man kann sich z.B. Objekte wie Tabellen, Bilder, DIVs etc. durch eine Umrandung hervorheben lassen oder man kann die komplette DOM-Struktur dursuchen und die Eigenschaften der Elemente abfragen und sogar verändern. Die Änderungen werden sofort sichtbar. Darüber hinaus werden noch eine vielzahl nützlicher Helfer angeboten, z.B. um Cookies anzuzeigen und zu löschen etc. Ein Tool, das bei keinem Web-Entwickler fehlen sollte!

http://www.microsoft.com/downloads/details.aspx?FamilyID=E59C3964-672D-4511-BB3E-2D5E1DB91038&displaylang=en

Tuesday, August 22, 2006 6:59:42 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Tipps und Tricks | Tools

Oft möchte man den Monatsnamen eines Datums in der jeweiligen Landessprache des Anwenders ausgeben. Dies kann man einfach mit einer Zeile Code bewerkstelligen:

string MonthName = Application.CurrentCulture.DateTimeFormat.MonthNames[DateTimeValue.Month-1];

Alternativ kann man auch die Kurzform der Monate über die Eigenschaft AbbreviatedMonthNames abfragen.

Will man eine spezifische Sprache zur Ausgabe verwenden, kann man dies natürlich auch tun indem man einfach das entsprechende CultureInfo-Objekt verwendet:

CultureInfo ci = new CultureInfo("de-DE");
ci.DateTimeFormat.MonthNames[MonthID];

Tuesday, August 22, 2006 4:59:59 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Know-How

Unter http://www.galileocomputing.de/openbook/visual_csharp/index.htm kann man kostenlos den gesamten text des Buches "Visual C# 2005" lesen und auch herunterladen. Das Buch ist gut geschrieben und enthält umfangreiches Wissen zur Programmierung mit C#. Es sit auf dem aktuellsten Stand (C# 2.0) und geht auch auf alle wichtigen Neuerungen ein.

Mir hat das Buch so gut gefallen, dass ich mir gleich eine Print-Version gekauft habe. Aber es kann sich ja jeder kostenlos überzeugen ;-)

Jedenfalls finde ich das Openbook-Konzept gut, da ich so die Katze nicht im Sack kaufen muss.

Tuesday, August 22, 2006 4:36:59 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Bücher | News

Im Infragistics-Grid lassen sich einfach dei Beschriftungen der einzelnen Gruppen der Outlook-Gruppierung einstellen. Hierzu muss lediglich der Event InitializeGroupByRow verwendet werden. Das folgende Beispiel ändert die Beschriftung so ab, dass nur die Bezeichnung der Gruppe ausgegeben wird.

private void ultraGrid1_InitializeGroupByRow(object sender, Infragistics.Win.UltraWinGrid.InitializeGroupByRowEventArgs e)
{
    e.Row.Description = e.Row.Value.ToString();
}

Tuesday, August 22, 2006 4:27:03 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Komponenten und Bibliotheken

In Ulm gibt es nun auch eine .net User-Group.

Die .net Developer-Group Ulm ist eine Organisation, die den Wissens- und Erfahrungsaustausch zwischen .net Entwicklern aus der Region Ulm und Oberschwaben fördern möchte. Jeder kann kostenlos und unverbindlich Mitglied werden.

In regelmäßigen Abständen werden Mitgliedertreffen abge-halten, bei denen Vorträge zu aktuellen Themen gehalten werden.

www.dotnet-ulm.de

Tuesday, August 22, 2006 11:06:39 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
.Net und drum rum | News

Das MSDN-Wiki ist eine Erweiterung zur MSDN-Dokumentation mit Tipps und Tricks aus der .net Community.

Das MSDN-Wiki funktioniert jetzt auch mit FireFox und es bietet nun auch eine RSS-Unterstützung.

http://msdnwiki.microsoft.com/en-us/mtpswiki/default.aspx

Tuesday, August 22, 2006 9:26:07 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
.Net und drum rum | Tipps und Tricks

Jede Menge Code-Snippets für alle Lebenslagen finden sich unter

http://dotnet-snippets.de/dns

Achtung Cookies müssen zugelassen werden, sonst funktioniert die Seite nicht korrekt.

Tuesday, August 22, 2006 8:39:50 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Tipps und Tricks
# Saturday, August 19, 2006

Recht bekannt ist die Option im Infragistics Grid Datensätze durch einen Klick auf den Kopf einer Spalte zu filtern.

Es gibt aber auch die Möglichkeit, eine Zeile einzublenden, in der die Filterbedingung für jede Spalte eingegeben wird. Der Vorteil liegt dabei darin, dass auch nur Anfangsbuchstaben eingegeben werden können. Um dies zu erreichen, stellt man einfach im Designer Dialog unter Feature Picker die Option Filtering / Filter UI Type auf Filter Row. Das Ergebnis sieht dan so aus:

Saturday, August 19, 2006 4:14:13 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Komponenten und Bibliotheken | Tipps und Tricks

Dieses Tool unterstützt beim Entwickeln mehrsprachiger Oberflächen. In einer Tabelle können die Textattribute für verschiedene Sprachen eingegeben werden.

http://www.jollans.com/multilang_dotnet/multilang_for_dotnet.htm

Saturday, August 19, 2006 10:12:19 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Tools

Mit XNA Game Studio Express kündigt Microsoft eine kostenlose Entwicklungsumgebung für die X-Box Plattform unter C# und der VS-IDE an.

http://msdn.microsoft.com/directx/xna/

Saturday, August 19, 2006 10:02:25 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
News

Dieser Artikel beschreibt, wie mit Windows Workflow Foundation Workflows erzeugt und betrieben werden.

http://www.theserverside.net/tt/articles/showarticle.tss?id=WorkforProcess

Saturday, August 19, 2006 9:54:40 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
.Net 3.0 | Unbearbeitet

Enthält auch das Entity Framework. Damit soll OR-Mapping in ADO.Net integriert werden.

http://blogs.msdn.com/adonet/archive/2006/08/15/701479.aspx

Saturday, August 19, 2006 9:51:51 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
ADO.Net | Unbearbeitet
# Wednesday, August 16, 2006

Mit ein paar kleinen Tricks kann man auch offline mit dem TSSC arbeiten.

http://blogs.vertigosoftware.com/teamsystem/archive/2006/07/03/2984.aspx

Wednesday, August 16, 2006 7:46:51 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Team System Server

Wird eine Datei aus der TeamSystem SourceControl ausgecheckt, wird von dieser datei nicht automatisch die letzte Version gehohlt wie man das von VSS gewohnt ist. Der Grund dafür ist, dass dadurch evtl. ein inkonsistenter Zustand der Anwendung entstehen könnte, da die ausgecheckte Datei in einer neueren Version vorliegt, die nicht mit den restlichen dateien des Projekts kompatibel ist.

Weitere Ausführungen unter: http://blogs.vertigosoftware.com/teamsystem/archive/2006/05/15/2755.aspx

Wednesday, August 16, 2006 7:28:08 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Team System Server
# Monday, August 14, 2006

MSDN Solve ist die Lösung für alle Entwickler, die praxis-orientierte Hilfestellungen bei typischen Programmier-Herausforderungen suchen. MSDN Solve liefert verständliche Antworten auf immer wiederkehrende Fragen aus dem IT-Alltag und sorgt dafür, dass Sie Stolperfallen in Software-Projekten künftig leicht umschiffen.

http://www.microsoft.com/germany/msdn/solve/default.mspx

Monday, August 14, 2006 12:04:04 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
.Net und drum rum | Know-How

Die aktuelle Bildschirmauflösung abzufragen ist in .NET denkbar einfach, möchte man jedoch alle verfügbaren Auflösungen erfragen und eventuell sogar eine neue Auflösung setzen, muss man auf die Win32 API-Mittel zurückgreifen. Dieser Beitrag stellt eine Klasse zur Verfügung mit der mit jeweils einer Zeile Code über die verfügbaren Auflösungen iteriert werden bzw. eine neue Auflösung festgelegt werden kann

http://www.codegod.de/WebAppCodeGod/Main.aspx?pid=168

Monday, August 14, 2006 7:47:42 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Know-How | Tipps und Tricks
# Sunday, August 13, 2006

Jede Menge Infos, die aktuellsten Downloads und vieles mehr findet man unter http://www.netfx3.com/

Sunday, August 13, 2006 12:52:10 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
News | Unbearbeitet | .Net 3.0
# Wednesday, August 09, 2006

Ein wenig bekanntes Control ist das FlowLayoutPanel, das in VS 2005 standardmäßig enthalten ist. Mit diesem Control kann man Unterelemente in einer fließenden Ansicht darstellen wie das z.B. auch von Web-Seiten bekannt ist. Sie möchten eine Liste von Textboxen die untereinander stehen? Kein Problem mit dem FlowLayoutPanel. Sie können eine beliebige Richtung wählen (von rechts nach links, von oben nach unten etc.). Passen nicht alle Control in die Reihe, wird automatisch ein Umgruch eingefügt. Damit ist das FlowLayoutPanel wesentlich flexibler als man diese Funktion z.B. mit Docking erreichen könnte. Vor allem bei dynamisch generierten Control leistet das FlowLayoutPanel gute Dienste!

Wednesday, August 09, 2006 2:48:34 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Know-How | Tipps und Tricks

Oft möchte man Daten, die aus Excel in die Zwischenablage kopiert wurden, in der Anwendung verarbeiten. Dies geht recht einfach, da die Excel-Daten in der Zwischenablage einfach als CSV-Format vorliegen.

string ExcelValue = "";
IDataObject ClipboadData = Clipboard.GetDataObject();
if (ClipboadData.GetDataPresent(DataFormats.CommaSeparatedValue))
{
   
StreamReader ExcelReader = new StreamReader((Stream)ClipboadData.GetData(DataFormats.CommaSeparatedValue));
   
while (!ExcelReader.EndOfStream)
   {
      ExcelValue = ExcelReader.ReadLine();
   }
}

Man holt sich die Daten aus der Zwischenablage und prüft diese, ob sie im CSV-Format vorliegen. Dann kann man mit Hilfe eines StreamReaders die Daten lesen. Die Daten kommen dann in einem Format wie z.B. 5,8;8,9;7,5. Das lässt sich nun problemlos in der eigenen Anwendung verarbeiten.

Wednesday, August 09, 2006 2:37:59 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Know-How | Tipps und Tricks
# Tuesday, August 08, 2006

Um von generischen Objekten den Typ abzufragen kann man folgenden Code verwenden:

Dictionary<string, int> MyObject = new Dictionary<string, int>();
Type T = MyObject.GetType();
Type[] Ts = T.GetGenericArguments();

Dieser Code liefert ein Array zurück, das im ersten Element System.String und im zweiten System.Double enthält.

Weitere Infos unter http://msdn2.microsoft.com/en-us/library/b8ytshk6.aspx

Tuesday, August 08, 2006 2:33:43 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Know-How | Tipps und Tricks
# Friday, August 04, 2006

Eine sehr umfangreiche Link-Liste zu den 3 Hauptthemen von .Net 3.0 gibt es unter:

Teil 1: Windows Presentation Foundation
Teil 2: Windows Communication Foundation
Teil 3: Windows Workflow Foundation

Friday, August 04, 2006 7:10:58 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Know-How | Unbearbeitet

Xml2PDF ist eine Komponente, mit der verschiedene XML-Formate nach PDF konvertiert werden können, unter anderem auch WordML.

http://alt-soft.com/products_xml2pdf.jsp

Friday, August 04, 2006 9:08:16 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Komponenten und Bibliotheken | Tools
# Wednesday, August 02, 2006

Um die Work Items aller Team-Projekte eines Team-Servers anzeigen zu können, kann man einfach eine entsprechende Query anlegen. Hierzu einfach im Team-Explorer auf Work Items mit der rechten Maustaste klicken und dann "Add Query" auswählen. Die Query is dann schon mit einem Filter nach einem Projekt vorbelegt. Diesen einfach löschen, dann erscheinen alle Work Items.

 

Wednesday, August 02, 2006 8:27:32 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Team System Server | Tipps und Tricks

Wer Mono (die .Net Implementierung für Linux) ohne viel Aufwand mal testen möchte, kann sich jetzt ein VMWare-Image herunterladen, in dem alles bereits installiert ist. So kann man sofort loslegen.

http://www.mono-project.com/news/archive/2006/Jul-28.html

Wednesday, August 02, 2006 7:46:42 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
.Net und drum rum

Unter http://www.dnrtv.com finden sich einige Videos zum Thema .Net Entwicklung.

Wednesday, August 02, 2006 8:10:00 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Lernen | Unbearbeitet
# Tuesday, August 01, 2006

Oft erhält mein eine Meldung in einer Message-Box und möchte den text kopieren. Mit Alt-Druck erhält man einen Screen-Shoot, aber das ist eine Grafik. Wie kommt man nun an den Text?

Mit Strg-C !

Tuesday, August 01, 2006 8:55:46 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Tipps und Tricks

Eine Reihe von interessanten Artikel findet man unter http://www.theserverside.net/tt/articles/index.tss

Tuesday, August 01, 2006 8:05:21 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Know-How | Unbearbeitet

Oft müssem am Anfang und am Ende eines Strings überflüssige Zeichen gelöscht werden. Dazu kann in .Net der Befehl Trimm eingesetzt werden.

string t = " Test ";
string Result = t.Trim(' ');

Mit Trim lassen sich aber auch mehrere Zeichen auf einmal löschen. Dabei ist die Reihenfolge der Zeichen egal!

string t = " \r\n Test \r \n ";
string Result = t.Trim('\r', '\n', ' ');

Tuesday, August 01, 2006 5:31:42 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Tipps und Tricks

In einer Anwendung aus der ich auf Access via COM zugreife, wollte ich das Access-Fenster ausblenden. Die "visible" Eigenschaft kann man auch setzten - es passiert nur nix, daher das ganze über DLLImport. Wichtig ist, dass man sich den/die "handle" auf das/die Fenster merkt - die findet man sonst nicht mehr und kann sie sonst auch nicht mehr sichbar schalten.
Das Beispiel kann man natürlich auch auf jede andere Anwendung übertragen und das Process-Objekt hat ja auch noch paar andere Methoden, um ein bestimmtes Fenster zu finden, "GetProcessByID()" usw. sind auch vorhanden.

z.B. ausblenden von allen Access-Fenstern:

ArrayList processHandles = new ArrayList();
foreach (Process p in Process.GetProcessesByName("msaccess"))
{
   ShowWindow((int)p.MainWindowHandle, 0);  // 0 steht für unsichtbar
   
processHandles.Add((int)p.MainWindowHandle);
}

einblenden

foreach
(int processHandle in processHandles)
{
   
ShowWindow(processHandle, 9);  // 9 bedeutet restore - sprich so, wie das Fenster vor dem ausblenden aussah (Position, Größe)
}

und der dllimport, damit die Funktion genutzet werden kann:

[DllImport("User32")]
private static extern int ShowWindow (int hwnd, int nCmdShow);

Tuesday, August 01, 2006 6:35:56 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Tipps und Tricks
# Friday, July 28, 2006

Unter http://msdn.microsoft.com/asp.net/reference/multimedia/ findet man eine umfangreiche Liste mit Trainings-Videos etc. zum Thema ASP.Net, größtenteils kostenlos!

Friday, July 28, 2006 8:21:51 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Lernen
Friday, July 28, 2006 8:17:18 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Komponenten und Bibliotheken | Tools

Mit MSBee kann MSBuild von VS2005 so konfiguriert werden, dass damit Anwendungen kompiliert werden können, die auf dem Framework 1.1 ablaufen. Dies kann vor allem zur Pflege von bestehenden Anwendungen sinnvoll sein. Neue Anwendungen zu erstellen ist jedoch recht mühsahm, weil VS 2005 automatisch partial Classes verwendet, die aber vom Framework SDK 1.1 nicht unterstützt werden.

http://www.codeplex.com/Wiki/View.aspx?ProjectName=MSBee

Friday, July 28, 2006 8:06:40 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Tools | VS 2005
# Thursday, July 27, 2006

Statt try-catch-finally gibt es auch noch eine Alternative mit Hilfe sog. Scopes.

http://blog.veloursnebel.de/PermaLink,guid,fb472ac8-d855-4224-a2e0-ddf758492b17.aspx

Thursday, July 27, 2006 8:04:14 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Know-How | Tipps und Tricks

Will man Fenster mit ungewöhnlichen Formen erzeugen (wie z.B. unten), ist das mit Hilfe der Region-Eigenschaft kein Problem.

http://www.microsoft.com/germany/msdn/library/net/windowsforms/WindowsFormsUmrisseFreiBestimmen.mspx?mfr=true

Thursday, July 27, 2006 7:27:42 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Know-How | Tipps und Tricks
# Wednesday, July 26, 2006

Unter http://www.microsoft.com/germany/msdn/webcasts/serien/MSDNWCS-0605-01.mspx gibt es eine Webcast-Serie zu Visual Studio Team System

Wednesday, July 26, 2006 11:10:02 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Lernen | Team System Server | Unbearbeitet

Unter http://www.microsoft.com/germany/msdn/webcasts/serien/MSDNWCS-0605-02.mspx gibt es eine Webcast-Serie zur Entwicklung mit Office 2007 und .Net

Wednesday, July 26, 2006 11:07:41 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Know-How | Lernen | Unbearbeitet

Von Microsoft gibt es ein deutschsprachiges Portal das sich mit Themen rund um die Software-Architektur beschäftigt:

http://www.microsoft.com/germany/architecture/default.mspx

Wednesday, July 26, 2006 8:20:36 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
.Net und drum rum | Architektur | Know-How
# Tuesday, July 25, 2006

Unter IDesign gibt es einen Download, mit dem das My-Objekt von VB auch unter C# genutzt werden kann.

http://www.idesign.net/idesign/DesktopDefault.aspx?tabindex=-1&tabid=19&download=141

The My class in VB often simplifies and streamlines many operations, from Network programming to clipboard, to audio access, and so on. What takes sometimes a programming fit in C# can be done in one line using the My class in VB. If VB has Me and My, then C# should have this and That. The That class is the C# equivalent of the VB My class. It is a static class that uses the VB implementation as much as possible, and it requires adding a referencing to Microsoft.VisualBasic. The That class is instrumental when working in heterogeneous environments and when dealing with in porting of VB to C# or visa-versa.

Weitere interessante Downloads gibt's unter http://www.idesign.net/idesign/DesktopDefault.aspx?tabindex=5&tabid=11#ES

Tuesday, July 25, 2006 10:46:16 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Know-How | Tipps und Tricks
Tuesday, July 25, 2006 7:22:40 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Know-How
Tuesday, July 25, 2006 7:14:36 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
News
# Monday, July 24, 2006

Unter http://www.red-gate.com/products/SQL_Prompt/index.htm kann man kostenlos ein kleines Tool herunterladen, das für alle SQL-Editoren wie z.B. den Query Analyzer, SQL Server 2005 Managementstudio etc. eine Intelli-Sense Unterstützung für Tabellen-, Aplaten und Funktionsnamen bietet.

Monday, July 24, 2006 5:21:32 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
SQL | Tools

Mit dem Team Foundation Server Administration Tool können im Team Foundation Server benutzer und Berechtigungen verwaltet werden.

http://www.codeplex.com/Wiki/View.aspx?ProjectName=TFSAdmin

Monday, July 24, 2006 7:38:05 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Team System Server | Tools
# Friday, July 21, 2006

http://www.cimtec.dk/dot-net/DataBinding/DataBinding.htm

Beschreibt auch das Databindung zu User-Controls.

Friday, July 21, 2006 5:15:17 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Know-How

Bisher war es recht mühsahm, Oberflächen für verschiedene Sprachen zu erstellen. Mit VS 2005 ist das jetzt ein Kinderspiel. Einfach auf der Form die Eigenschaft Localizable auf true setzen. Dann die Oberfläche für die Standard-Sprache aufbauen. Anschließend die Eigenschaft Language auf der Form auf eine explizite Sprache einstellen und Anpassungen vornehmen (Lables, Buttons etc. neu beschriften). VS legt für die Zweitsprache automatisch eine .resx-Datei an, in der diese sprachspezifischen Einstellungen gespeichert werden.

Während des editierens kann man beliebig zwischen den Sprachen umschalten und die Oberfläche für die jeweilige Einstellung editieren. Genial ist dabei, dass nicht nur Texte in den sprachspezifischen Ressource-Dateien gespeichert werden, sondern auch alle anderen Einstellungen. Wird ein Button z.B. in Englisch mit "Save" betittelt, kann es sein, dass die deutsche Bezeichnung "Speichern" zu lang ist und der Platz nicht ausreicht. Kein Problem. Den Button einfach in der deutschen Einstellung vergrößern und schon wird auch die Größe des Buttons in Abhängigkeit der Sprache gewählt.

Friday, July 21, 2006 4:17:56 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Know-How | VS 2005
# Thursday, July 20, 2006

Dass viele Operationen mit einem string recht langsam ist, ist ja weitgehend bekannt, auch dass man hier besser einen StringBuilder verwendet. Folgendes Beispiel ist unter Performance-Aspekten sehr ungünstig:

string Text = "";
for (int i=0; i<100000; i++)
{
   Text += "x";
}

Was weniger bekant ist, die Erklärung dafür. Wird einem String ein neuer Wert zugeweisen, so wird das Objekt jedes mal neu angelegt. In dem obigen Beispiel wird also 100000 mal ein neues String-Objekt angelegt und das alte verworfen. Das kostet natürlich Zeit. Dahingegen ist der StringBuilder dynamisch erweiterbar. Nach der initialisierung wird er mit einer Kapazität von 16 Zeichen angelegt. Die Kapazität verdoppelt sich nun jedesmal, wenn die Kapazität überschritten wird. Mit dem einfügen des 17. Zeichens wird die Kapazität also auf 32 erhöht etc. Beim Stringbuilder kann man im Konstruktor auch schon eine größere Kapazität angeben.

Thursday, July 20, 2006 8:14:12 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Know-How
# Wednesday, July 19, 2006

In der AssemblyInfo.vb bzw. AssemblyInfo.cs gibt es zwei Einträge zur steuerung der Versionierung.

<Assembly: AssemblyVersion("0.9.*")>
<Assembly: AssemblyFileVersion(
"0.9.2.0")>

Das Problem dabei ist, dass die AssemblyVersion durch * automatisch nummeriert werden kann, dass das aber bei der AssemblyFileVersion nicht funktioniert. Möchte man, dass beide gleich sind, muss man lediglich die AssemblyFileVersion löschen.

Wednesday, July 19, 2006 3:40:00 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
.Net und drum rum | Know-How | VS 2005
# Monday, July 17, 2006

Möchte man den Titel eines Diagramms aus einer Zelle holen, muss man einen kleinen Trick anwenden. Über den Dialog "Diagrammoptionen" lässt sich nur ein fester Text eingeben. Wenn man aber den Titel im Diagramm markiert und dann in der Eingabeleiste den Verweis eingibt, funktioniert das ganze.

Monday, July 17, 2006 7:15:52 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Excel

Nach der Aktualisierung von Daten eines Pivot-Charts sind ie Formatierungen wie Farben der Balken etc. verloren. Dies liegt daran, weil das Diagramm komplett neu aufgebaut wird. Dies kann man umgehen, indem man die Einstellungen als benutzerdefinierten Diagrammtyp speichert und diesen dann dem Chart wieder zuweist. Ein Makro zur Aktualisierung der Daten eines Pivot-Charts ohne Verlust der Formatierung könnte dann so aussehen:

    ActiveWorkbook.Sheets("Projektzeiten").PivotTables("PivotTable2").PivotCache.Refresh
    Application.Wait (Now + TimeValue("0:00:01"))
    Application.ActiveWorkbook.Charts(1).ApplyCustomType ChartType:=xlUserDefined, TypeName:="MyType"
    Application.ActiveWorkbook.Charts(1).HasPivotFields = False

Den Wait in Zeile 2 braucht er offensichtlich, da sonst die Aktualisierung noch nicht abgeschlossen ist.

Monday, July 17, 2006 7:13:06 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [1] -
Excel
# Friday, July 14, 2006

...mit verschiednen Web-Casts zum Thema Windows Presentation Foundation für Entwickler und Designer.

http://blogs.msdn.com/karstenj/archive/2006/06/15/632639.aspx

Friday, July 14, 2006 8:46:38 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Lernen | Unbearbeitet

Mit dem Obensource Webpart "SharePoint Fourums Web Part" kann ein komplettes Forum als einzelnes Webpart direkt in Sharepoint integriert werden. Ein deutsches Language-Pack ist verfügbar.

http://www.codeplex.com/Wiki/View.aspx?ProjectName=SPFORUMS

Friday, July 14, 2006 8:14:16 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Komponenten und Bibliotheken

In einer Studie vertitt die Burton Group die Ansicht, dass JAVA EE in 5 Jahren keine wesentliche Rolle bei den Entwicklungstechnologien mehr spielen wird. Einer der Gründe dafür ist SOA!

http://searchwebservices.techtarget.com/originalContent/0,289142,sid26_gci1198211,00.html

Friday, July 14, 2006 8:00:01 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
News

Der VMWare-Server kann nun kostenlos heruntergeladen werden

http://www.vmware.com/download/server/

Friday, July 14, 2006 7:40:12 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Tools
# Thursday, July 13, 2006

Über Array-Formeln lassen sich Konstrukte wie das folgende erstellen:

{=MITTELWERT(WENN(ISTNV(C1:C3);"";C1:C3))}

Arrayformeln müssen mit STRG+UMSCHALT+EINGABE bestätigt werden (statt nur EINGABE). Die geschweiften Klammern müssen nicht eingegeben werden, sondern werden von Excel nach der Bestätigung mit STRG+UMSCHALT+EINGABE automatisch hinzugefügt. Klappt auch bei MIN, MAX und MEDIAN.

Thursday, July 13, 2006 7:27:31 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Excel
# Wednesday, July 12, 2006

Die C# Bibliothek SharpZipLib enthält Funktionen zum lesen und schreiben von ZIP, GZIP, Tar und Bzip2. Sie ist als Opensource verfügbar.

http://www.icsharpcode.net/OpenSource/SharpZipLib/Default.aspx

Wednesday, July 12, 2006 6:23:45 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Komponenten und Bibliotheken

Mit dem SP1 spendiert Microsoft dem SQL Server 2005 Express zusätzlich die zwei Funktionen Reporting-Services und den Volltextindex des großen Bruders. Vorlagen für das Erstellen der Reports für Visual Studio gibt es mit dem Microsoft SQL Server 2005 Express Edition Toolkit SP1.

http://msdn.microsoft.com/vstudio/express/sql/download/

Wednesday, July 12, 2006 5:48:27 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
SQL
# Tuesday, July 11, 2006

In diesem Artikel aus dem MSDN-Magazin werden 10 verbreitete Fallstricke beschrieben, die die Performance von ASP.Net Anwendungen negativ beeinflussen.

http://msdn.microsoft.com/msdnmag/issues/06/07/WebAppFollies/default.aspx

Tuesday, July 11, 2006 9:54:00 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
ASP.Net
# Monday, July 10, 2006

Diese Power-Toys erweitern die Funktionen des Class Designers im Visual Studio

http://www.gotdotnet.com/workspaces/workspace.aspx?id=fe72608b-2b28-4cc1-9866-ea6f805f45f3

Im Moment scheint es hier noch Probleme zu geben, wenn das System nicht komplett englisch ist, aber es ist ja auch noch eine Alpha-Version.

Monday, July 10, 2006 10:07:38 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
VS 2005

Microsoft bietet unter http://www.microsoft.com/germany/msdn/webcasts/library.aspx?id=1032301564 eine neue Reihe von WebCastts für .Net Entwickler an.

Monday, July 10, 2006 5:16:40 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Know-How | Lernen | Unbearbeitet

Unter http://msdnwiki.microsoft.com/en-us/mtpswiki/ms404855(VS.80).aspx bietet Microsoft ab sofort, zunächst als Beta-Version, ein Wiki an, das die MSDN-Dokumentation zu VS 2005 und .Net Framework 2.0 enthält. Das besondere dabei ist, dass durch die community Anmerkungen, Code-Beispiele etc. hinzugefügt werden können.

Bleibt abzuwarten, wie die Community sich hier beteiligt.

Monday, July 10, 2006 5:10:43 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
.Net und drum rum

Unter folgender Adresse gibt es eine große Anzahl von Artikeln, Webcasts etc zum Thema Team System

http://www.microsoft.com/germany/msdn/vstudio/teamsystem/expand/default.mspx

Monday, July 10, 2006 4:52:09 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Team System Server | Unbearbeitet

Unter der folgenden Adresse gibt es zahlreiche nützliche Links rund um das Thema Team System Server

http://www.dotnet-online.de/web/teamsystem/default.aspx

Monday, July 10, 2006 11:45:42 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Team System Server

Jeder kennt das Problem. Man hat einen ellenlangen SQL-String und spätestens nach der dritten Klammer hat man den Überblick verloren, wenn allles in einer Zeile steht. Hier hilft ein kleines Tool weiter, das SQL-Strings, auch komplexe, übersichtlich formatiert. Das Tool gibt es als kostenlose Online-Version und als kostenpflichtige Offline-Version oder auch als API.

http://www.sqlinform.com/

Monday, July 10, 2006 11:42:16 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
SQL | Tools | Tipps und Tricks
# Friday, July 07, 2006

Mit Hilfe der Eigenschaft UpdateBatchSize kann eingestellt werden, wieviele Update-Befehle beim Updaten eines Datasets in die Datenbank zusammengefasst werden sollen.

DataAdapter and Batch Updates. In the previous version of ADO.NET, when updating a database with changes from a DataSet, the Update method of a DataAdapter performs updates to the database one row at a time.

As the method iterates through the rows in the specified DataTable, it examines each DataRow to see if the row has been modified. If the row has been modified, the method calls the appropriate UpdateCommand, InsertCommand or DeleteCommand, depending on the value of the RowState property for that row. Every row update involves a network round-trip to the database.

In ADO.NET 2.0, the DataAdapter exposes an UpdateBatchSize property. Setting the property to a positive integer value causes updates to the database to be sent as batches of the specified size. For example, setting the UpdateBatchSize to 10 will group 10 separate statements and submit them as a single batch. Setting the UpdateBatchSize to 0 will cause the DataAdapter to use the largest batch size that the server can handle. Setting it to 1 disables batch updates as rows are sent one at a time.

Event Behavior Changes with Batch Updates. The DataAdapter class has two update-related events i.e. RowUpdating and RowUpdated. In previous versions of ADO.NET, and when batch processing is disabled, each of these events is generated once for each row processed. RowUpdating is generated before the update occurs, and RowUpdated is generated after the database update is completed.

When batch processing is enabled, multiple rows are updated in a single database operation. Therefore, only one RowUpdated event occurs for each batch, whereas the RowUpdating event occurs for each row processed.

When batch processing is disabled, the two events are fired with one-to-one interleaving where one RowUpdating event and one RowUpdated event fire for a row, then one RowUpdating and one RowUpdated event fire for the next row, until all of the rows are processed.

Friday, July 07, 2006 6:37:41 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
ADO.Net | Know-How

Es gibt von Microsoft e-Learning Angebote zu Visual Studio 2005, die teilweise kostenlos sind.

https://www.microsoftelearning.com/visualstudio2005/

Friday, July 07, 2006 6:19:11 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Unbearbeitet | Lernen

Microsoft Great Plains ist eine Finanzsoftware, die sich offensichtlich mit Visual Studio erweitern lässt.

http://www.microsoft.com/dynamics/gp/using/developertoolkit.mspx

Ich werde mir das mal bei Gelegenheit anschauen, sieht mal interessant aus.

Friday, July 07, 2006 10:09:26 AM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Unbearbeitet | Potenziale
# Thursday, July 06, 2006

Projekte aus Visual Source Safe 2005 können mit Hilfe eines Konverters nach Team Foundation Server migriert werden. Dabei bleibt die Historie komplett erhalten. Eine Migration von Visual Source Safe 6.0 nach VSS 2005 kann über Backup / Restore erfolgen.

http://msdn2.microsoft.com/en-us/library/ms253060.aspx

Thursday, July 06, 2006 3:13:37 PM (Mitteleuropäische Sommerzeit, UTC+02:00)  #    Comments [0] -
Team System Server
Archive
<August 2006>
SunMonTueWedThuFriSat
303112345
6789101112
13141516171819
20212223242526
272829303112
3456789
About the author/Disclaimer

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2014
Thomas
Sign In
Statistics
Total Posts: 622
This Year: 13
This Month: 1
This Week: 0
Comments: 356
Themes
All Content © 2014, Thomas
DasBlog theme 'Business' created by Christoph De Baene (delarou)