-
ACHTUNG - NEUES BLOG
Ab sofort steht unter http://devtyr.norberteder.com mein neues Blog zur Verfügung. Dieses Blog wird nicht weiter betreut, bleibt aber erhalten. Neue Eintr%auml;ge erfolgen nur mehr im neuen Blog. Kommentare werden ebenfalls nicht mehr behandelt. Wer weiterhin meinen Einträgen und Aktivitäten folgen möchte, möge bitte RSS-Feeds, Verlinkungen etc. an die neue Location anpassen.
|
Cosmos - ein C# Betriebssystem
25.03.08 - .NET, Mobile Devices, Visual Studio, Allerlei Beitrag von Norbert Eder| | Einfach nur cool. Zuerst: Informationen gibt es auf http://www.gocosmos.org.
Cosmos is an operating system project implemented completely in CIL compliant languages.
Mit Hilfe eines User-Kits kann dann gleich mal gestartet werden. Zusätzlich dann auch gleich noch die Möglichkeit, das ganze in Emulatoren laufen zu lassen:
Cosmos runs in QEMU, VMWare, and VirtualPC. QEMU is best for debugging as it has extra debugging support which we use to integrate with GDB.
Und wie funktioniert es?
Cosmos includes a compiler (IL2CPU, which is part of Cosmos) that reads the input file (usually the shell) and Cosmos libraries and compiles the resulting IL to x86 code. IL2CPU has a layer for cross platform and we plan to support other processors and platforms, including x64. IL2CPU also supports certain extension methods which allow C# code to interact directly with the CPU, registers, and ports in the kernel. IL2CPU contains some inline assembler, but there are no ASM files that need to be linked in.
Currently IL2CPU first outputs raw asm files (with IL comments) and then processes them through nasm (a free assembler). Later we plan to emit directly to binary.
Also klingt doch mal richtig spannend, oder?
Gefunden bei Dirk
| | | Kommentar hinzufügen
| 0 Trackbacks
| Permalink | Trackback-URL |
Mitschnitte vom Microsoft Launch Event
16.03.08 - .NET, Grundlagen, Base Framework, WPF, ASP.NET, Silverlight, Mobile Devices, Datenverwaltung, Visual Studio, Allerlei, SQL Server Beitrag von Norbert Eder| | Unter dem nachfolgenden Link sind einige Livemitschnitte vom Lauchevent 2008 in Frankfurt zu finden. Zum Ansehen wird das Silverlight-Plugin benötigt.
Hier der Link: Mitschnitte Launch 2008
Und hier die Themen:
- Keynote
- Neu in Visual Studio 2008
- SQL Server 2008
- Überblick Windows Server 2008 Management
- Internet Information Server 7
- Virtualisieren mit dem Windows Server
Viel Spass beim Gucken.
| | | Kommentar hinzufügen
| 0 Trackbacks
| Permalink | Trackback-URL |
Februar 2008 im Rückblick
03.03.08 - .NET, Grundlagen, Base Framework, WPF, ASP.NET, Silverlight, Datenverwaltung, Visual Studio, Allerlei Beitrag von Norbert Eder
Unable to find manifest signing certificate in the certificate store
14.02.08 - .NET, Visual Studio, Allerlei Beitrag von Norbert Eder| | Heute bekam ich diese Meldung und wusste im ersten Moment auch nicht so ganz genau, was es damit auf sich hat. Hier nun die Aufklärung:
Gegeben ist ein Projekt, welches über einen TFS verwaltet wird. Für dieses Projekt wurde ClickOnce aktiviert und somit die ClickOnce Manifests signiert. Dafür wurde ein temporärer Key (pfx) angelegt, welcher nicht eingecheckt wurde. Daraus resultiert nun dieser Fehler. ABER:
In den Projekteigenschaften kann nun in der Lasche Sign der Haken von Sign the ClickOnce manifests entfernt werden, was jedoch dieses "Problem" nicht behebt. Der Fehler erscheint weiterhin. Um diesen Fehler los zu werden, muss manuell die Projekt-Datei (csproj, vbproj, etc.) geöffnet werden, um folgende Tags zu entfernen:
<ManifestCertificateThumbprint>
<ManifestKeyFile>
<GenerateManifests>
<SignManifests>
Nun das Projekt bzw. die Solution neu laden und es kann wieder gebuildet werden.
Daher:
- Derartige Änderungen an einem Projekt unbedingt mit den Kollegen absprechen
- Key-Dateien ins Source Control einchecken
- Bei einem Test nichts einchecken
| | | 2 Kommentare
- 3507 mal angesehen
| 0 Trackbacks
| Permalink | Trackback-URL |
Jänner 2008 im Rückblick
04.02.08 - .NET, Grundlagen, Base Framework, WPF, ASP.NET, Silverlight, Mobile Devices, Datenverwaltung, Visual Studio, Allerlei Beitrag von Norbert Eder
.NET BlogBook mit eigener Webpräsenz
27.01.08 - .NET, Grundlagen, Base Framework, WPF, ASP.NET, Silverlight, Mobile Devices, Datenverwaltung, Visual Studio, Allerlei, Internet, Community Beitrag von Norbert Eder| | Das .NET BlogBook ist ab sofort auf einer eigenen Webpräsenz zu finden. Der Hintergrund besteht aus mehreren Punkten, wovon ich einige hier nennen möchte.
.NET Casts
Ursprünglich wurde das .NET BlogBook als Nebenprodukt von .NET Casts geführt. Thematisch passten beide Bereiche nicht optimal zusammen, wodurch diese nun getrennt wurden. Auf beiden Seiten wird nun der eigentilche Bereich entsprechend gefördert.
Andrang
Das .NET BlogBook darf sich größter Beliebtheit erfreuen, wodurch eine eigene Webpräsenz fast unumgänglich wurde. Dadurch besteht nun die Möglichkeit, zukünftig besser auf unsere Leser eingehen zu können. Aber dazu möchte ich vorerst noch nicht zuviel verraten.
Dieser Schritt soll das .NET BlogBook zu einem eigenständigen Produkt ausbauen und zukünftig auch wesentlich zur Verbesserung der Qualität beitragen.
Hier nun die Adresse, unter der das .NET BlogBook zukünftig zu erreichen ist:
http://www.dotnet-blogbook.com
PS: Die Inhalte bleiben noch die nächsten Tage auf der .NET Casts Website erhalten, werden anschließend jedoch mit einer entsprechenden Meldung von der Site genommen.
| | | Kommentar hinzufügen
| 0 Trackbacks
| Permalink | Trackback-URL |
Visual Studio Templates erstellen
09.01.08 - .NET, Visual Studio Beitrag von Norbert Eder| | Einleitung
Visual Studio wird bereits mit jeder Menge Templates ausgeliefert, die es uns Entwickler ungemein erleichtern, Projekte oder einzelne Dateien zu erstellen. Ohne diese Templates wäre der Aufwand, ein Projekt einzurichten wohl ein wesentlich größerer Bestandteil unserer Arbeit. Dieser Artikel zeigt, wie schnell und einfach Templates für einzelne Dateien eingerichtet werden können, um sich zukünftig einige Arbeitsschritte zu ersparen.
Wann lohnt sich ein Template?
Templates sind immer dann sinnvoll, wenn im gleichen Projekt (oder auch unterschiedlichen Projekten) häufig dasselbe Grundgerüst eingefügt werden muss. Ein Beispiel.
In vielen Anwendungen wird ein Logging-Framework verwendet, um Informationen während der Laufzeit zu erfassen (Statusmeldungen, Debug-Informationen, Fehlermeldungen usw.). Um in eine Klasse mit inkludiertem Logger zu erhalten müssen einige Schritte vollführt werden:
- Neue Klasse anlegen
- Referenz auf Logging-Framework setzen
- Logger instanzieren
Mit der Anzahl der erstellten Klassen, welche den besagten Logger nutzen, steigt auch der dafür benötigte Aufwand. Das mag vielleicht auf den ersten Blick als gering abgetan werden. Nehmen wir für die genannten Schritte eine notwendige Zeit von ca. 20 Sekunden an erscheint dies wirklich gering zu sein. Selbst kleinere Projekte inkludieren recht schnell 100 Klassen (die für ein Logging relevant sind). Der Aufwand dafür läge nun schon bei über 30 Minuten. 30 Minuten, die man für wichtigere Aufgaben verwenden kann, als eine Klasse inklusive Logger zu erstellen (zumal immer wiederkehrende Aufgaben ermüdend und nervig sind). Ein Template hierfür rechnet sich also. Analysiert man seine tägliche Arbeit, ergeben sich sehr viele Möglichkeiten, die die Erstellung eines Templates rechtfertigen würden.
Basiswissen
Templates werden von Visual Studio verwendet, um sogenannte Vorlagen zur Verfügung zu stellen. Diese Vorlagen definieren, wie vordefinierte Projekte (ProjectTemplates) und einzelne Dateien (ItemTemplates) auszusehen haben. Die Standard-Templates für die beiden genannten Typen sind in folgenden Verzeichnissen zu finden:
ProjectTemplates
<programs directory>\Common7\IDE\ProjectTemplates
ItemTemplates
<programs directory>\Common7\IDE\ItemTemplates
Um die Standard-Templates von den eigenen zu trennen, befinden sich in den Eigenen Dateien des jeweiligen Benutzers ebenfalls entsprechende Verzeichnisse. Im Falle von Visual Studio 2008:
ProjectTemplates
<Eigene Dateien>\Visual Studio 2008\Templates\ProjectTemplates
ItemTemplates
<Eigene Dateien>\Visual Studio 2008\Templates\ItemTemplates
Wird eine andere Version verwendet, ändert sich entsprechend der Pfad (für Visual Studio 2005 wird aus 2008 2005 usw.).
Jedes dieser Templates ist in einer ZIP-Datei abgelegt, welche in einen Cache-Ordner (ProjectTemplatesCache bzw. ItemTemplatesCache) entpackt und gelesen werden. Dies kann auch ein Grund sein, dass Änderungen an einem Template nicht sofort in Visual Studio verfügbar sind.
In jeder Zip-Datei muss eine Datei mit der Endung vstemplate vorhanden sein. Diese enthält die Metadaten zum jeweiligen Template. Ebenfalls vorhanden sein müssen die in den Metadaten referenzierten Dateien.
Ein konkretes Beispiel
Mitunter kommt es vor, dass nicht die von .NET bereit gestellte Anwendungs-Konfiguration verwendet wird, sondern eine eigene Lösung, die meist in allen Projekten von gleichem Aufbau ist. Die einzelnen Einstellungen werden in einer XML-Datei abgelegt. Zu Beginn muss die Vorlage erstellt werden. Dafür wird das Grundgerüst der Konfigurationsdatei erstellt.
ConfigurationFile.xml
<?xml version="1.0"?>
<AppConfiguration>
<ReferencedConfigurations>
</ReferencedConfigurations>
<Commands>
</Commands>
<MiscSettings>
</MiscSettings>
</AppConfiguration>
Bei Verwendung dieses Templates wird eine Datei mit oben beschriebenen Inhalt angezeigt.
Im nächsten Schritt müssen die Metadaten angegeben werden. Nur mit diesen Angaben ist Visual Studio in der Lage, das erstellte Template zu verwalten und bereit zu stellen.
ConfigurationFile.vstemplate
<?xml version="1.0" encoding="utf-8"?>
<VSTemplate
Version="3.0.0"
Type="Item"
xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">
<TemplateData>
<Name>Custom Configuration File</Name>
<Icon></Icon>
<Description>
Creates a custom configuration file
</Description>
<ProjectType>CSharp</ProjectType>
<ProvideDefaultName>true</ProvideDefaultName>
<DefaultName>ConfigurationFile.xml</DefaultName>
</TemplateData>
<TemplateContent>
<ProjectItem
ReplaceParameters="true"
TargetFileName="$fileinputname$.xml">
ConfigurationFile.xml
</ProjectItem>
</TemplateContent>
</VSTemplate>
Wie üblich, handelt es sich auch dabei um eine XML-Datei, die grundsätzlich recht einfach aufgebaut ist. Das Root-Element wird immer durch ein VSTemplate-Tag dargestellt. Danach folgen die Elemente TemplateData und TemplateContent. Ersteres beschreibt die grundlegenden Eigenschaften des Templates. Dies betrifft den Namen, die Beschreibung, für welchen Projekt-Typ dieses Template verwendet werden kann und weitere Angaben (die sich bei einem ProjectTemplate teilweise unterscheiden). Im Bereich TemplateContent wird nun definiert, welche Dateien, Referenzen etc. verwendet werden. Auch hier gibt es einen Unterschied zwischen ProjectTemplate und ItemTemplate.
Wurden beide Dateien angelegt, sind diese in eine Zip-Datei zu packen und in das jeweilige Verzeichnis zu kopieren. Nach einem Neustart von Visual Studio sollte dieses Template nun zur Verfügung stehen.
Zu beachten ist, dass es in den einzelnen Template-Verzeichnissen Unterordner zu den jeweiligen Sprachen gibt. Darunter kann wird eine weitere Verzeichnisstruktur abgebildet, die in den „New Item“-Wizard übernommen wird. Somit ist es möglich, eigene Templates nach Aufgabengebiet zu gruppieren.
Fazit
An diesem Beispiel war gut zu sehen, dass es sehr einfach ist, ein eigenes Template zu erstellen. Natürlich stehen weitere Möglichkeiten zur Verfügung, beispielsweise die Angabe und Verwendung von Parametern, Bedingungen usw. Es lohnt sich ein Blick in die Template Referenz, um eine Übersicht und Beschreibung aller möglichen Settings zu erhalten.
Referenzen
Visual Studio: Anpassung Class Template
Visual Studio Template Reference
| | | Kommentar hinzufügen
| 0 Trackbacks
| Permalink | Trackback-URL |
5. Ausgabe .NET BlogBook - Gewinne ein VSone-Ticket
07.01.08 - .NET, Grundlagen, Base Framework, WPF, ASP.NET, Silverlight, Mobile Devices, Datenverwaltung, Visual Studio Beitrag von Norbert Eder| | Die nunmehr fünfte Ausgabe des .NET BlogBooks ist erschienen.
Die aktuelle Ausgabe wurde vor allem in den Bereichen Windows Presentation Foundation, C# 3.0 und Tools erweitert. Auch viele andere Bereiche profitieren von neuen Einträgen. Insgesamt bietet die fünfte Ausgabe nun knapp 320 Seiten Inhalte, um 40 mehr als Ausgabe vier.
Aber nicht nur beim Inhalt hat sich etwas getan. Nein, auch dieses Mal gibt es wieder ein Gewinnspiel. Zu gewinnen gibt es ein Ticket der VSone. Also ran ans Zeug! Downloaden, auf Seite 3 die Teilnahmebedingungen lesen und vielleicht gewinnen.
Link: .NET BlogBook Projektseite
PS: Zusammen mit der fünften Ausgabe feiert das .NET BlogBook nun auch schon das erste überstandene Jahr - und das durchaus erfolgreich!
| | | 6 Kommentare
- 918 mal angesehen
| 1 Trackbacks
| Permalink | Trackback-URL |
.NET Framework und Visual Studio Downloads
27.12.07 - Blog-Intern, .NET, Visual Studio Beitrag von Norbert Eder| | Seit längerer Zeit gibt es hier am Blog eine Download-Sektion mit den wichtigsten und gängigsten .NET Framework und Visual Studio Downloads. Diese Sektion wurde von mir nun wieder angepasst, als auch neue Downloads eingepflegt.
Sollten weitere, wichtige Downloads fehlen, werde ich diese natürlich in die Liste mit aufnehmen.
| | | Kommentar hinzufügen
| 0 Trackbacks
| Permalink | Trackback-URL |
Visual Studio 2008 verdunkelt und stromsparend
21.12.07 - .NET, Visual Studio Beitrag von Norbert Eder| | Hier habe ich ja bereits einmal auf ein paar Einstellungen für Visual Studio aufmerksam gemacht, die einfach etwas dunkler sind. Dies hat nicht nur den Vorteil, dass es die Augen schont, sondern zudem auch noch stromsparend ist.
Hier nun meine verwendeten Einstellungen. Zuerst für normales C#:
Und hier für XAML (Einstellungen für XML sind die gleichen):
Wer sich diesen Style auch zulegen möchte, der kann mein nachfolgendes VSSettings-File importieren.
Download VS2008_Eder.zip
Zusätzlich wird der kostenlose Font Monaco benötigt.
| | | 9 Kommentare
- 1257 mal angesehen
| 1 Trackbacks
| Permalink | Trackback-URL | Zurück Weiter
|
|
|
|
|
|
|