atwork.blog

news and infos about microsoft, technology, cloud and more

Für IT Professionals und solche, die es werden soll(t)en: Microsoft Baseline Security Analyzer 2.1

Schon ein Monat ist er alt - aber vielen (noch) unbekannt: Der Microsoft Baseline Security Analyzer 2.1 für Windows (MBSA). MBSA ist ein einfaches, kostenfreies Tool, welches ermöglicht den Sicherheitsstatus eines Windows-PCs anhand der Sicherheitsempfehlungen von Microsoft zu ermitteln. Dabei können übliche Schwachstellen und fehlende Patches entdeckt und die Systemsicherheit verbessert werden. MBSA ist vor allem für KMUs gedacht. Der Analyzer kann mit und ohne WSUS arbeiten. Das Tool enthält ein grafisches und ein Commandline-Interface und kann auch Remote Scans ausführen (also fremde PCs prüfen). MBSA 2.1 läuft ab Windows 2000 Service Pack 3 bis hin zum neuen Windows Server 2008, als x32 oder x64bit Applikation - je nach Betriebssystem gibt es mitunter einige Einschränkungen. Was ist neu an MBSA 2.1? Die neue Version unterstützt den aktuellen Windows Update Agent client (WUA - von Microsoft Update oder WSUS-Servern installiert), ebenso ein neues grafisches Interface für Vista und Windows Server 2008, vollen 64bit-Support, vulnerability assessment check support (VA - ja, was wär das Leben ohne tolle Abkürzungen?) und aktualisierte Checks für SQL Server 2005 und Windows XP Embedded platforms. Nach der Installation (als Administrator!) erfolgt die Überprüfung in einfachen Schritten: Das Ergebnis sieht dann beispielsweise so aus: Ein leicht zu lesender Report, der die einzelnen Themen übersichtlich zusammenfasst und zu jedem Thema Hinweise zur Überprüfung, zu den ermittelten Details und teilweise auch Links zur Behebung der Schwachstelle liefert. Beim Anklicken eines Links wird der entsprechende Report im Browser geöffnet. Hier geht es zum Download und zu den wirklich ausführlichen FAQs. Ein brauchbares Tool! Wir wünschen Secure Computing! Beitrag von Toni Pohl

Brauchbares SQL für HOT und COLD

Sind Sie Datenbank-Administrator oder Software-Entwickler? Interessiert Sie SQL-Server Technik? Wenn ja, dann kennen Sie wahrscheinlich Anforderungen wie diese: Hatten Sie schon einmal das Problem zwei Datenbanken vergleichen zu müssen? Oder eine Datenbank zu erweitern? Und das Ganze möglichst automatisiert? Ich habe diese Anforderung ... sehr oft. Es gibt eine Applikation, einmal HOT (Echtdaten) und einmal COLD (Demodaten) - die Benutzer verwenden HOT zum Arbeiten und COLD zum Testen. Es beginnt dann besonders interessant zu werden, wenn in der Demodatenbank neue Funktionen und Erweiterungen eingebaut werden. Diese werden getestet, Anwender geben Daten ein - und wollen dann auf einmal, dass die eingegebenen Daten in das Echtsystem übernommen werden. Leider war der Split der Datenbank-Version schon vor einem Monat und die Scripts zum Erweitern der HOT-Datenbank haben ihren Weg zum Administrator nicht gefunden. Und der steht nun da und weiß nicht, welche Schema-Änderungen durchzuführen sind, damit beide Systeme die gleichen Struktur haben, damit dann die Daten übernommen werden können. Klingt zu übertrieben? Glauben Sie mir, so etwas (und ähnliche Anforderungen) passiert in der Praxis öfters - vor allem bei rasch wachsenden Systemen. Da wäre es natürlich gut, sich helfen zu können. Zunächst einmal gibt es im SQL Management Studio im Kontextmenü immer den SCRIPT-Befehl: Diese Funktion schreibt dann beispielsweise ein ALTER des Objekts in ein File zum Ausführen auf dem Zielsystem. Das ist sehr brauchbar aber eben manuell. Wie kann Scripten und Vergleichen automatisiert werden? Hier hilft T-SQL weiter. Im SQL Server 2005 wurden die (kryptischen) Abfrage-Mechanismen des Vorgängers SQL Server 2000 durch neue Views im Schema sys ersetzt. Damit ist es nun bequem möglich, Datenbank-Objekte abzufragen. Hier nun ein paar praktische Beispiele: -- Anzeige aller Objekteselect * from sys.sysobjects order by xtype, name Liefert alle Objekte aus dem Systemkatalog. xtype gibt dabei an, um welchen Objekt-Typ es sich handelt (siehe unten). -- Anzeige aller Tables in einer DB:sp_tables -- Anzeige aller Views (0..Default Microsoft Views, 1..eigene Views):SELECT * FROM sys.all_views WHERE is_ms_shipped = 1 -- Detaillierte Anzeige aller Spalten-Informationen einer Tabelle:SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'produkte' -- SQL einer Stored Procedure anzeigen:sp_helptext 'spMeinProgramm' Durch ein JOIN mit Syscomments können auch die dahinterliegenden SQLs angezeigt werden! Somit funktioniert die Anzeige beispielsweise aller Views und der verwendeten SQL-Befehle so: select o.id, o.name, c.text from sysobjects o join syscomments c on o.id=c.id where xtype='V' order by id, colid /* -- xtype Werte:C = CHECK constraintD = Default or DEFAULT constraintF = FOREIGN KEY constraintL = LogFN = Scalar functionIF = Inlined table-functionP = Stored procedurePK = PRIMARY KEY constraint (type is K)RF = Replication filter stored procedure S = System tableTF = Table functionTR = TriggerU = User tableUQ = UNIQUE constraint (type is K)V = ViewX = Extended stored procedure*/ Mit diesen Werkzeugen können zum Beispiel alle Schemas oder SQLs (von Views, SPs od. Funcs) in eine Tabelle geschrieben werden. Diese könnte dann in einer Stored Procedure mit einer ebenso erzeugten Tabelle in einer anderen Datenbank vergleichen werden und die Unterschiede auswerfen. Oder die Tabelle als Textdatei exportiert werden und dann die beiden Files (z.B. mit Windows-Bordmitteln: fc.exe oder mit WinDiff - ja, das gibt es noch immer) verglichen werden. Die Vorgangsweise hängt natürlich vom erwünschten Ziel ab: Eine Automatisierung als Stored Procedure um alle unterschiedlichen Views, Stored Procedures und Functions auszuwerfen, oder per SSI, oder.... Also recht individuell. ;-) Der Knackpunkt für mich war, herauszufinden, wie man zu den SQL-Befehlen in den gespeicherten SQL-Objekten gelangt. Und das liefert eben das JOIN mit Syscomments zur weiteren Verarbeitung oder zum Parsen für komplexere Anwendungen (Ja, ich weiß: Die Schemata's können natürlich auch mit ADO.NET ausgelesen und verarbeitet werden - für einfache Anforderungen ist T-SQL jedoch gut geeignet). Achja, noch ein SQL zur Performance-Messung: Dynamic Management Views (DMV) liefern Informationen über den aktuellen Auslastungszustand des SQL Servers. Zum Beispiel ein Snapshot der aktuellen Aktivität eines SQL Servers: SELECT object_name, counter_name, instance_name, cntr_value FROM sys.dm_os_performance_counters WHERE counter_name IN ('Buffer cache hit ratio', 'User Connections', 'Transactions' , 'Average Wait Time (ms)', 'Transactions/sec', 'Errors/sec', 'Target Server Memory (KB)', 'Total Server Memory (KB)' )ORDER BY object_name, counter_name Diesen Output wieder periodisch in eine Tabelle schreiben, somit Daten über längere Zeiträume sammeln und mit Reporting Services auswerten. Und so weiter... SQL Server ist eine große Spielwiese ein DBMS mit vielfältigen Möglichkeiten! Beitrag von Toni Pohl

Vista klonen und starten

Zur Neuinstallation von PCs ist es (besonders bei gleichen Maschinen) sehr bequem, einen PC als Muster aufzusetzen und diesen dann zu duplizieren. In kleineren Firmen hat man jedoch oft kein Windows Deployment Services (WDS - übrigens der Nachfolger von RIS) zur Verfügung. Ohne WDS hilft dann ein manuelles Klonen mit einer eigenen Software. Das Image wird als File oder direkt auf eine andere Festplatte, DVD, auf ein anderes Speichermedium oder auch auf einen FTP-Server geschrieben und von dort wiederhergestellt. Dazu gibt es eine Reihe von Tools, beispielsweise auf der kommerziellen Seite Acronis True Image, Symantec Ghost, R-Drive Image, als Freeware Clone Maxx, DiskImage, g4u, Clone Disk Generator und viele weitere. Unter Vista kann es allerdings nach einer Image-Wiederherstellung passieren, dass der Bootloader "bootmgr" seinen Dienst verweigert und Vista nicht starten kann - dann folgt meist eine Meldung, dass winloader.exe nicht geladen werden kann. Genau das ist mir passiert. Zunächst dachte ich, dass die Clone-Software das Image nicht korrekt geschrieben hat, erst danach kam die Erleuchtung. Und diese möchte ich natürlich hier weitergeben. ;-) Wie repariert man in diesem Fall ein nicht startfähiges Vista? Starten von WinPE (Booten von der Vista-DVD) und Reparieren von Vista - das Reparatur-Programm erkennt das Startproblem im Regelfall automatisch und behebt dieses. Oder manuell in der Command-Line: bcdedit /set {bootmgr} device partition=c:bcdedit /set {default} device partition=c:bcdedit /set {default} osdevice partition=c: Eine ausführliche Beschreibung zu bcdedit finden Sie in Boot Configuration Data Editor Frequently Asked Questions. Beim Aufruf des Tools in der Vista GUI müssen Sie die Command-Line als Administrator öffnen!Ganz brauchbar: mit bcdedit /export C:\bcdbackup erstellt man beispielsweise vor solchen Manipulationen ein Backup in das angegebene File. Es existieren auch eine Reihe von freien Tools wie Vista Boot PRO und EasyBCD, welche die Bearbeitung des Bootloaders (anstelle von bcdedit) vereinfachen - siehe auch Beitrag im Vistablog. Und bei dieser Gelegenheit sollen auch die "Legacy" Windows Versionen (XP, 2000, 2003 Server) nicht zu kurz kommen: hier besteht der Bootloader aus ntdetect.com, ntldr und boot.ini. Boot.ini besitzt eine Reihe von Schaltern, zum Beispiel für die Verwendung von mehr als 3GB RAM unter 32bit Betriebssystemen. Diese finden Sie in Boot INI Options Reference aufgelistet und erklärt. Happy starting! Beitrag von Toni Pohl

Was kommt raus, wenn man die Outlook "Inbox" umdreht?

Die Antwort ist verblüffend einfach: "Xobni" (sprich "Zob-ni"). So nennt sich eine amerikanische Mini-Firma aus San Francisco, bestehend aus einer Handvoll Jung-Zwanzigern, die ein cooles PlugIn für Microsoft Outlook entwickelt haben. Was kann das PlugIn? Xobni installiert ein eigenes Panel in Outlook und spart Zeit, indem es emails, Kontakte und Attachments indiziert, in Verbindung setzt und eine schnelle Suche darauf ermöglicht. Was ist das Besondere an Xobni? Nun, zunächst einmal hat sogar Bill Gates das Tool Xobni als "the next generation of social networking" bezeichnet.Warum? Weil Xobni für jede E-Mail, jedes Attachment und jede Person ein Profil erstellt und diese Informationen in Beziehungen umsetzt. Das wiederum ist Basis für die schnelle und umfangreiche Suche in einer aufgeräumten Microsoft-konformen Oberfläche. Das PlugIn läuft unter Windows XP oder Windows Vista mit Office 2003 und Office 2007 und benötigt das Microsoft .NET Framework 2.0 oder höher. Alle System-Voraussetzungen finden sich in den FAQs. Für den persönlichen Gebrauch ist Xobni gratis. Der Download ist hier zu finden. Die Installation erfolgt mit ein paar Klicks in gewohnter Next-Next-Finish-Manier. Beim ersten Starten von Outlook beginnt das erstmalige Indizieren.   Also gleich mal downloaden und ausprobieren...(Dummerweise bin ich gerade über VPN, einem anderen User-Profil und im Nicht-Cached-Modus mit meinem Exchange-Server verbunden - das dauert natürlich... aber nach etwa 15 Minuten waren meine 6000 mails auch über die langsame ADSL-Leitung geladen und indiziert.) Nun, hier mal der Überblick über die Funktionalität: Während Xobni mein Postfach indiziert bin ich gerade begeistert, dass auch Statistiken erzeugt werden: Ich antworte meinem Kontakt "Herbert" durchschnittlich innerhalb von 6 Minuten auf seine E-Mails - das ist meine beste durchschnittliche Antwortzeit - nicht wirklich wichtig, aber interessant! Beim Indizieren sucht das Tool auch nach den Kontaktdaten der E-Mail Absender und Sender, extrahiert gleich deren Kommunikationsdaten und es werden die Statistiken erzeugt. So, fertig indiziert macht die Verwendung schon richtig Spaß.Das Xobni-Panel integriert sich in Outlook.So sieht´s aus. Bemerkenswert: Xobni versucht, Telefonnummern nicht nur von den eigenen Kontakten, sondern auch aus dem E-Mail-Body und E-Mail Signaturen zu lesen und zum Profil hinzuzufügen!Das Quickinfo auf die Telefonnummer zeigt, von wo die Telefonnummer ermittelt wurde. Was mir sehr gut gefällt: es ist sofort in der Statistik ersichtlich, wie viele E-Mails an den Kontakt gesendet (hier: OUT 34) und vom Kontakt empfangen wurden (hier: IN 102) wurden, und auch zu welchen Zeiten mit dem Kontakt kommuniziert wird (hier: zu den üblichen Büro-Arbeitszeiten, mit Spitzen um die Mittagszeit).Nebenbei gibt´s auch noch einen Rang (hier: Rank: #10) - wohl gereiht nach Anzahl der E-Mails. In der Gruppe xy´s  Network sind alle Kontakte der angezeigten Person sichtbar - und klickbar. Hier kann man sich schön "durchklicken" und so von Kontakt zu Kontakt springen wie im Screenshot oben: Gregor - Martin - Franz - Bernd - usw.   Beim Öffnen der "Conversations" - also der E-Mails - gibt´s einen hilfreichen Schieberegler, der die Größe der angezeigten E-Mai-Inhalte steuert. Praktisch!Das Gute dabei: Nachdem Xobni ein eigens Panel in Outlook öffnet, ist die Original-Nachricht in der Outlook-Vorschau immer sichtbar. Somit kann man sich leicht darauf beziehen oder Inhalte kopieren.Der Back-Button zeigt wie gewohnt einfach jeweils die vorige Seite an. Fürs Handling sehr praktisch. Conversations öffnet die markierte E-Mail und zeigt gleich Links zum Ansehen, Antworten etc. Sehr hilfreich: Keine Suche nach Attachments mehr!Im Panel unterhalb der Conversations werden automatisch alle Attachments in einer Liste angezeigt. Die Suche in Xobni funktioniert - wie in Outlook selbst - erwartungsgemäß schnell während der Eingabe. Last but not least: Analytics - Statistik auf Knopfdruck.Hier muss man sich durchklicken - so umfangreich werden die E-Mail und Kontakt-Zahlen auf Tag, Woche, Monat, Jahr sowie die Durchschnittswerte berechnet und dargestellt.Nun gibt´s eine Statistik über meinen E-Mail-Verkehr. Auch ganz hübsch: das eingeklappte Xobni-Panel mit Überblick über das Postfach bzw. den aktuellen Ordner.Ein kleiner Wehrmutstropfen: Das Xobni-Panel selbst kann im geöffneten Zustand nicht mehr verschmälert werden. Ein Widescreen macht (aber generell auch bei Outlook) Sinn ;-) Links: www.xobni.com Auch die New York Times berichtet über Xobni Suche nach Beziehungen im blog von Thomas Lutz Hands-on with Xobni: make Outlook more productive, social softundtippsblog.lutz-nelde.de Fazit: Für intensive Outlook-Benutzer - und wer ist das nicht ;-) - ein interessantes PlugIn, das wert ist, angeschaut zu werden: . Viel Spaß! Beitrag von Toni Pohl

Der ultimative Viren-Scanner

Für Nicht-kommerziellen-Home-Use gibt es eine Reihe von Empfehlungen für den Virenscanner avast. avast des tschechischen Software-Herstellers ALWIL besitzt eine integrierte Anti-Spyware, Anti-Rootkit und eine Selbstschutzfunktion. Das Setup ist sehr einfach und das look & feel ansprechend - sprich einen Tipp wert! avast kann bis zu 60 Tage lang getestet werden, für die private Benutzung zu Hause ist danach nur eine Online-Registrierung nötig. Siehe auch die Artikel in Vistablog und WinFuture. Hier gehts zur Download-Seite von avast Home.

Aus Alt mach Neu in SQL Server Reporting Services

Auch wenn mittlerweile SQL Server 2008 in den Startlöchern steht - die Realität sieht zumeist (viel) älter aus. So hatte ich vor kurzem einen Datenbankumstieg, wo von einem alten Datenbankserver auf einen neuen zu migrieren war. Die Datenbank selbst war zwar SQL Server 2005, das war jedoch ein Upgrade von einem SQL Server 2000. Eigentlich kein Problem, doch passten die (beim 2000er SQL Server noch zusätzlich zu installierenden) Reporting Services nicht zur DB-Version 2005 und waren noch RS 2000 SP2. Die Reporting Services (RS) sind übrigens Bestandteil des SQL Servers und bieten Report-Erstellung, Management und eine skalierbare Bereitstellung. Eine Weboberfläche am Reporting Server dient zur Administration, die Bereitstellung kann per URL oder auch per Webservice erfolgen. Nachdem es bei unserer Umstellung ein paar Stolpersteine gab, hier ein paar Tipps für den Umstieg SQL Server 2000 Reporting Services auf 2005. Die RDL-Syntax: Die Übernahme der Reports in die neuen SQL 2005 RS war problemlos, außer dass ich die Erfahrung gemacht habe, dass RS 2005 Syntax-Fehler nicht verzeiht. So kam bei einem Report ein Fehler in einer "Hidden"-Eigenschaft (das wars auch schon mit dem Hinweis, wo der Fehler zu suchen war). Nach Ansicht der Report-Codeansicht mit Taste F7 und manuellen Durchsehen aller Hidden-Ausdrücke war der Schuldige identifiziert: =iif(trim(Fields!SEM_Text1.Value) <> "", Fields!SEM_Text1.Value, "") Nun Hidden erwartet True oder False - in meinem Fall stand hier aber fälschlicherweise ein Stringausdruck. Klar, so kann das nicht funktionieren. Also Zeile(n) ausbessern und ausprobieren: =iif(trim(Fields!SEM_Text1.Value) <> "", False, True) Jetzt funktioniert der Report auch in 2005. Fein! Noch ein Hinweis zum RDL-Format: Mit 2005 wurde das RDL-Format erweitert und ist nicht mehr abwärtskompatibel. Report-Dateien (.rdl) für RS 2005 können aber nach wie vor mit Visual Studio 2003 erstellt und verändert werden. Reports aus VS 2005 werden jedoch im Format RS 2005 gespeichert. Diese Reports können dann nicht mehr mit VS 2003 bearbeitet werden. RS versteht aber beide Formate. Nach Lösen dieses Problems kam dann eine weitere Hürde. Automatisiertes Erstellen von Reports per Script: In unserem Szenario haben wir einfache Scripts mit dem RS.exe Tool verwendet, um Reports zu bestimmten Zeiten automatisch als PDF-File zu erstellen. Eigentlich eine sehr praktische Sache. Dummerweise klappten die Scripts mit RS 2005 nicht mehr... Der Aufruf von rs.exe per Scheduled Tasks erfolgt so: C:\>rs -i D:\Tasks\testrs.rss -s http://db1/ReportServer$atwork test.rss ist ein VB Script, welches vom .NET VB-Compiler verarbeitet wird: ' File: testrs.rss by atworkDim format as string = "PDF"Dim fileName as String = "D:\Tasks\myreport.pdf"Dim reportPath as String = "/mydir/myreport"Public Sub Main()    ' Prepare Render arguments    Dim historyID as string = Nothing    Dim deviceInfo as string = Nothing    Dim showHide as string = Nothing    Dim results() as Byte    Dim encoding as string    Dim mimeType as string = "pdf"    Dim warnings() AS Warning = Nothing    Dim reportHistoryParameters() As ParameterValue = Nothing    Dim streamIDs() as string = Nothing    rs.Credentials = System.Net.CredentialCache.DefaultCredentials    ' Report with Parameters     Dim parameters(0) As ParameterValue    parameters(0) = New ParameterValue()    parameters(0).Name = "id"    parameters(0).Value = "1234"    results = rs.Render(reportPath, format, Nothing, Nothing, parameters, Nothing, Nothing, encoding, mimeType, reportHistoryParameters, warnings, streamIDs)    ' Open a file stream and write out the report     Dim stream As FileStream = File.OpenWrite(fileName)    stream.Write(results, 0, results.Length)    stream.Close()End Sub Der RS-Aufruf erzeugte den Fehler: Microsoft (R) Visual Basic Compiler version 8.0.50727.832 for Microsoft (R) .NET Framework version 2.0.50727.832 Copyright (c) Microsoft Corporation.  All rights reserved.C:\Documents and Settings\atwork\Local Settings\Temp\1\zv3y0cit.1.vb(60) : errorBC30456: 'Render' is not a member of 'Microsoft.SqlServer.ReportingServices2005.ReportingService2005'.    results = rs.Render(reportPath, format, Nothing, Nothing, parameters, Nothing, Nothing, encoding, mimeType, reportHistoryParameters, warnings, streamIDs)              ~~~~~~~~~ Ok, also die Render-Methode funktioniert angeblich nicht mehr. Also nach der Ursache forschen. Hier hatte ich netterweise Hilfe von Markus Oswald, unserem Microsoft PTC (Partner Technical Consultant), der mir auch den entscheidenden schnellen Workaround lieferte: RS 2005 läuft gegen den neuen 2005er SOAP Endpoint. Zum Glück wird der "alte" RS 2000 Endpoint des Webservices noch weiter unterstützt. Dazu ist nur bei Aufruf des RS-Tools der Schalter "-e mgmt2000" anzuhängen, um den alten Endpoint aufzurufen. Simple as that! C:\>rs -i D:\Tasks\testrs.rss -s http://db1/ReportServer$atwork -e mgmt2000 So klappt der Aufruf des neuen RS-Tools (und der Kunde freut sich darüber, dass es eine schnelle, einfache Lösung gibt und die automatisierten Dokumente wieder verfügbar sind)! Auch wenn das nur einer (von vielen) Lösungswegen ist (kurz dachte ich darüber nach, ein eigenes kleines .net Tool für die Konsumation des RS-Services zu schreiben...), zählte im aktuellen Fall die rasche Lösung und die gewohnte Funktionalität. Es führen viele Wege zu Reporting Services 2005! Beitrag von Toni Pohl

Boot-Medium erstellen, OS reparieren, Tools und mehr

Ist ihr Betriebssystem defekt? Brauchen Sie ein Helferlein? Bootdisk oder Boot-CD nötig? Booten vom USB-Stick? Schauen Sie doch mal auf Bootdisk.com! Achja, das c´t Magazin bietet die aktuelle Version von BART PE zum Download an. Dabei sind in der neuesten Version von Bart PE in der "PE Builder c't-Edition 3.1.10a Spezialversion" auch viele nützliche Tools, von Antivir 2008 bis zum Hardwaretest und zur Surfstation mit Windows PE enthalten (siehe auch c´t Magazin 26/2007, S. 104).

Virtual Server VHD Files vergr&ouml;&szlig;ern

Jeder, der Virtual Server einsetzt kennt wahrscheinlich das Problem: Die Anforderungen wachsen und die virtualisierten Systeme werden irgendwann einmal zu klein. Windows Updates (WU) tragen ihren Teil dazu bei. So ist es auch mir passiert. Vor etwa 2 Jahren habe ich begonnen, viele virtuelle Windows Server-Systeme für verschiedenste Zwecke und Funktionen anzulegen - damals mit einer 16GB großen Systempartition C: (ich war der naiven Meinung, dachte das genügt für alle Zeiten ;-), während die Daten (SQL Server Datenbanken, Webs etc.) immer auf einer eigenen Datenpartition D: liegen, Logs auf E: und so weiter. Nun, die Zeit und WU sind gekommen, wo der Platz auf der Systempartition mit 16GB zu eng geworden ist. In meinem Fall konnte z.B. das Visual Studio 2005 Service Pack 1 für SQL-BI nicht mehr auf dem Rechner installiert werden, weil (hust) nur mehr 200MB frei waren. Klar, zuerst wird einmal das Pagefile mit 2GB auf eine andere Platte verschoben. Dann folgen Systembereinigung, Entfernung alter Patches, Temp-Files und diverse auf C: gelagerte Installs. Hilft ... kurze Zeit. Nach ein paar Wochen stand ich vor demselben Problem. Diesmal hatte ich allerdings keinen Optimierungs-Spielraum mehr - es war einfach zu wenig Platz. Also, wie schafft man neuen Festplatten-Platz? Nun hierzu gibt es eine ganze Reihe von Ansätzen und Lösungsmöglichkeiten. Ich wollte eine praktikable Lösung, die einfach und nach Möglichkeit kostenlos ist. Ich habe sie nun gefunden! Da mir mein Lösungsweg sehr praktikabel erscheint, hier nun die step-by-step Anleitung. Das Resizing Zuerst das Tool VHD Resizer von vmToolkit  auf dem eigenen Rechner oder auf dem Virtual Server installieren (Vielen Dank übrigens an Peter Forster für den Tipp zum Tool!). VHD Resizer ist ein kostenloses Tool und kann VHD-Files vergrößern und verkleinern und den Datenträger-Typ ändern, also ein sehr hilfreiches Werkzeug für virtuelle Welten. Nun wird das Tool gestartet, das VHD-Quellfile ausgewählt, das VHD-Zielfile eingetragen und dynamic oder fixed gewählt und die neue Zielgröße angegeben. Mit Resize wird der Vorgang gestartet.In meinem Beispiel sieht das dann so aus: Im ersten Schritt wird die neue Festplatte mit der angegebenen Größe erzeugt: Danach werden vom Tool die Sektoren in die neue VHD kopiert:  Dieser Vorgang dauert je nach Größe und Performance einige Minuten bis Stunden, auf meinem Server-System mit SATA Festplatten warens für die Verdoppelung der Festplatte von 16GB auf 32GB etwa 20 Minuten. Wenn der Vorgang abgeschlossen wurde, folgt der nächste Schritt. VHD Resizer legt eine größere Festplatte an - belässt die Partitionen allerdings so, wie sie waren! Das Ändern der Partition muss der Administrator dann also selbst erledigen. Das Partitionierungs-Tool Um es gleich vorweg zu nehmen: Es ist natürlich nicht ganz so trivial wie ich dachte... Es gibt ein Commandline-Tool diskpart.exe, welches Partitionen vergrößern und verkleinern kann. diskpart ist Bestandteil von Windows XP und Windows Server 2003 und natürlich auch ein einer erweiterten Form in Windows Vista enthalten. Siehe dazu auch "Verwenden von "Diskpart.exe" zum Erweitern eines Datenträgers unter Windows Server 2003, Windows XP und Windows 2000". Die Systempartition neu partitionieren Diskpart hat allerdings einige Einschränkungen. Das Erweitern funktioniert aber nicht für ... die Systempartition. Wenn es sich nicht um die Systempartition handelt, kann diskpart einfach im Gastsystem selbst aufgerufen werden. (Murphy´s Law hat wieder zugeschlagen, denn in meinem Fall brauche ich das Ganze natürlich genau für die Systempartition.) Mal schnell die grauen Zellen anstrengen - und das Internet durchsuchen. Die Lösung dafür ist genauso einfach wie zunächst unvermutet: Was hindert mich daran, die neue VHD in eine bestehende Windows Maschine hinzuzuhängen und dort diskpart auf dieses Volume auszuführen? Also, gleich ausprobieren: Eine weitere Maschine auf meinem Virtual Server nehmen und dort in deren Configuration die Festplatte (bei mir als Disk 3 hinzufügen): Nun wird die "Hilfsmaschine" gestartet und mit RDP eine Verbindung dazu hergestellt. Schauen wir gleich mal nach, wie das neue Volume aussieht: Manage Computer und Disk Management. Ahja, die logische Festplatte ist nun tatsächlich 32GB groß und die Partition 16GB. Es sind also noch 16GB zu "allozieren". Jetzt wird ein Commandline-Prompt geöffnet und diskpart aufgerufen, danach list volume. Der folgende Screenshot zeigt recht übersichtlich die aktuelle Belegung und den Aufruf: diskpart list volume Nun das zu vergrößernde Volume erkennen und auswählen. In meinem Beispiel ist das Volume 0 (mein Drive E:). select volume 0 Und jetzt kommts: extend Und das ausgewählte Volume wird sofort auf die verfügbare Größe erweitert! Ich war überrascht und sehr angetan, dass dieser Vorgang blitzschnell ausgeführt war. extend besitzt übrigens auch Parameter, u.a. size=n (in MB), um die neue Größe selbst anzugeben. Mit exit aus dem diskpart-Tool aussteigen und die Hilfsmaschine herunterfahren. Danach wird im Virtual Server Webinterface das neue Volume wieder mit Remove und OK von der Hilfsmaschine in deren Configuration entfernt: Zu allerletzt wird noch in meinem RDP zur Virtual Server Maschine das neue VHD von MinniSystem32.vhd auf MinniSystem.vhd umbenannt. Ich empfehle die "alte" VHD aus Sicherheitsgründen immer aufzuheben, daher benenne ich sie ebenfalls auf MinniSystem16.vhd um. So, das wars. Nun die virtuelle Maschine neu starten und ausprobieren! Und es hat bestens funktioniert: Ich habe wieder 16GB freien Speicherplatz auf meiner Systempartition! Jetzt können sie kommen, die neuen (Windows) Updates. ;-) Beitrag von Toni Pohl

Tafiti - Suchergebnisse mit Silverlight

Seit 22. August ist Tafiti online. Tafiti ist eine experimentelle Suchmaschine basierend auf Live Search, welche eine Weboberfläche mit Microsoft Silverlight bietet. "Tafiti" ist Suaheli und steht für "forschen" (der Name klingt ja schon cool und neu). Die Oberfläche wird noch als Beta-Version ausgegeben, funktioniert aber bestens. Für die Anzeige der Website ist das aktuelle Silverlight-PlugIn erforderlich. Wenn dieses noch nicht installiert ist, folgt eine Download-Möglichkeit mit Installation. Die Suchmaschine präsentiert sich mit einer gewohnten Textbox und anklickbaren Kategorien (Books, Feeds, News, Images und Web). Suchergebnisse können mit Drag & Drop einfach im rechten Bereich gemerkt werden. Die Links können selbst mit einem "Label" versehen werden. Ein Klick auf den gemerkten Link zeigt eine Kurzinfo der Website. Dazu gibts noch eine Fülle von weiteren Möglichkeiten (siehe FAQs).   In einem kurzen Walk-Through (in Silverlight-Streaming-Technologie) werden die Möglichkeiten von Tafiti schön gezeigt.Suchen Sie mal in Tafiti nach tafiti und experementieren Sie ein wenig mit den Suchergebnissen und Möglichkeiten! Schon eine Vorläufer-Version Ms. Dewey -  wer´s noch nicht kennt unbedingt mal vorbeischauen :-) - und nun Tafiti zeigen Microsofts Interesse und Forschung in Hinblick auf kommende Suchmaschinen-Technologien und -Visualisierungen. Schauen Sie rein! Beitrag von Toni Pohl

Gadget Competition 2007

Seit heute sind unsere beiden Windows Vista Sidebar Gadgets "Ask LEO" und "Passwort-Generator" auf http://www.gadgetcompetition.at/ online! Kaum gestartet, hat sich "Ask LEO" bereits auf den derzeitigen Rang 2 gehievt! Wir freun uns! Download und Beschreibung direkt hier: Ask LEO: http://www.gadgetcompetition.at/at/de/GadgetDetail.aspx?g=7129366b-bc10-418f-8063-b1dcb6af06a6Pwd-Gen: http://www.gadgetcompetition.at/at/de/GadgetDetail.aspx?g=304351c3-1eff-4f1e-b9cb-0ff58aba94be Wir freun uns aufs Mit-Abstimmen und wenn Sie unsere Gadgets anschaun und einsetzen!

Code selbst signieren - Teil 2 (Das Zertifikat)

In Teil Eins wurde ein Sidebar Gadget als Vorbereitung für das Signieren vom simplen ZIP-Format in eine CAB-Datei gepackt. Teil Zwei beschreibt nun, wie Sie (beliebigen) Programmcode selbst mit einem Zertifikat versehen können. Nun, haben Sie ein eigenes digitales Zertifikat? Wenn ja: fein. Wenn nein: auch gut. Dann erstellen wir uns einfach ein eigenes Zertifikat! Variante 1: Selbsterstelltes Zertifikat erzeugen und verwenden   Wir benötigen das Tool makercert. Das Tools ist Bestandteil von Microsoft Visual Studio 2005 Platform SDK und im Verzeichnis C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin zu finden. Makecert erstellt ein X.509-Zertifikat mit öffentlichem und privatem Schlüssel - allerdings nur zu Testzwecken. Innerhalb Ihrer Firma wäre das aber wahrscheinlich schon ausreichend. Wenn Sie kein Visual Studio 2005 installiert haben, können Sie alternativ das Microsoft® .NET Framework Software Development Kit (SDK) version 1.1 herunterladen und das Tool von hier verwenden (Hinweis: im Internet Explorer Administration Kit Download sind diese Tools _nicht_ mehr vorhanden). cd C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin makecert -sv "C:\Projekte\VistaGadgets\Deploy\pwdgen.pvk" -n "CN=www.atwork.at" C:\Projekte\VistaGadgets\Deploy\pwdgen.cer Passen Sie Pfad und Dateiname sowie den common name an. Damit werden der öffentliche Schlüssel .cer und der private Schlüssel .pvk erzeugt. Diese werden später benötigt. Variante 2: Eigenes öffentliches Zertifikat verwenden Wenn Sie - so wie ich - ein digitales Zertfikat besitzen,  bereiten Sie Ihre Hardware vor (in meinem Fall ein persönliches Zertifikat von a-trust: USB-Kartenleser anschließen, Chipkarte einlegen, a.sign-Client _nicht_ öffnen weil sonst das Kartensystem in Verbindung mit dem folgenden, gleichzeitigen Zugriff verwirrt ist... etc). Weiter mit dem Signieren... Benötigt wird signtool.exe (welches ab 2003 die Vorgängerversion signcode.exe ersetzt), ebenfalls aus dem Microsoft Visual Studio 2005 Platform SDK. cd C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin signtool signwizard Nach Willkommen-Dialog und Auswahl des zu signierenden Programmfiles (in unserem Beispiel: C:\Projekte\VistaGadgets\Deploy\pwdgen.gadget = die erstellte CAB-Datei). Wählen Sie Benutzerdefiniert. Wählen Sie bei eigenem Zertifikat "Aus Speicher wählen" - soferne Sie ihr Zertifikat bereits einmal zum Zertifikatspeicher hinzugefügt haben - was empfehlenswert ist :-) Wenn Sie zuvor mit makecert ein eigenes (Test-)Zertifikat erstellt haben, verwenden Sie "Aus Datei wählen" und geben in den folgenden Schritten die Dateien .cer und .pvk an! Wählen Sie dann "Priv. Schlüssel auf Datenträger". Wählen Sie das Zertifikat. Nun weiter. Bestätigen Sie mit Weiter. Auswahl der Verschlüsselung - wahlweise. Und weiter. Eingabe der eigenen Informationen.   Wenn gewünscht, einen Timestamp zum Zeitpunkt der Signierung hinzufügen, z.B.: http://timestamp.verisign.com/scripts/timstamp.dll Und Fertigstellen. Das war das SignTool. Wenn Sie das Zertifikat auf einen Kartenleser haben, folgt nun die Eingabe der PIN. Und wenn alles ok gegangen ist die Erfolgsmeldung. Das wars! Die signierte Datei pwdgen.gadget sollte nun um ein paar KB größer als zuvor sein. Kontrollieren Sie die Datei-Eigenschaften - hier findet sich nun eine neue Registerkarte "Digitale Signatur". Schaut soweit gut aus. Nun die Kontrolle: Starten der Anwendung - in unserem Fall mit Doppelklick auf pwdgen.gadget: Die zu installierende Software besitzt nun einen Herausgeber und einen Vertrauensgrad - in meinem Fall leider "nur" gelb, da a-trust anscheinend standardmäßig leider nicht von Root weg vertraut wird. Grün wirds, wenn der ganzen Vertrauenskette vertraut wird. Damit ist sichergestellt, dass die Anwendung vom angegebenen Hersteller stammt und unverändert ist. Anwender erhalten somit Sicherheit über die zu installierende Software - zum Beispiel, dass sie von der eigenen IT ausgerollt und geprüft wurde. Es gibt natürlich weitere Methoden, Software selbst zu signieren. Mit SignTool und dem eingebauten Wizard ist dies allerdings recht einfach und zweckmäßig. ...Nie wieder Software von unbekannten Herausgebern installieren! :-) Beitrag von Toni Pohl

Surface - Technische Gedanken zu einem angeblich untechnischen Produkt

Letzten Samstag war ich auf einer Flughafenbesichtigung - dankenswerterweise habe ich bei einem Gewinnspiel etwas gewonnen: ein Vormittag Flughafen Wien mit Besichtigung des Towers, einer Flughafenrundfahrt und Besuch bei der Feuerwehr (und den Feuerwehrmännern). Zum Abschluss waren wir noch im Visit Air Center. Was das alles mit dem Technet Blog zu tun hat? Nun ja, jetzt kommts: das Visitair Center ist neu ausgestattet. Touchscreens, Kopfhörer, Bildschirme und vieles mehr. Unter anderem gibt es da auch einen Präsentationstisch (ok, er ist sehr groß), auf dem man Magnetkarten ablegt und dann an den dafür definierten Punkten weitere Infos erhält - Zum Flughafen, zur Geschichte, etc. etc. Klingelts? Tisch - Informationen - Surface! Nicht alle meiner Kollegen sind der Meinung, dass Surface für Techniker interessant sein könnte. Tja, mag schon sein. Andererseits - welche Anwendungsgebiete hätten wir alle mit Surface? Der Flughafen hat es mir eindrucksvoll gezeigt - die haben ein Surface quasi nachgebaut. Für mich ist es definitiv interessant: durch meinen Focus auf Onlinelösungen und deren einfache Anwendung sind Kiosksysteme und solche Präsentationsflächen immer eine tolle Sache: durch einfache Berührungen werden Befehle ausgeführt, Bilder gezeigt, Daten synchronisiert, Präsentationen gezeigt, Kartenspiele aufgerufen, Tischrechnungen aktiviert, Musikdateien abgerufen, Oberflächen grafisch illustriert, Pläne veranschaulicht, Zeichnungen entworfen, Gesellschaftsspiele abgerufen, Hotels gesucht, Barrierefreiheit erzeugt.... nahezu unendlich, was es da für Möglichkeiten geben wird. Video: Possibilities of Microsoft Surface Ich jedenfalls bin jetzt schon ein Fan davon. ;-) Aber natürlich auch die technischen Details sind zu liefern: Ein 30'' Schrim, eingebaut in einen Tisch. 5 Kameras. Ein Computer. KEIN Touch Screen, sondern ein Touch Interface - die Kameras zeichnen die Bewegungen am Tisch auf. Surface ist für 52 gleichzeitige Berührungen optimiert - klingt witzig - ist es auch, aber trotzdem mal kurz nachrechnen: 4 Personen mit 10 Fingern und 12 Dinge, die am Tisch liegen. Also alle Gadgets, die man so hat, alle vier Personen haben gleichzeitg Kamera, Phone und Zune am Tisch. :-) Klar, Surface hat natürlich Ethernet, Wireless und Bluetooth. Weitere Details finden sich hier. Die Kollegen vom readyblogAustria haben auch schon darüber berichtet und sind offensichtlich auch der Meinung, dass Surface etwas bahnbrechendes werden könnte (seien wir uns doch ehrlich: es ist NICHT bequem, ein 4x5 cm grosses Handydisplay mit dem Finger zu bedienen). Sehen Sie hier:Video: Power of Microsoft Surface Die offizielle Website zum Thema gibts auf Microsoft Surface. Viele nette Links haben die Kollegen aus der Schweiz in Ihrem Surface Artikel gesammelt, besonders erwähnenswert ist das 18 Minutige englische Video auf on10.net, wo Surface Live gezeigt wird. Beitrag von Martina Grom