sonstiges

Flash To Silverlight Converter

http://www.silverx.net/

posted @ Saturday, April 17, 2010 10:56 AM | Feedback (0)

Microsoft Office Outlook kann nicht gestartet werden. Das Outlook-Fenster kann nicht geöffnet werden

Nach der Installation von Office SP2 bekam ich folgende Fehlermeldung: "Microsoft Office Outlook kann nicht gestartet werden. Das Outlook-Fenster kann nicht geöffnet werden" Die Lösung ist Outlook mit "/resetnavpane" zu starten. outlook.exe /resetnavpane http://www.kultiversum.de/shop.html?ht=7059

posted @ Wednesday, December 09, 2009 12:41 PM | Feedback (0)

USB-Funk-Tastatur funktioniert beim booten nicht

Seit Mai habe ich ein Intel DX58SO mit I7. Prinzipiell auch alles prima. Aber wenn ich Windows im abgesicherten Modus starten will (F8 beim booten) oder wenn ich ein Screen kam wie: Probleme beim Starten wollen Sie im abgesicherten M0dus starten, funktionierte die Tastatur einfach nicht. Also zwischen Bios und Win7 oder Vista. Hilfe schaffte eine Einstellung im Bios, die per default disabled ist: USB LEGACY - "Enables to enumerateUSB-Devices to older OS tzhzat are not USB aware" Aha ... wieder was gelertnt.  

posted @ Wednesday, December 09, 2009 8:43 AM | Feedback (0)

HTC HD2 - Remotedesktop auf dem Handy

Das letzte Argument ist gefunden.... brauch ich ja eigentlich nicht aber das Video liefert letzte fadenscheinige Argumente ;-) http://www.youtube.com/watch?v=QFiDZ_wBAtM

posted @ Thursday, November 19, 2009 10:48 PM | Feedback (0)

ROW_NUMBER() in einem Update Statement //MSSQL

Um In einer Tabelle eine durchnummerirte Spalte  einzufügen kann man folgende Anweisung nutzen: Alter Table [Table1] add ID_ int Go WITH TMP1 AS (  SELECT [ID_] ,ROW_NUMBER()over(order by Feld1,Feld2)  as Seq  FROM Table1  ) UPDATE TMP1 SET [ID_] = Seq

posted @ Monday, October 19, 2009 12:11 PM | Feedback (3)

MSSQL - Alle Tabellen in einer Datenbank auflisten

Hier ein SQL-Code, mit dem man alle Tabllen einer DB auflistet und die Anzahl der Felder, der Datensätze  sowie die Größe der Daten auflisten kann: CREATE TABLE #temp (table_name sysname ,row_count INT,reserved_size VARCHAR(50), data_size VARCHAR(50),index_size VARCHAR(50),unused_size VARCHAR(50)) SET NOCOUNT ON INSERT #temp EXEC sp_msforeachtable 'sp_spaceused ''?''' SELECT a.table_name,a.row_count,COUNT(*) AS col_count,a.data_size FROM #temp a INNER JOIN information_schema.columns b ON a.table_name collate database_default= b.table_name collate database_default GROUP BY a.table_name, a.row_count, a.data_size ORDER BY CAST(REPLACE(a.data_size, ' KB', '') AS integer) DESC DROP TABLE #temp

posted @ Wednesday, September 30, 2009 9:44 PM | Feedback (2)

Endlich mal ein wirklich lustiges Video

Die Masse der Videos im Internet bieten eigentlich nichts Neues. Das folgende Video allerdings...[man muß es länger anschauen]   bringt mich immer wieder zum lachen.   Also unbedingt 10 Minuten anschauen: http://aaaah.dreamworld.hu/  

posted @ Tuesday, September 22, 2009 5:48 PM | Feedback (0)

Start SingleInstance of Application /VB-.NET

Nachdem ich bei Klaus gelesen hatte, wie er es gelöst hat, eine App nur einmal zu starten, musste ich nochmal extrem nachdenken, bei welchem Projekt und wie ich das gelöst hatte. Das mir das nicht nochmal passiert, habe ich hier mal den Code verewigt. Ursprünglich von Codeproject in c#.     1 Imports System     2 Imports System.Windows.Forms     3 Imports System.Runtime.InteropServices     4 Imports System.Text     5 Imports System.Diagnostics     6 Imports System.Threading     7 Imports System.Reflection     8 Imports System.IO     9     10 Namespace SingleInstance    11     ''' <summary>    12     ''' Summary description for SingleApp.    13     ''' </summary>    14     Public Class SingleApplication    15     16         Public Sub New()    17         End Sub    18         ''' <summary>    19         ''' Imports    20        ...

posted @ Saturday, August 29, 2009 7:53 AM | Feedback (0)

Generic List(Of ClassName) im Repeater

Manchmal ist es ganz praktisch eine Generic List im Repeater zu nutzen. Mit <%# eval("Parameter")%> kommt man aber nicht weit. Mit <%# Container.DataItem.Value1 %>aber schon: Public Class ClassName      Public Value1 As String      Public Value2 As String End Class Dim Listname As New List(Of ClassName) Dim Item1 As New ClassName Item1.Value1 = "TestValue1" Item1.Value2 = "TestValue2" Listname.Add(Item1) Repeater1.DataSource = Listname Repeater1.DataBind()   <asp:Repeater ID="Repeater1" runat="server">    <ItemTemplate>          <%#Container.DataItem.Value1%>    </ItemTemplate> </asp:Repeater>

posted @ Thursday, August 27, 2009 4:51 PM | Feedback (0)

Das Debugging kann auf dem Webserver nicht gestartet werden. Die Objektkennung gibt kein gültiges Objekt an. (Ausnahme von HRESULT: 0x800710D8)

Ein dummer Fehler beim Konfigurieren führte dazu, daass das debuggen mit IIS7 und VS2008 nicht mehr funktionierte. Sicherlich gibt es noch andere Ursachen für den Fehler... grundsätzlich fehlt die Windowsauthentifizierung. Bei mir half das Folgende:   Windows-Authentifizierung muß aktivert sein!  

posted @ Thursday, August 27, 2009 8:40 AM | Feedback (0)

Autocompletion und Quickedit in cmd.exe

Zwei Keys in Registry vereinfachen die Arbeit in der cmd.exe. CompletionChar: vervollständigt den Dateinamen durch drücken von TAB  (Eingabe "c:\wi + TAB" => "c:\Wndows") QuickEdit: Ermöglicht das markieren eines Textes mit der Maus ohne erst den rechten Mausklick usw. Folgenden Tesxt einfach in eine Textdatei mit der Endung ".reg" speichern und einen Doppelklick darauf machen. ;-------------SCHNIPP--------quickedit.reg------------ Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Console] "QuickEdit"=dword:00000001 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor] "CompletionChar"=dword:00000009 ;-------------SCHNAPP--------------------------------  

posted @ Thursday, August 27, 2009 8:00 AM | Feedback (0)

Ausnahme von HRESULT: 0x80070057 (E_INVALIDARG)

Der Launchtermin rückt näher... höcchte Zeit für Problemme auf dem Entwicklungsserver. Der Speicher scheint einen Fehler zu haben und nötigt Windows 2008 Server zu unvermittelten Abstürzen. Das zu ertragen ist zwar nicht schön, aber da es nur 1 Mal täglich ist, ist die Zeit für Nachforschungen nicht da. Nach so einem Absturz heute, bekam ich untenstehende Fehlermeldung auf der Website. Auch das vielfach empfohlene reparieren des .NET Framework und löschen der Dateien in C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files half leider nichts. ABER: Das Anlegen einer neuen Website im IIS7 mit dem selben Verzeichnis, lies die Website wieder funktionieren. Also vermutlich irgendwas von den Metadaten im IIS verloren gegangen....

posted @ Saturday, August 22, 2009 2:38 PM | Feedback (0)

Fulltext-Search in SQLExpress aktivieren

Wenn man im SQL Management Studio eine SQLExpress Datenbank verwaltet, dann werden die Volltextfeatures und Dialoge nicht angezeigt. Dennoch sind sie aber vollständig vorhanden und nutzbar. --- Erst einen Katalog erstellen CREATE FULLTEXT CATALOG [TestKatalog] WITH ACCENT_SENSITIVITY = OFF --- Die Tabelle dem erstellten Katalog zuordnen und den PrimaryKey --- (hier [PK_CMS_Key]) angeben FULLTEXT INDEX ON [dbo].[CMS_Tabellenname] KEY INDEX [PK_CMS_Key] ON ([TestKatalog]) WITH (CHANGE_TRACKING AUTO) Go --- die Spalten hinzufgen, die im Index enthalten sein sollen ALTER FULLTEXT INDEX ON [dbo].[CMS_Tabellenname]  ADD ([Body],[Headline] LANGUAGE [German]) Go --- und das Ganze aktivieren ALTER FULLTEXT INDEX ON [dbo].[CMS_Tabellenname] ENABLE --- Warten bis der Index erstellt ist (der Taskmanager geht --- dabei...

posted @ Sunday, August 16, 2009 10:42 AM | Feedback (0)

Platzhalter im FCKEditor einbauen und mit Linq bestimmte Tags in HTML finden, bearbeiten oder ersetzen.

In einem ASP.NET CMS habe ich eine Möglichkeit gesucht in einem FCKEditor diverse Platzhalter in Artikel-Tex einzusetzen, die später dann durch aktuelle Inhalte und Werbung ersetzt werden könne.   Am schönsten wäre es natürlich, wenn es auch im Editor bereits angezeigt wird um zu sehen, wie der Text um den potentiellen Inhalt läuft.   Die API des FCKEditors möchte ich nicht anfassen also muß iich mit vorhandenen Mitteln zu Rande kommen.   Trick 1. Um die Größe und Position im Content zu definieren, nehme ich ein image in vergleichbarer Größe (wie das Bild rechts).   Trick 2. Ich definiere mir Styles für den FCKEditor und generiere diese mit einem...

posted @ Wednesday, August 12, 2009 11:28 PM | Feedback (0)

xmlns Namespace in Linq und Datenimport nach SQLServer //mit VB.NET

Eigentlich hatte Martin Hey genau im richtigen Moment seinen Post zum Thema veröffentlicht.   Aber dann fiel mir ein, dass wenn es einen Vorteil von VB.NET gegenüber c# gibt, dann ja wohl im XML-Bereich.   Ein Imports am Kopf der Seite reicht um den Namespace Global einzufügen. Das Ganze gepaart mit einem InsertAllOnSubmit habe ich in ein paar wenigen Zeilen alle Categories aus meinem XML-Dokument in die Datenbank importiert.         1 Imports <xmlns="http://www.ticketonline.de/ticketonlineevents/1.0">     2 Imports <xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">     3      4 Partial Class LoadTicketOnline     5     Inherits System.Web.UI.Page     6      7     Protected Sub Page_Load(ByVal sender As Object, _     8                             ByVal e As System.EventArgs) Handles Me.Load     9     10         Dim...

posted @ Thursday, July 30, 2009 5:46 PM | Feedback (0)

Vague but exiting // von der Geburtsstunde des WWW

"Eine Person muss in der Lage sein Informationen zu finden, von denen sie nicht wußte, dass sie sie gesucht hat." Schrieb Tim Berners-Lee im März 1989  in einem Antrag am europäischen Kernforschungszetrum CERN, in dem er eine Software schreiben wollte, die es den Wissenschaftlern einfacher macht Informationen auszutauschen. Sein Chef kommentierte diesen Antrag mit: "Vague but exiting". Er verwirklichte dieses Projekt und entwickelte dazu den ersten Browser WorldWideWeb und den ersten Webserver unter dem Betriebssystem NeXTStep. Dies sollte den Ursprung des World Wide Webs darstellen.  Zusammengefasst mit den ersten Gehversuchen des ARPA-Net in einem 30-minütigem "neues spezial"

posted @ Tuesday, July 28, 2009 8:43 AM | Feedback (0)

Also sowas .... Datum in Javascript

Mit was für Fehlersuche man doch die Zeit verbringen kann. Ich validiere per Javascript ein Geburtsdatum. Ganz einfach: Ein neues Datum erstellen und mit dem weiterarbeiten.  var dummyDate = new Date(iYear, iMonth, iDay); Ganz so einfach ist es nicht. Der Monat ist Zero-Based also 9 für Oktober usw. Also sowas ;-)

posted @ Friday, July 24, 2009 12:28 PM | Feedback (2)

Farbpaletten

Als Memo für mich: Hannes schreibt kurz über "Gutes Design beginnt bei stimmigen Farben" und wie man Farbpaltten in Expression Design importieren kann. Keine neuen Erkentnisse, aber den Link http://de-de.colourlovers.com/ fand ich hilfreich.    

posted @ Friday, July 24, 2009 10:30 AM | Feedback (0)

Single-Sign-On mit ASP.NET

In seinem Artikel Building a Single Sign On Provider Using ASP.NET and WCF zeigt Mark J. Miller in 4 Teilen, wie man mit Hilfe von JASONP  ein Single Sign on implementieren kann.  

posted @ Thursday, July 09, 2009 8:52 AM | Feedback (0)

Javascript Multiple-Upload

http://www.ajaxupdates.com/file-uploads-using-ajax/

posted @ Wednesday, July 08, 2009 7:46 AM

14 Javascript Resources zum Generieren von Charts

OOYES.NET hat 14 Javasceript -Resources zusammengefasst, mit den man Charts in Javascript generieren kann. Von umsonst bis kostenpflichtig. Ein kurzer Blick lohnt auf jeden Fall OOES.NET beschreibt diese noch kurz mit kleinen Screenshots: http://ooyes.net/resources/14-javascript-resources-and-plugins-for-creating-a-stylish-chart   Die folgenden Links sind nur zu meiner Dokumentation:   Creating accessible charts using canvas and jQuery Emprise JavaScript Charts Flot ...

posted @ Wednesday, July 08, 2009 7:31 AM | Feedback (0)

DeepZoom mit jQuery und ASP.NET

Für eine Image-Gallery in in einem Community-Projekt, habe ich mir eine Lösung mit jQuery erstellt, um Bilder online zu bearbeiten. Also hauptsächlich  Resize und Cropping. Dabei enstand als kleines Nebenprodukt eine Lösung, bei der man einen Deepzoom auf große Bitmaps machen kann. Eine einfache Version davon habe ich hier mal online gestellt: DeepZoom mit jQuery Download als ASP.NET - Website Das verwendete Bild auf dem Server ist 7MB groß und...

posted @ Monday, July 06, 2009 3:22 PM | Feedback (3)

Crop und Resize Image mit ASP.NET - zum letzten Mal!

Ich mache das ja schon lange.... und ich habe auch schon einiges mit Bildern zu tun gehabt. Aber jedes mal wieder fummele ich mir aus alten Codes oder dem Internet die Funktionen für Größenveränderungen heraus. Meist sind diese (vor allem bei gegoogelten Beispielen) gespickt mit Spezialfunktionalität. Diesemal habe ich mir die Mühe gemacht - ein für alle Mal - drei Funktionen zu generieren, die sowohl Cropping, Resizing oder aber beides gleichzeitig in bestmöglicher Qualität zu liefern. Und da ich meißt nur ein Stream oder Byte() benötige, bekomme ich as Rückgabewert auch ein MemoryStream. Diesen kann ich in die Datenbank schieben oder per BinaryWrite direkt ausgeben.      1 Imports...

posted @ Sunday, July 05, 2009 10:45 AM | Feedback (2)

Kraake ade - scheiden tut weh

NAch dem ich nun seit ca. einer Woch ausschließlich www.Bing.com als Suchmaschine nutze, habe ich die Google-Toolbar deinstalliert und die Live-Toolbar installiert. Tschüss liebe Kraake, die letzten (fast 10) Jahre waren schön mit Dir....  

posted @ Friday, July 03, 2009 2:41 PM | Feedback (2)

Mittels XElement den HTMLCode validieren

Beim Entwickeln einer Webplattform macht man ja gerne den einen oderanderen HTML Fehler. Auch wenn mir das immer seltener passiert, ist es dennoch schön wenn man gleich Probleme mittels Holzhammermethode mitgeteilt bekommt. Bekanntlich kann man in Page Render den HTML-Code abgreifen. Wenn man daraus ein XElement generieren kann, ist der Code zumindest schon mal valiedes XML. Wenn dies nicht funktioniert lasse ich mir die Fehlemeldung ausgeben und kann de Fhler gleich korrigieren. Kleiner Nebeneffekt: Der HTML-Code ist absolut perfekt eingerückt und die Struktur klar ersichtlich, auch wenn man viele Usercontrols zusammensteckt. Ob man dies in einer Live-Website einsetzt ist sicherlich fraglich.     1      2 Partial Class _Default     3     Inherits System.Web.UI.Page     4      5      6      7     Protected Overrides...

posted @ Friday, July 03, 2009 12:26 PM | Feedback (0)

Windows Server Reboot auf Nachts verlegen

Nach Windows Updates will der Server ja öfters mal sein verdientes Reboot haben. Um dies nicht tagsüber zu machen, kann man auf Windows 2008 in der Auufgabenplanung und auf Win2003 in "Geplante Tasks" einen Task anlegen, der nur eine Mal in der kommenden Nacht ausgeführt wird. Einaml angelegt, kann er bei Bedarf wieder aktiviert werden. Folgender Befehl führt dann den Reboot aus:         %windir%\system32\shutdown.exe -r -f -t30 -d p:2:4 Aber Achtung alle offenen Dateien werden einfach geschlossen. Angemeldete Nutzer werden zwar informiert aber nach 30 Sekunden (-t30) einfach abgemeldet.    

posted @ Saturday, June 27, 2009 9:57 AM | Feedback (0)

Microsoft Webplatform Installer 2.0 RC1 veröffentlicht.

Am 24.6 wurde RC1 des Webplatform Installer 2.0 veröffentlicht. Der Webplatform Installer ist ein Plugin für den IIS7, mit dem man diverse IIS-Features aber auch frei verfügbare Software wie z.B. SQLExpress,Webdeveloper, DotNetNuke, Blogengine und sogar auch Applikationen die auf PHP und MySql basieren wie Wordpress und vieles mehr auf Knopfdruck installieren. Das schöne daran ist, dass man sich nicht mehr um die Downloadlocation oder die Requirements kümmern muß, da dies in den sogenannten "Web Apps" hinterlegt ist. Wähle ich also als extrembeispiel Wordpress aus, so wird neben WordPress auch PHP und MySQL herntergeladen und installiert . Eine Liste der z.Zt verfügbaren WebAps gibt es hier: Microsoft...

posted @ Saturday, June 27, 2009 9:12 AM | Feedback (0)

Quicklaunch unter Windows 7

Unter Vista kann man ja mit  z.B. "Windowstaste + 3" das dritte Programm in der Quicklaunch-Leiste starten. Bei mir liegt dort auf allen meine Rechnern Visual Studio bzw. Visual Webdeveloper, auf 2 Management-Studio und auf der 1 der IE Unter Windows 7 funktioniert das auch, aber wenn man mehrere Instanzen von Visual Studio offen hat, dann funktioniert das wie ein "Alt + Tab" aber eben nur zwischen den Instanzen von Visual Studio. Will man eine weitere Instanz von Visula Stuudio starten, so muß man "Windows + Shift + 3" drücken. Besonders das "Alt-Tab" zwischen den Instanzen vom IE oder VStudio... sehr geil! Weiter Tastaturkürzel: http://blogs.ppedv.de/hannesp/archive/Windows-7-Tastatur-Kuumlrzel http://blog.andreloker.de/post/2009/06/24/Be-more-efficient-Today-Windows-Explorer.aspx  

posted @ Saturday, June 27, 2009 8:27 AM | Feedback (0)

jQuery vs. Ajax Toolkit

Wer heutzutage Webentwicklung macht , kommt um Ajax und größeren Javascript-Steuerungen beim Client nicht mehr herum. Da gibt es vieles umsonst, wie das MS-Ajax und Ajax-Toolkit , jQuery, devexpress usw. aber auch teure umfangreiche Lösungen wie die von Componentart, Telerik usw. Im Grundsatz haben alle ihre Vor- und Nachteile. Was alle gemeinsam haben, ist das man bei keiner dieser Lösungen einfach starten kann bevor man nicht die 2-Tage Fummelarbeit hinter sich gebracht hat. Aber schließlich bekommt man ja auch umfangreiche Libraries die meißt auch plattform- und browserübergreifend Funktionalitäten bieten. Aber mit was startet man nun? Die Tendenz in den letzten Jahren geht klar zu jQuery. Was bei...

posted @ Friday, June 26, 2009 8:14 AM | Feedback (4)

Session verwalten bzw. Wildwuchs in Bezeichnungen eindämmen

In meinen Webprojeten benutze ich natürlich auch immer wieder Session-Variablen, die dann wiederum an anderer Stelle abgerufen werden. Abgesehen von möglichen Schreibfehlern, bin ich auch imer wieder auf der Suche nach der richtigen Bezeichnung. Die wichtigsten lagere ich jetzt in eine kleine Klasse aus:       1 Public Class Properties     2     Public Enum VariableName     3         UserID = 1     4         UserName = 2     5         'usw.     6     End Enum     7      8     Public Shared Property Session(ByVal name As VariableName) As Object     9         Get    10             Return HttpContext.Current.Session _    11                     ("adjustment.properties.session." & name.ToString)    12         End Get    13         Set(ByVal value As Object)    14             HttpContext.Current.Session _    15                     ("adjustment.properties.session." &...

posted @ Thursday, June 25, 2009 10:09 AM | Feedback (0)

VPN nach Energiesparmodus oder Ruhezustand automatisch wieder herstellen

Ich habe heute wieder meine Recherche aufgenommen um ein VPN automatisch zu verbinden, nachdem der Computer im Ruhezustand oder im Energiesparmodus war. (Inspiriert durch einen Blogeintrag von Bernd Hengelein.) Wenn eine z.B. WLan-Verbindung abbricht (und damit auch das VPN getrennt wird) oder verbunden wird  tritt dieses Ereignis ein. System.Net.NetworkInformation.NetworkChange.NetworkAvailabilityChanged  Mit folgender Routine kann man dann die Connection wieder herstellen  3     Sub startVPN(ByVal ConnectionName as String)   '  4         Process.Start("RasPhone.exe", "-d " & ConnectionName)  5     End Sub Eine sehr einfache Umsetzung einer Consolen-Anwendung (z.B. im Autostart) könnte dann folgendermaßen aussehen: (Zumindest im Debugmodus hat dies problemlos funktioniert)     1 Imports System.Net.NetworkInformation     2      3 Module Module1     4     Sub Main()     5      6         AddHandler NetworkChange.NetworkAvailabilityChanged, _     7                 AddressOf NetworkChange_NetworkAvailabilityChanged     8      9        ...

posted @ Thursday, June 25, 2009 8:50 AM | Feedback (1)

Maximale Farbtiefe für Rempote Desktop auf dem Server konfigurieren //Windows Server 2008

Bei einer Neuiiinstallation eines Windows Web Server 2008, auf den ich nur mit Remote Desktop zugreife hatte ich nur die Möglichkeit 16Bit Farbtiefe einzustellen. Die Bandbreite erlaubt mir aber mehr. Wie so vieles, kann man das auch auf dem Server konfigurieren nähmlich mit der Terminaldienstekonfiguration (Terminal Services Configuration tool). Kommadozeile aufmachen und "tsconfig.msc" ausführen Rechten Mausklick an die entsprtechende Verbindung und "Eigenschaften" auswählen  Unter Clienteinstellungen kann man dann die Farbtiefe änder.    

posted @ Tuesday, June 23, 2009 11:26 AM | Feedback (0)

Dotnetage - jQuery ganz einfach in Web Controls

Beim Stöbern auf CodePlex bin ich über das opensource Projekt "DotNetAge jQuery" gestoßen und bin mehr als angetan. DotNetAge ermöglicht es jQuery Features in Webcontrols zu nutzen (beispielsweise kann jedes Control mit Resize versehen werden) und bietet aber auch eine ganze Reihe von Webcontrols die Features wie Accordion, Dragpanels usw. direkt bieten. Für jQuery-Plugins gibt  es ebenfalls eine Möglichkeit, diese einzubinden. Sehr gut gelöst und auch nach Stunden des herrumspielens bin ich immernoch angetan von der Lösung. Schöner Mix zwischen voller Funktionalität von jQuery und der Einfachkeit für tägliche Standardanwendungen. [Die Bilder sind von der Website DotNetAge]      

posted @ Sunday, June 14, 2009 6:54 PM | Feedback (0)

DNS Servere Rolle existiert nicht auf Windows Web Server 2008 //BIND auf Windows 2008 installieren

BIND auf Windows 2008 installieren Mit Schrecken musste ich feststellen, dass in der Windows Web Server 2008 Editon kein DNS-Server mehr dabei ist. Auch wenn man darüber streiten kann, ob der Nameserver auf einem Webserver etwas zu suchen hat, so ist die Praxis dann doch meist anders. Auf der Suche nach einer Alternative stößt man zwangsläufig auf die Opensource-Lösung BIND, denn Unix-Klassiker. Die Installation ist einfach... allerdings sind ein paar kleine Kniffe von Nöten: 1. Neuen Benutzer anlegen 2. Dem Nutzer die Rechte zur Anmeldung als Dienst erteilen     Start=>Verwaltung=Lokale Sicherheitsrichtlinien (Als Administrator ausführen)                dann: Lokale Sicherheitsrichtlinien                                => Zuweisen von Benutzerrechten                                => Anmelden als Dienst                                      Hier den Benutzer...

posted @ Tuesday, June 02, 2009 8:58 AM | Feedback (1)

Windows Server 2008 Editionen im Vergleich

  Compare Server Roles ...

posted @ Tuesday, June 02, 2009 7:58 AM | Feedback (0)

How to use HierarchyID in LinqToSQL or Entity-Framework // MSSQL Server 2008

Unfortunately, there is still no way to use the new hierarchyID-dataTpe in LinqToSQL or Entity Framework.  (Microsoft 12.5.2009) Because the data type is very practically, fast and over and over again hierarchy appears within comments, menu structures etc., I want to use them nevertheless. For this I provide first of all a table which has a ContentID (Integer value wich refers to my content),  the HierarchyID of course and assoziationTypeID, because this table is for different Content (Comments has ID=1, Menu ID=2 etc.). CREATE TABLE [dbo].[t_C_ContentHierarchy](     [d_C_ContentHierarchyID] [int] IDENTITY(1,1) NOT NULL,     [d_ContentID] [int] NOT NULL,     [d_hierarchyID] [hierarchyid] NOT NULL,     [d_I_assoziationTypeID] [int] NOT NULL,  CONSTRAINT [PK_t_C_UserContentHirarchy] PRIMARY...

posted @ Sunday, May 31, 2009 11:00 AM | Feedback (6)

HierarchyID in LinqToSQL oder Entity-Framework nutzen // MSSQL Server 2008

Leider gibt es noch keinen Weg, in LinqToSQL oder Entity Framework den neuen Datentyp HierarchyID in MSSQL-Server 2008 zu nutzen. (Microsoft am 12.5.2009) Da der Datentyp sehr praktisch, schnell und immer wieder Hierarchien bei Kommentaren, Menüstrukturen usw. auftreten, will ich ihn natürlich trotzdem nutzen. Hierfür erstelle ich erst einmal eine Tabelle, die eine ContentID enthät, welche die Integer-ID meines Contents enthält, die HierarchyID natürlich und eine assoziationTypeID, da ich diese Tabelle für unterschiedlichen Content nutzen möchte. CREATE TABLE [dbo].[t_C_ContentHierarchy](     [d_C_ContentHierarchyID] [int] IDENTITY(1,1) NOT NULL,     [d_ContentID] [int] NOT NULL,     [d_hierarchyID] [hierarchyid] NOT NULL,     [d_I_assoziationTypeID] [int] NOT NULL,  CONSTRAINT [PK_t_C_UserContentHirarchy] PRIMARY KEY CLUSTERED (     [d_C_ContentHierarchyID] ASC )WITH (PAD_INDEX  = OFF,...

posted @ Sunday, May 31, 2009 10:37 AM | Feedback (0)

Endlich eine Library von Microsoft zum zippen von Dateien und Ordnern in .NET

Auf Codeplex ist eine neue .NET Library veröffentlicht worden, mit der man ohne 3rd-Party tools zippen kann. Das ganze ist umsonst und kann bei Codeplex heruntergeladen werden: DotNetZip  33   Console.WriteLine("Extracting file {0} to {1}", ZipToUnpack, TargetDir)  34         Using zip1 As ZipFile = ZipFile.Read(ZipToUnpack)  35             AddHandler zip1.ExtractProgress, AddressOf MyExtractProgress  36             Dim e As ZipEntry  37             ' here, we extract every entry, but we could extract       38             ' based on entry name, size, date, etc.      39             For Each e In zip1   40                 e.Extract(TargetDir, _                                        ExtractExistingFileAction.OverwriteSilently)   41             Next   42         End Using Und ein Beispiel um dateien zu...

posted @ Thursday, May 28, 2009 3:06 PM | Feedback (1)

Windows Update aktualisiert nicht // Code 80244019, Code 80070057

Auf einem neu installierten Server mit Standardinstallation Windows 2008 (von Strato) wollte das Windowsupdate nicht aktualisieren. Folgende Codes wurden als Fehlerursache ausgespuckt:    Code 80244019    Code 80070057 Vermutlich lag es an der Microsoft Genuine Advantage Prüfung:  http://www.microsoft.com/genuine/diag/ Das ausführen und ein Neustart haben zumindest geholfen das Problem zu lösen.

posted @ Friday, May 22, 2009 11:24 AM | Feedback (0)

Kapitalismus ist doch was schönes....

posted @ Wednesday, May 13, 2009 9:27 AM | Feedback (0)

Escape-Zeichen aus Zope-Export - unescape \xed \xee \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 python

In einem Datenexport aus Zope fand ich diverse Escape-Zeichen für alle Sonderzeichen. Offensichtlich HEX-Codiert mt einem \x vorab. Also für ö ein \xf6 usw. Die Suche nach Listen für ein globales Replace gab ich recht schnell auf und generierte meine eigene Liste:  ...

posted @ Monday, May 11, 2009 11:14 AM | Feedback (0)

Was ist eigentlich nVarChar(MAX)

In SQL Server 2000 darf eine Rownicht mehr als 8000 Bytes groß sein. Das bedeutete auch, dass ein Feld max. 8KB gross sein darf, sofern es das einzige Feld ist, dass abgefragt wurde. Eine varchar Spalte darf max 8KB und eine nVarcharSpalte max 4KB groß sein(2 Byte pro Unicode-Zeichen) sein. Um mehr Daten in einer einzigen Spalte zu speichern gibt bzw. gab es NTEXT, oder Bild-Daten-Typen (BLOBs). Nachteil, dass deiese Felder nicht wie üblich in Abfragen verwendet werden können. Um dieses Problem zu lösen, wurden VARCHAR (MAX), NVarChar (MAX), und VARBINARY (MAX) Datentypen in SQL Server 2005 eingeführt.  Diese Daten können über die gleiche Menge von Daten...

posted @ Thursday, April 30, 2009 1:33 PM | Feedback (0)

Back to the roots oder warum Ajax nicht immer gut ist.

Immer mehr Webanwendungen verwenden Ajax-Toolkits um bestimmte Funktionalitäten auf den Seits zur Verfügung zu stellen. Abgesehen von der Suchmaschienenproblematik vergessen irgendwie alle, wofür es ursprünglich da war. Es geht darum, dem User das Interface zu vereinfachen und oft auch Vorgänge dadurch zu beschleunigen, dass kein Reload der Seite gemacht werden muss. Um das gleich mal klar zu stellen, ich setze das selbst gerne ein und auch immer öfter. Was ich langsam nicht verstehe, ist das die Entwickler der Toolkits Pakete schnüren, bei denen mehrere hundert KB Javascript geladen werden müssen um einfache Effekte zu erzielen, die ein paar Zeilen eigenes Javascript auch realisieren...

posted @ Wednesday, April 29, 2009 7:13 PM | Feedback (0)

Textmode Multiline und Maxlength per Javascript festlegen:

Wenn man eine ASP.NET Textbox im Textmode="Multiline" erstellt, funktioniert dummerweise Maxlength nicht, da die HTML-Textarea das nicht unterstützt. Hier ist die passende Javascript-Function und der VB-Code dazu.  Um das Feature später einfac h ändern zu können, suche ich erst alle Textboxen innerhalb eines Panels und aktiviere entsprechende onChange und onKeyDown Events.       1     Sub setMaxlength()     2         For Each ctl As Control In Panel1.Controls     3             If ctl.GetType Is GetType(TextBox) Then     4                 Dim myTextbox As TextBox = ctl     5                 If myTextbox.TextMode = TextBoxMode.MultiLine _     6                     AndAlso myTextbox.MaxLength > 0 Then     7      8                     myTextbox.Attributes.Add("onChange", _     9                    ...

posted @ Wednesday, April 29, 2009 2:13 PM | Feedback (0)

Mit Linq Strings über mehrere Zeilen einfach im Quellcode hinterlegen.

Jeder kennt das Problem... Man hat einen formatierten String und möchte diesen im Code verwenden. zwei Möglichkeiten.... entweder man stückelt Ihn über mehrere Zeilen zusammen oder man macht eine gaaaaanz lange Zeile daraus. Beides ist unbefriedigend und mühsam. Gestern habe ich nun das XElement dafür entdeckt :     1         Dim SQL As New XElement(<root>     2      3                         SELECT  CMS_Artikel.Dachzeile,     4                                 CMS_Artikel.DateFrom,     5                                 CMS_Artikel.CreateDate,     6                                 User_User.RealName,     7                                 CMS_Artikel.ArtikelID     8                         FROM    CMS_Artikel...

posted @ Wednesday, April 29, 2009 2:01 PM | Feedback (3)

Cookies und Encoding zum hundertsten Mal => String to Base64 und Base64 to String

Und mal wieder habe ich Probleme auf einem Server Umlaute in Cookies zu speichern bzw. zu lesen. Die Tipps sind vielfältig und variiren von Server.URLDecode bis hin zu Globalization Eiträgen in der Web.Config.   Diesmla half gar nichts... Deswegen werden die CookieInformationen ab sofort Base64-codiert. Damit hat sich das Thema - hoffentlich String to Base64   1     Dim base64String As String = _                  Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes("äüö$$"))     2      3   Dim c As New HttpCookie("testCookie")     4         c("value") = base64String     5         Response.Cookies.Add(c)     6      7 Base64 to String     9   Dim base64FromCookie As String = _                                 Request.Cookies("testCookie").Values("value")    10     11   Dim standardString As String = _            Text.Encoding.UTF8.GetString(Convert.FromBase64String(base64FromCookie))    12     13         Response.Write(standardString)

posted @ Monday, April 27, 2009 5:53 PM | Feedback (0)

XPath in Linq verwenden

Wer bereits mit XML gearbeitet hat und XPath-erfahren ist möchte dies evtl. auch mit xLinq nutzen. Hierzu benötigt man den Namespace System.XML.XPath der dann diverse Extension-Methods bereitstellt:     3 Imports System.Xml.XPath [...]    147 Dim list As IEnumerable(Of XElement) _               = xdoc.XPathSelectElements("//Node1/Node2/Node3[Attribut1='Value1']")

posted @ Thursday, April 23, 2009 3:31 PM | Feedback (0)

VPN-Verbindung mit .NET starten

[edit 25.6.2009] Hier ist eine Lösung um ein VPN verbinden nach unterbrochener Netzwerkverbindung (mit .NET) oder um eine VPN verbinden nach Energiesparmodus(mit .NET) [/edit 25.6.2009] Um eine VPN-Verbindung mit .NET starten genügt ein Einzeiler. Vorraussetzung ist, dass das Kennwort gespeichert ist und die Abfrage deaktiviert. Wobei myVPN_Connection der Name der Verbindung unter Windows ist:         1 Module Module1     2      3     Sub Main()     4         Process.Start("RasPhone.exe", "-d myVPN_Connection")     5     End Sub     6      7 End Module

posted @ Wednesday, April 22, 2009 6:32 PM | Feedback (0)

LinqToSQL- Ergebnis oder Linq-Object nach XML konvertieren

In einem Bestellsystem für Stromverträge kann ein User aus einer Ergebnisliste eine Bestellung auslösen. Die Linq-Abfrage hierzu ist mehr als komplex und die Werte in den verbundenen Tabellen werden in verschachtelten Repeatern auf der Website dargestellt. Da wöchentlich die Datenbank ausgetauscht wird, möchte ich gerne im System die Daten aus dem Ergebnis hinterlegen. Dummerweise ist ein LinqToSQL-Ergebnis nicht serialisierbar. Im Netz  habe ich auch nichts gefunden und mir meine eigene rekursive Methode gebastelt: Sicherlich noch verbesserungsfähig... aber für das aktuelle Problem austreichend.    01     Imports System.Reflection    11     12     Public Function getXElementFromLinqObject(ByRef RootElement As XElement, _    13                                          ByVal DataObject As Object) As...

posted @ Wednesday, April 22, 2009 5:30 PM | Feedback (2)

Page_Load automatisch bei neuen Webforms einfügen

Fast jedes Mal, wenn ich ein neues Webform erstelle, füge ich ein Page_Load-Handler ein. Im Verzeichnis C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\ItemTemplatesCache\Web\VisualBasic\1033  liegen die Vorlagen für dei neuen Objekte. Einfach in die Codebeside Datei den nötigen Eintrag machen und ab sofort ist der Handler vorhanden.  

posted @ Monday, April 20, 2009 1:45 PM | Feedback (0)

PDF-Preview in Outlook

Jedes mal auf's neue suche ich den Link für die PDF-PReview in Outlook: http://timheuer.com/blog/archive/2008/05/09/foxit-pdf-preview-handler.aspx Das war er ;-)  

posted @ Monday, April 20, 2009 1:11 PM | Feedback (0)

HTTP Wildcardmapping im IIS 7

Um Wildcardmapping im IIS7 zu ermöglichen, muss ein Sperre aufgehoben werden. Folgenden Befehl in einer Console ausführen und die Sache ist erledigt: C:\Windows\System32\inetsrv\appcmd.exe unlock config /section:system.webserver/handlers Und dann muß noch die <modules> Section angepasst werden bzw. ein Attribut hinzugefügt werden: <modules runAllManagedModulesForAllRequests="true" >

posted @ Friday, April 03, 2009 6:51 PM | Feedback (2)

Websites in ASP.NET - Fallstudien in ASP.NET

Hier ein paar Websites, die in ASP.NET programmiert sind: www.myspace.de www.monster.com www.match.com http://www.handelsblatt.com http://www.faz.net http://www.immowelt.de www.bmwgroup.com www.lego.com  www.dell.com www.xerox.com www.ebay.com   http://www.buy.com  Weitere Fallstudien auf Microsoft.com http://www.microsoft.com/casestudies/search.aspx?Keywords=ASP.NET http://msdn.microsoft.com/en-us/asp.net/aa336563.aspx       

posted @ Friday, March 27, 2009 5:29 PM | Feedback (0)

Im SqlMembershipProvider den Applictionname auf den Hostname setzen

Ich habe eine Anwendung, die die entsprechende Contentdatenbanken jeweils per Hostname auswählt. Da ich prinzipiell den SqlMembershipProvider nutze, möchte ich wenn möglich, den Applicationname des Mebershipproviders entsprechend anpassen. Hier ist der entsprechende Providder dazu: Imports System Imports System.Web Imports System.Data Imports System.Configuration Imports System.Collections Imports System.Web.Security Imports System.Collections.Specialized Imports System.Data.SqlClient Class myMembershipProvider     Inherits System.Web.Security.SqlMembershipProvider     Public Overrides Property ApplicationName() As String         Get             Return HttpContext.Current.Request.Url.Host         End Get         Set(ByVal value As String)             MyBase.ApplicationName = HttpContext.Current.Request.Url.Host         End Set     End Property   End Class

posted @ Friday, March 27, 2009 2:09 PM | Feedback (0)

Mein Lieblingsladen in New York

In meinem Lieblingsladen in New York, kann man traumhaft schöne Hussen kaufen um hässliche Stühle aufzumöblen. Hier das Schaufenster:

posted @ Wednesday, March 25, 2009 11:35 AM | Feedback (0)

Die Wirtschaftskrise ...

Die Wirtschaftskrise hat bislang rund 40 Billionen Euro vernichtet (heute morgen im ZDF-Morgenmagazin). Mit diesem Geld hätte man auch sämtliche Staatsverschuldung der ganzen Welt tilgen können und es wären immernoch über 10 Billionen Euro übrig. Soviel zu der Dimension des Ganzen.

posted @ Wednesday, March 11, 2009 4:37 PM | Feedback (3)

Mailenable 3.61 verfügbar (Standard und Professional)

Mailenable 3.61 steht auf der Website von www.maileable.com zum download verfügbar. Für diie "Umsonst Version" (Standard) war zumindesst auf der offiziellen Downloadpage nur eine version 1.97 verfügbar. Dies hat sich mit der aktuellen Version endlich geändert. Für mich als Professional-User st sicherlcih die wichtigste Neuerung die Integration eines CalDav Servers auf dem ich nun endlich auch meinen Outlook-Kalender online verwalten kann.

posted @ Monday, March 02, 2009 10:16 AM | Feedback (0)

Website "am Leben" erhalten

Wenn man mit seiner .NET Website bei einem Hoster ist, wird in der Regel nach 20 bis 60 Minuten die Website "heruntzergefahren", was leider beim Neustart je nach Umfang des Projektes zu längeren Wartezeiten führt. Eine Lösung wäre, die Website von einem anederen Server aus anzupingen um regelmäßige Requests durchzuführen. Aber wenn man mit seinem Web beim Hoster ist, hat man normalerweise diese Möglichkeiten nicht zur Verfügung. Die Lösung: Ein Timer in der global.asax fragt regelmäßig die  eigene Website ab. Funktioniert zwar nicht direkt nach einem Reboot des Servers oder restart des IIS aber wenn dann eine Abfrage genmacht wurde, hätlt es immerhin bis...

posted @ Tuesday, February 17, 2009 10:34 AM | Feedback (4)

Websites im Iphone auf dei richtige Größe skalieren

Wer eine Mobile-Anwendung erstellt und eine relativ geringe Seitenbreiite wählt, wird feststellen, dass z.B. das IPhone diese nur winzig klein darstellt. Abhilfe schaft ein Metatag: <meta name="viewport" content="user-scalable=no, width=device-width"> Wobei auch eine feste Breite angegeben werden kann:  <meta name="viewport" content="user-scalable=no, width=220">  Danke an Alex, für den Hinweise auf den Artikel bei Heise Developer!

posted @ Wednesday, January 21, 2009 12:27 PM | Feedback (0)

LinkFromDomain findet eigene Links

Beim schmökern in Thomas' Blog fand ich die Möglichkeit alle "Fremd-Links"auf meiner eigenen Domain wiederzufinden:  LinkFromDomain:cluss.de Auch wenn es nicht ganz neu ist... nettes Feature.

posted @ Saturday, January 10, 2009 3:29 PM | Feedback (1)

Mein Development Server von VS 2008 wollte nicht mehr...

Mein Development Server von VS 2008 wollte nicht mehr... und gab mir die unten aufgelistete Fehlermeldung zurück. Grund war ein installiertes Update zu .NET Framework 3.5 SP1. Nach Deinstallation des Patch KB958483 ging alles wieder. Methode nicht gefunden: Void System.ServiceModel.Diagnostics.EventLogger.UnsafeLogEvent(System.Diagnostics.TraceEventType, System.ServiceModel.Diagnostics.EventLogCategory, System.ServiceModel.Diagnostics.EventLogEventId, Boolean, System.String[]). Beschreibung: Unbehandelte Ausnahme beim Ausführen der aktuellen Webanforderung. Überprüfen Sie die Stapelüberwachung, um weitere Informationen über diesen Fehler anzuzeigen und festzustellen, wo der Fehler im Code verursacht wurde. Ausnahmedetails: System.MissingMethodException: Methode nicht gefunden: Void System.ServiceModel.Diagnostics.EventLogger.UnsafeLogEvent(System.Diagnostics.TraceEventType, System.ServiceModel.Diagnostics.EventLogCategory, System.ServiceModel.Diagnostics.EventLogEventId, Boolean, System.String[]). Quellfehler: ...

posted @ Saturday, January 10, 2009 3:06 PM | Feedback (1)

Mesh Beta - was ist das eigentlich?

Seit Wochen suche ich schon die Zeit, mich mit Mesh  zu beschäftigen. Heute habe ich sie mitr einfach mal genommen und bin überrascht, wie einfach und intuitiv das funbktioniert. Der Grundgedanke: Wer schon länger ein Laptop hat oder mit Kollegen Dateien über das Internet austascht, kennt das Problem der aktuellen Version  bzw. das gerade die Datei die man gerade benutzt schon länger nicht mehr aktualisiert wurde und man zuhause am Heimarbeitsplatz oder mit dem Laptop im Zug sitzt und gerade kein Zugriff auf den entsprechenden Rechner hat. Schön wäre also, wenn Dateien, die lokal geändert werden möglichst zeitnah auf allen anderne Systemen ebenfalls aktualisiert werden. Das bietet...

posted @ Tuesday, January 06, 2009 6:35 PM | Feedback (0)

Visual Studio AddIn des Tages

Beim stöbern auf Codeplex bin ich über ein addin für Visual Studio gestolpert, das die Navigation durch den Sourcecode vereinfacht und übersichtlicher macht. Für c# und VB:Source Code Outliner Power Toy Für c# gibt es außerdem noch Koda, das etwas mehr Funktionalitäten hat.  

posted @ Tuesday, December 09, 2008 2:35 PM | Feedback (1)

Control ermitteln welches den Postback ausgelöst hat

Mit der folgenden Funktion kann man ermitteln, welches Control einen Postback ausgelöst hat.    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load                Response.Write(getPostBackControl.ID)     End Sub  Private Function getPostBackControl() As Control          Dim ctlM As Control = Nothing         Dim ctl_Name As String = Page.Request.Params("__EVENTTARGET")         If ctl_Name IsNot Nothing AndAlso ctl_Name <> "" Then             ctlM = Page.FindControl(ctl_Name)         Else             Dim cx As Control = Nothing             Dim ctrlStr As String = ""             For Each ctl As String In Page.Request.Form                 If ctl.EndsWith(".x") OrElse ctl.EndsWith(".y") Then                     ctrlStr = ctl.Substring(0, ctl.Length - 2)                     cx = Page.FindControl(ctrlStr)                 Else                     cx = Page.FindControl(ctl)                 End If                 If TypeOf cx Is System.Web.UI.WebControls.Button _                        ...

posted @ Tuesday, December 09, 2008 2:00 PM | Feedback (0)

Elfyourself

Nachdem im letzten Jahr der Server von Elfyourself hoffnungslos unter dem Ansturm zusammengebrochen ist, kann man in diesem Jahr alternativ das video downloaden .... allerdings für 4.99$. Einbetten funktioniert weiterhin umsonst. Mal sehen ob der Server dieses Jahr am 24.12 der Server noch irgend etwas wiedergibt ;-) Aber die Idee und Umsetzung von elfyourself ist mehr als charmant und gelungen! Send your own ElfYourself eCards

posted @ Saturday, December 06, 2008 10:20 AM | Feedback (1)

LINQ-to-SQL versus ADO.NET Entity Framework

Wer sich sich die beiden Frameworks genauer anschaut stellt sich recht schnell die Frage, wieso braucht man beides... Auf der Technical Summit in Berlin mit einem gleichnamigen Vortrag bekam ich die Antwort dazu: Die beiden Entwicklerteams haben nichts von einander gewußt und es wurde doppelt entwickelt. (siehe auch) Im Detail wurden zwar auch die Vor- und Nachteile der einzelnen Umsetzungen im Detail erklärt, um abschließend kund zu tun, dass Linq-To-Sql zwar weiter "weiter unterstützt" wird, aber das Team bereits nicht mehr existiert. Eine weitere Entwicklung findet sozusagen nicht mehr statt. Das Entity Framework dagegen hat zwar im Moment noch nicht ganz so viele Features, was sich allerdings...

posted @ Wednesday, December 03, 2008 8:56 PM | Feedback (2)

The Simpsons mocks (m)Apple

posted @ Monday, December 01, 2008 11:22 AM | Feedback (2)

HTML-Code verkleinern

Im DSL-Zeitalter scheint es nicht mehr so wichtig zu sein ob die Seite nun 50KB oder 100KB HTML-code hat. Aber auch mit DSL ist ein Unterschied von 30KB deutlich zu spüren. Mit ASP.NET verwendet man in der Regel viele Controls. Das führt meißt dazu, dass viele leere Zeilen und unötige leerzeichen den Code vergrößern. Mit folgendem Code können diese entfernt werden: Protected Overrides Sub Render(ByVal output As HtmlTextWriter)          Dim sb As StringBuilder = New StringBuilder          Dim sw As StringWriter = New StringWriter(sb)          Dim htw As HtmlTextWriter = New HtmlTextWriter(sw)          MyBase.Render(htw)          Dim PageHTML As String = sb.ToString()          PageHTML = PageHTML.Replace(vbTab, " ")          While PageHTML.Contains(" ")                  ...

posted @ Tuesday, September 30, 2008 10:39 AM | Feedback (0)

Web.Config mit XLinq editieren

Imports <xmlns:co="http://schemas.microsoft.com/.NetConfiguration/v2.0"> Class editWebConfig        Public shared Sub updateWebConfig()               Dim PathToWebConfig As String = "d:\www\inetPub\web.config"               Dim webConfig As XDocument = XDocument.Load(PathToWebConfig)                              Dim xNode = From p1 In webConfig.<co:configuration>.<co:connectionStrings>.<co:add> _                                    Where p1.@name = "connectionString_Name_In_Web_Config" _                                    Select p1                              xNode.@connectionString = "Data Source=.\SQLExpress;Initial Catalog=myDatabase;Integrated Security=True"               webConfig.Save(PathToWebConfig)        End Sub End Class  

posted @ Tuesday, September 23, 2008 1:11 PM | Feedback (0)

SQLScript aus Textdatei ausführen

So ein trivialer Vorgang... und trotzdem noch nie gemacht. Wie startet man ein Script in ASP.NET, das man zuvor im management Studio generiert hat. Imports Microsoft.SqlServer.Management.Smo Imports Microsoft.SqlServer.Management.Sdk.Sfc Imports Microsoft.SqlServer.Management.Common [....]  Dim SQL = File.ReadAllText("D:\_stromtip2005\SQLDATA\CreateDependencies.sql") Dim sqlConnectionString As String = "Data Source=.\SQLExpress;Initial Catalog=CMS_2008_ST_DATA_32;Integrated Security=True" Dim conn As New SqlConnection(sqlConnectionString) Dim server As New Server(New ServerConnection(conn)) server.ConnectionContext.ExecuteNonQuery(SQL)

posted @ Sunday, September 21, 2008 3:54 PM | Feedback (0)

Alle Events aus der global.asax.

In Der Global.asax gibt es mehr Events als nur die 4, die standardmäßig in der global.asax aufgeführt sind. Hier ist eine Liste aller mir bekannten Events: Application_Start: Tritt ein, wenn die Application gestartet wird Application_Init: Tritt ein nach _Start Application_Disposed: Tritt ein bevor die Instanz zerstört wird Application_Error: Tritt ein wenn unbehandelte Fehler auftreten. z.B. für Cusom-Errorpage Redirect. Application_End: Tritt ein, wenn die Application beendet wird Application_BeginRequest: Tritt ein, bei jedem Request den ein User macht. Das Session-Objekt ist hier noch nicht verfügbar. Application_EndRequest: Dannach ist der Request vollständig beendet. Application_PreRequestHandlerExecute: Unmittelbar dannach wird die Page oder der Webservice durch den ASP.Net handler  initialisiert. Das Sessionobjekt ist hier bereits verfügbar Application_PostRequestHandlerExecute: Nach dem ausführen des...

posted @ Tuesday, September 09, 2008 6:58 PM | Feedback (0)

Loginprobelme in der Managementconsole nach Löschen der Standarddatenbank.

Wenn die Standarddatenbank gelöscht oder entfernt wird, kann man sich in der Managementconsole auch nicht mehr einloggen bzw. man hat erhebliche Probleme. Beim anmelden geht man auf Optionen und auf das Register Verbindungseigenschaften und gibt dann erst mal master bei "Verbindung mit einer Datenbank herrestellen" an. Trotzdem hat man bei den meisten Aktionen nach wie vor Probleme. Um diese zu beheben muß  man eine neue Standarddatenbank angeben: ALTER [SQL-Server] LOGIN [serverName\UserName] with DEFAULT_DATABASE = MASTER

posted @ Monday, August 25, 2008 10:12 AM | Feedback (0)

Prüfen ob eine Emailadresse existiert

Im Zeitalter der Spamflut, geben auch die User Ihre Emailadresse nicht mehr an, wenn sie danach gefragt werden. Mit der unten aufgelisteten Class EmailCheck kann man genau das prüfen. Im Prinzip, ermittelt die Klasse den MX-Record der UserDomain und macht ein Helo am Mailserver und teilt dem Mailserver mit, dass wir eine Email für eine bestimmte Emailadresse haben. Existiert die Adresse nicht oder ist die Mailbox voll usw., so lehnt der Mailserver an dieser Stelle die Annahme ab und wir wissen, dass mit der Adresse etwas faul ist. Lehnt der Mailserver an dieser Stelle die Annahme NICHT ab, so ist die Adresse...

posted @ Saturday, July 12, 2008 6:40 PM | Feedback (0)

Die Welt ist eine Google

zufällig habe ich heute im ZDF ein "neues spezial" über Google gesehen. Ich muss ganz ehrlich sagen, dass ich zwischen Begeisterung und Angst schwanke. Am Ende hat sich jedoch ein Gefühl von "wehret den Anfängen" festgesetzt. Sehr interessant und empfehlenswert (30min) http://www.zdf.de/ZDFmediathek/content/534908  Ehrlich gesagt wird es höchste Zeit für eine Gegenbewegung!

posted @ Thursday, July 10, 2008 1:00 AM | Feedback (1)

Google Info zu Duplicate Content

Nicht neu aber immer wieder stellt sich die Frage: Was ist für Google doppelter Content: http://googlewebmastercentral-de.blogspot.com/2007/03/duplicate-content-best-practice-bei_08.html  

posted @ Wednesday, June 25, 2008 5:37 PM | Feedback (0)

Skydrive Beta ist jetzt in Deutschland verfügbar

Skydrive bietet den Usern 5GB kostenlosen Onlinespeicher. neben öffentlichchen Ordnern gibt es auch die Möglichkeit Freigaben für bestimmte Personen einzurichten. Vorraussetzung ist ein Account auf Live.Com weiteres unter Skydrive.live.com

posted @ Sunday, June 15, 2008 1:18 PM | Feedback (0)

Mein erster Triathlon

„Chris! Axel hier. Fred und ich machen in einem Monat an einem Teamtriathlon mit und brauchen einen dritten Mann“   „Ach ja?“   „Ja!“   „ Du weißt aber schon, dass ich erst vor neun Monaten angefangen habe zu joggen und auch nur bis zum nächsten Dönerladen mit dem Rad gefahren bin!“   „Aber Du hast doch auch den Halbmarathon mitgemacht“   „Stimmt.“   „Du schaffst das schon – dabei sein ist alles und du musst nicht schwimmen. Beim Volks-Teamtriathlon schwimmen nur Fred und ich jeweils 500m danach wird 22km mit dem Rad gefahren und dann noch 5km laufen. Alles...

posted @ Tuesday, June 03, 2008 2:29 PM | Feedback (1)

Internet-TV kostenlos

Unter http://www.mogulus.com/ kann jeder sein eigenes Internet-TV Programm produzieren und solange man Werbeeinblendungen alle 10 Min akzeptiert ist das ganze sogar umsonst. Während der Übertragung kann sogar gechattet werden. Mittels eines Javascript-Tags kann man das ganze dann in das eigene Blog eingebunden werden.  

posted @ Tuesday, May 06, 2008 3:54 PM | Feedback (0)

CCC publiziert die Fingerabdrücke von Wolfgang Schäuble

:-) weiteres bei Heise

posted @ Saturday, March 29, 2008 7:35 PM | Feedback (0)

Frohe Ostern

posted @ Thursday, March 20, 2008 7:26 PM | Feedback (2)

Microsoft Sync Framework

Mit Visual Studio 2008 wurden auch die Assemblies des ADO.NET Sync Services installiert. Mit Hilfe dieser API lassen sich (z.B. mobile) Anwendungen die nicht ständig mit der Datenbank verbunden sind einfach mit dem Server syncronisieren. Mit Hilfe eines Assistenten kann man innerhalb weniger Minuten alle notwendigen Routinen und Trigger zur Aktualisierung der ClientDatenbank und der ServerDatenbank erstellen. Auf Channel9 ist ein 18 Minuten Video von Daniel Moth für den Schnelleinstig mit dem Microsoft Sync Framework erschienen. Den Assistenten kann man aufrufen in dem man ein neues  Element "Local Database Cache"  hinzufügt. Im Code wird dann nur noch ein "syncAgent.Synchronize();" benötigt um die Synchronisierung durchzuführen.  

posted @ Friday, February 22, 2008 4:10 PM | Feedback (0)

SkyDrive jetzt mit 5 GB Speicher - aber nicht in Deutschland

Microsoft hat den kostenlosen Speicher von SkyDrive von 1GB auf 5GB hochgesetzt und offensichtlich die Beta-Phase beendet. Warum der Dienst zwar in 38 Ländern aber nicht in Deutschland verfügbar ist, ist leider nicht zu ergründen. Zitat: "SkyDrive is also available now in 38 countries/regions. In addition to Great Britain, India, and the U.S., we’re live in Argentina, Australia, Austria, Belgium, Bolivia, Brazil, Canada, Chile, Colombia, Denmark, the Dominican Republic, Ecuador, El Salvador, Finland, France, Guatemala, Honduras, Italy, Japan, Mexico, the Netherlands, New Zealand, Nicaragua, Norway, Panama, Paraguay, Peru, Puerto Rico, Portugal, South Korea, Spain, Sweden, Switzerland, Taiwan, and Turkey."

posted @ Friday, February 22, 2008 1:13 PM | Feedback (0)

SQL Server 2008 February CTP und Visual Studio 2008 Support

Gestern hat MS eine neue SQLServer 2008 CTP veröffentlicht: Download the SQL Server 2008 February CTP as a .iso file or as an executable. Download the SQL Server 2008 Books On Line. Download the SQL Server 2008 Feature Pack CTP. Download the tools support for Visual Studio: Visual Studio 2008 Support for SQL Server 2008 Visual Studio 2005 Support for SQL Server 2008 ...

posted @ Wednesday, February 20, 2008 11:24 AM | Feedback (0)

Enum-Werte auslesen

Mit Hilfe von System Reflection kann man Enumwerte auslesen und entsprechend weiter verarbeiten. using System.Reflection; private enum Fruits {       Orange = 1,       Apple = 2,       Pear=3 } static void Main() {       Type dataType = Enum.GetUnderlyingType(typeof(Fruits));              foreach (FieldInfo field in typeof(Fruits).GetFields(                            BindingFlags.Static | BindingFlags.GetField | BindingFlags.Public))       {             object value = field.GetValue(null);             Console.WriteLine("{0}={1}", field.Name, Convert.ChangeType(value, dataType));        }      Console.ReadLine(); } EDIT: Oder eben einfach mit  Enum.GetValues(Fruits); Enum.GetNames(Fruits); (Danke Dani für den Kommentar!)  

posted @ Thursday, February 14, 2008 10:44 AM | Feedback (2)

Passwords unter Windows auslesen

Bei NirSoft.net ist eine recht umfangreiche Tool-Sammlung zum auslesen von Passwords unter Windows zu finden. IE PassView liefert einem z.B. eine Liste von URLs mit im InternetExplorer gespeicherten Kennwörtern. Damit ist das größte Problem von Neuinstallationen erst  mal obsolet.  

posted @ Friday, February 08, 2008 10:07 PM | Feedback (0)

CMD.EXE als Administrator ausführen

Ich habe mich unter Vista inzwischen daran gewöhnt, die Windowstaste einmal zu drücken und den Namen de Programmes zu tippen wenn ich ein es starten will. also: <WINDOWSTASTE> + cmd + <Enter>  => Console wird geöffnet. Wenn man das Programm als Administrator ausführen möchte, dann geht dies mit Ctrl + Shift + <Enter> also: <WINDOWSTASTE> + cmd + [<Ctrl> + <Shift> + <Enter>]  => Console wird als Administrator geöffnet.  

posted @ Wednesday, February 06, 2008 10:16 AM | Feedback (0)

Video des Tages

Was für eine schöne Idee und Umsetzung.. da kann ich Thomas nur zustimmen.!

posted @ Friday, February 01, 2008 5:43 PM | Feedback (0)

Mit VLC Videos konvertieren

VLC kann ja bekanntlich so zimlich jedes Videoformat lesen. Auch wenn es nahe liegt wares mir neu, dass man damit auch Videos konvertieren kann. In meinem Fall wollte ich einen AVI in ein MPEG konvertieren, welches meine Dreambox lesen kann. => VLC öffnen     => Datei öffnen (nicht !! einfaches Datei öffnen)         => Datei auswählen und unten auf Einstellungen            => Output in Datei und Dateinamen angeben            => Verkapselungsmethode MPEG TS            => Videocodec mp2v 1024kbit/s            => Audiocodec mp2a 192kbit/s Das ganze geht auch per Commandline und zwar: vlc.exe input_file.avi :sout=#transcode{vcodec=mp2v,vb=1024,scale=1,acodec=mp2a,ab=192,channels=2}:duplicate{dst=std{access=file,mux=ts,dst="c:\outputfile.ts"}} wobei der der gelb markierte Bereich im Dialog bei Ziel (Screenshot) herauskopiert werden kann.

posted @ Friday, February 01, 2008 2:33 PM | Feedback (6)

Microsoft Web Deployment Tool - Tech Preview 1

  im IIS-Downloadcenter hat Microsoft eine Preview des Web Deployment Tools veröffentlicht. Die Featureliste klingt sehr vielversprechend: Syncronisation zweier Webserver (IIS6 und IIS7) Migration von IIS6 auf IIS7 Analyse der installierten Features auf IIS6 Troubleshooting und Validierungsfeatures (für Syncronisation und Migration) Weiteres im IIS-Downloadcenter und im IIS-Forum.

posted @ Friday, January 25, 2008 1:51 PM | Feedback (0)

SQLDatasource und Anzahl der SQL-Server abfragen

Thomas Beckert hatte heute auf glengamoi.com das Problem, dass er bereits im Page_Load(ASP.NET) ein DataBind eines Repeaters durchführen musste. Die Frage kam auf, ob dies dazu führt, dass die SQL-Abfrage evtl. mehrmals zum MSSQL geschickt wird. Das wollte ich nun genau wissen. In den Leistungstools des SQL-Servers gibt es den SQL Server Profiler mit dessen Hilfe man alle Aktivitäten und Abfragen auf dem SQLServer überwachen kann. Die Antwort ist: Beim einem Standard Aufruf macht dies keinen Unterschied. D.h. auch wenn im Page_Load ein Gridview1.DataBind() aufgerufen wird, wird nur eine Abfrage zum SQL-Server gesendet. Die Abfrage wird unmittelbar vor dem...

posted @ Monday, January 14, 2008 7:32 PM | Feedback (0)

FON - Hotspot Initiative aus Madrid

Fon ist kurz zusammengefasst eine Initiative aus Madrid um weltweit  flächendeckend Hotspots bereitzustellen und DSL-Anschlüsse mit anderen zu sharen. Durchaus interessant für alle die viel mit Notebook unterwegs sind und zuhause einen DSL-Anschluss haben. Wer selbst keinen Hotspot bereitstellt ist mit 3€ 24 Stunden dabei. Wer selbst einen Hotspot bereit stellt kann auch weltweit alle anderen Spots umsonst nutzen. Benötigt wird nur ein 5€ teurer Router, der allerdings keinerlei Verschlüsselung wie WPA, WEP und VPN erlaubt. Sehr überrascht war ich, wie viele Hotspots bereits in meiner Umgebung verfügbar sind. http://maps.fon.com/ Eine anonyme Nutzung ist zwar nicht vorgesehen aber wer illegales plant, kann einen 15-minütigen Testzugang...

posted @ Sunday, January 06, 2008 6:55 PM | Feedback (0)

How to use Google to find files

jimmyrcom zeigt in einem Video wie man Google nutzen kann um MP3-Files zu finden. Der Trick ist ganz einfach: Auflistungen von Verzeichnisen enthalten im Title normalerweise den Begriff "index of". Mit dem Keyword "intitle" kann man die Suche auf den Titel begrenzen. intitle:index of   findet also alle Auflistungen von Verzeichnisen. Weiter gehts mit der Beschränkung auf einen bestimmten Filetype (mp3|mp4|avi) bestimmte endungen ausschließen: -html -htm -php -asp -cf -jsp und dann noch den Suchbegriff: Hänschen.Klein und so sieht das Ergebnis aus: intitle:"index.of" (mp3|mp4|avi) Hänschen.klein -html -htm -php -asp -cf -jsp  

posted @ Thursday, January 03, 2008 4:21 PM | Feedback (0)

Scrooge yourself

Unter www.elfyourself.com und www.scroogeyourself.com kann man noch bis zum 1.2.2008 sein eigenes Elfentänzchen produzieren. http://www.scroogeyourself.com/?id=1718686379 Nettes Gimmick zur Weihnachtszeit um Grüße per Email zu verschicken.  

posted @ Sunday, December 23, 2007 3:44 PM | Feedback (0)

Emergency Recovery

Ehrlich gesagt habe ich ich ein Emergency Recovery bisher nur selten benötigt. Und wenn hat es eigentlich nie funktioniert. Um so weniger bin ich als alter Schwabe bereit Geld dafür auszugeben. Im Chip-Adventskalender gibt es heute AusLogic Emergency Recovery kostenlos zum download.

posted @ Friday, December 21, 2007 10:56 AM | Feedback (0)

Neue Version von VLC (0.8.6d )

Schon am 29.11.07 wurde eine neue Subversion von VLC veröffenticht. In erster Linie handelt es sich um Bug fixes aber auch um eine Security Update im ActiveX Plugin.

posted @ Friday, December 07, 2007 11:02 AM | Feedback (0)

Wie Licht den Winter-Blues vertreibt

Torsten Weber lässt sich heute in einem lesenswerten Artikel über Saisonal Abhängige Depression, Müdigkeit, Kalorien und wann wird endlich wieder Sommer oder aber: So ist der Jet-Lag passé aus. Seinen Recherchen nach ist Lichtmangel der Hauptfaktor für das jährliche Übel. Wobei Licht erst ab einer Stärke von 10.000 Lux relevant ist. "Doch was sind 10.000 Lux? Ist das viel, mittel, wenig? Bei einem wolkenlosen Tag im Sommer kann in unseren Breiten bis zu 100.000 Lux gemessen werden. Ein trüber Sommertag hat dagegen schon nur noch 20.000 Lux. Dabei müsste nur noch besser in Anführungszeichen stehen. Denn verglichen mit einem sonnigen Tag im Winter...

posted @ Friday, December 07, 2007 8:52 AM | Feedback (0)