Max Blog Blog

Exchange Konto für Mail Postfach einrichten

Immer mehr Möglichkeiten gibt es, um sein Postfach abzurufen. Neben den klassischen Desktop-Clients tummeln sich inzwischen zahlreiche Smartphones, die das auch können. Für den reinen Mailabruf reicht im Grunde auch ein IMAP Konto. Kniffliger wird es, wenn man Kontakte über mehrere Postfächer hin nutzen möchte, Direct Push Mails empfangen will (Blackberry) oder den Abwesenheitsassistenen pflegen möchte. In diesem Fall empfiehlt sich ein Exchange Konto.

Da ein eigener Exchange Server für nur ein oder zwei Konten aber „overdressed“ wäre, lohnt ein Blick auf die Hosted Exchange oder auch Managed Exchange Angebote im Web. In meinem Fall habe ich zu einem bestehenden Webhosting Paket von all-inkl.com ein Managed Exchange Konto von domainfactory.de hinzugebucht. Es bietet nicht nur alles was ich brauche, sondern bietet die Nutzung auch mit externen Domains! Perfekt, es kann losgehen.
(mehr …)

Visual Studio verliert IntelliSense Unterstützung für Wix

Es kommt vor, daß man in Visual Studio plötzlich nicht mehr die gewohnte IntelliSense Unterstützung hat – urplötzlich, ohne daß man etwas geändert hat.

Woran das liegt, kann ich nicht sagen, in meinem Fall hat das jedoch geholfen, das Problem zu beseitigen:

  1. Reg-Eintrag hinzufügen:
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\7.1\Editors\{C76D83F8-A489-11D0-8195-00A0C91BBEE3}\Extensions]
    „wxs“=dword:00000028
  2. Prüfen, ob die Xsd Schema Dateien wix.xsd und wixloc.xsd aus dem Wix\doc Verzeichnis im Visual Studio Verzeichnis liegen
    • VS 2003: C:\Program Files\Microsoft Visual Studio .NET 2003\Common7\Packages\schemas\xml\
    • VS 2005: C:\Program Files\Microsoft Visual Studio 8\Xml\Schemas
    • VS 2008: C:\Program Files\Microsoft Visual Studio 9.0\Xml\Schemas

Quelle:
http://weblogs.asp.net/sweinstein/archive/2004/08.aspx

http://weblogs.asp.net/sweinstein/archive/2004/08.aspxE

Drucker einrichten: Windows 7 x64 für Windows XP

Letztes Wochenende war es wieder mal soweit. Eine Neuinstallation des Betriebssystems stand an. Und damit der Umstieg ins neue Zeitalter der 64-bit Betriebssysteme. Diesen Versuch wagte ich mit Vista vor gut einem Jahr schon ein Mal und bin wegen schlechter Treiberunterstützung und Kompatibilitätsproblemen einiger Programme/Spiele letztlich wieder zu XP zurückgekehrt. Doch diesmal soll alles besser werden …

So war das OS auch rasch installiert. De facto ist die eigentliche Betriebssysteminstallation ja auch nicht das zeitaufwändige, wie sicher jeder zu bestätigen weiß. Updates, Office, Virenscanner, weitere Programminstallationen und -einrichtungen sind das eigentlich zeitfressende.

Und natürlich unerwartete Probleme.

Bei mir war es diesmal das Spiel „Wie mache ich den unter Windows 7 x64 installierten Drucker im Netzwerk für andere Windows Clients sichtbar?“ Denn, als ich am Windows XP Laptop versuchte, den freigegebenen Drucker auf Windows 7 einzurichten scheiterte ich erstmal, da schon der PC nicht gefunden wurde.

(mehr …)

MapCache.GetRasterDataAsync vertauscht Skalierungsfaktoren [9.2]

Seit Tagen bin ich schon auf der Suche nach dem Fehler, endlich hab ich ihn gefunden.
Im Esri ArcGIS mobile ADF 9.2 gibt es die Methode GetRasterDataAsync(Envelope,Double,Double,Boolean,Object,CacheLayer[]) in der Klasse MapCache.

Laut Beschreibung möchte diese zwei Skalierungsparameter haben, zuerst den MinScale und dann den MaxScale. Genauer wird hier (leider) nicht darauf eingegangen, was diese machen und was gültige Parameter sind.

Fakt ist zunächst Mal – das muß man aber auch erstmal wissen – daß hier beispielsweise ein Wert von 5000.0 einem Faktor von 1:5000 entspricht.

Soweit noch nicht ungewöhnlich. Doch nun wirds interessant.
Ich begann also mit einem Download wie folgt:

[csharp]//Download Raster
Request[] lRasterRequests =
lMapCache.GetRasterDataAsync(lMapCache.GetFullExtent().GetEnvelope(), 10000, 100000, false, null);
[/csharp]

Download startet, ich bekomm eine Datei mit mehreren 100 MB. Diese kann ich laden und einbinden, ich sehe eine Rasterkarte.
Leider aber nur unterhalb des Skalierungsfaktors! Zoom ich weiter raus als auf 1:10000 (plus ein paar Zerquetschte), dann verschwindet die Rasterkarte und ich hab nur noch einen weißen Hintergrund.

Also hab ich in verzweifelter Suche einfach mal die beiden Paramter MinScale und MaxScale vertauscht:

[csharp]//Download Raster
Request[] lRasterRequests =
lMapCache.GetRasterDataAsync(lMapCache.GetFullExtent().GetEnvelope(), 100000, 10000, false, null);
[/csharp]

Und Überraschung: Die MapCache Datei wird gleich mal 1/3 größer und enthält nun die verschiedenen Pyramidenstufen.

Fazit:
Hätte man bei ESRI Inc. ein paar Beispiele angegeben, wie man sich die Implementierung vorstellt, so hätte man sich hier sehr viel Zeit sparen können!

Dateien mehrfach installieren

Möchte man die gleiche Datei mehrfach installieren, sprich in verschiedene Verzeichnisse, so stößt man schnell auf Fehlermeldungen verschiedenster Art.
Eine mögliche Umsetzung ist folgende:

[xml]
<Wix xmlns=’http://schemas.microsoft.com/wix/2006/wi‘>
<Product>

<Directory Id=’TARGETDIR‘ Name=’SourceDir‘>
<Directory Id=’ProgramFilesFolder‘>
<Directory Id=’COMPANYFOLDER‘ Name=’$(var.CompanyName)‘ />
</Directory>
</Directory>

<ComponentGroup Id="Saar_A0_Quer.mxt">
<Component Id="Saar_A0_Quer.mxt" Directory="APPLICATIONFOLDERTEMPLATEARCGIS" Guid="77B26FE2-607B-41D6-939E-2600F350F031">
<File Id="Saar_A0_Quer.mxt" KeyPath="yes" Source="$(var.Path_DataTemplates)\Saar_A0_Quer.mxt" />
</Component>
<Component Id="ArcGisCopy_Saar_A0_Quer.mxt" Directory="ARCGISROOTTEMPLATESPROJECT1" Guid="77B26FE2-607B-41D6-939E-2600F350F032">
<File Id="ArcGisCopy_Saar_A0_Quer.mxt" KeyPath="yes" Source="$(var.Path_DataTemplates)\Saar_A0_Quer.mxt" />
</Component>
</ComponentGroup>

<Feature Id=’FeatureDesktop‘ Title=’Desktopinstallation‘ Level=’30‘ Display=’expand‘ >
<ComponentGroupRef Id=’Saar_A0_Quer.mxt‘ />
</Feature>

</Product>
</Wix>
[/xml]

warning HEAT5151: Could not load file or assembly

Fehler:
heat.exe : warning HEAT5151 : Could not harvest data from a file that was expected to be an assembly: C:\Projekte\…\Core.dll. If this file is not an assembly you can ignore this warning. Otherwise, this error detail may be helpful to diagnose the failure: Could not load file or assembly ‚Commons.UI, Version=9.3.0.978, Culture=neutral, PublicKeyToken=ccd18cc03af5b919‘ or one of its dependencies. The system cannot find the file specified.

Ursache:

Die Datei referenziert eine Fremd-DLL, die nicht im gleichen Verzeichnis und nicht im GAC (Global Assembly Cache) zu finden ist.

Lösung:

Alle Referenzen müssen entweder im GAC oder im gleichen Verzeichnis wie die zu extrahierende Datei liegen.

Definition von ApplicationFolderName bei WixUI_Advanced

Benutzt man das UI Set WixUI_Advanced, so muss man ein Property namens ApplicationFolderName definieren, welches dann im Dialog zur Verzeichnisauswahl angezeigt wird.

Die Definition eines einfachen Pfades macht man wie gewohnt:

[xml]<Property Id=’ApplicationFolderName‘ Value=’MeinProgramm‘ />[/xml]

Schwieriger wirds, wenn man den Wert eines anderen Properties verwenden will.
So …

[xml] <Directory Id=’TARGETDIR‘ Name=’SourceDir‘>
<Directory Id=’ProgramFilesFolder‘>
<Directory Id=’APPFOLDER‘ Name=’$(var.ProgrammName)‘>
</Directory>
</Directory>
</Directory>
<Property Id=’ApplicationFolderName‘ Value='[APPFOLDER]‘ />[/xml]

… funktionierts leider nicht. Properties können nur über eine CustomAction zugewiesen werden. Bei mir war der Wert aber immer leer. Wer das hinbekommt darf mir gern einen Tipp geben!

Ich habs so gelöst:

[xml] <Directory Id=’TARGETDIR‘ Name=’SourceDir‘>
<Directory Id=’ProgramFilesFolder‘>
<Directory Id=’APPFOLDER‘ Name=’$(var.ProgrammName)‘>
</Directory>
</Directory>
</Directory>
<Property Id=’ApplicationFolderName‘ Value=’$(var.ProgrammName)‘ />[/xml]

Nicht ganz so sauber, tut aber genauso.

Was aber, wenn man mehrere Pfade angeben möchte?
Dann sieht es so aus:

[xml] <Property Id=’ApplicationFolderName‘ Value=’$(var.CompanyName)\$(var.InstallDirectoryName)\$(var.ProductVersion)‘ />[/xml]