<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Visual Studio on Marko Apfel</title><link>http://blog.marko-apfel.de/tags/visual-studio/</link><description>Recent content in Visual Studio on Marko Apfel</description><generator>Hugo</generator><language>en-US</language><lastBuildDate>Tue, 14 Jul 2015 17:15:00 +0200</lastBuildDate><atom:link href="http://blog.marko-apfel.de/tags/visual-studio/index.xml" rel="self" type="application/rss+xml"/><item><title>F#, ArcGIS Runtime and error “Cannot create unknown type '{http://schemas.esri.com/arcgis/runtime/2013}MapView'”</title><link>http://blog.marko-apfel.de/posts/f-sharp-arcgis-runtime-and-error-cannot-create-unknown-type-http-schemas-esri-com-arcgis-runtime-2013-mapview/</link><pubDate>Tue, 14 Jul 2015 17:15:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/f-sharp-arcgis-runtime-and-error-cannot-create-unknown-type-http-schemas-esri-com-arcgis-runtime-2013-mapview/</guid><description>&lt;p&gt;By playing with F# and ArcGIS Runtime I tried to re-create a sample C# project with F#.&lt;/p&gt;
&lt;p&gt;For the WPF part I used the Visual Studio extension &lt;a href="https://visualstudiogallery.msdn.microsoft.com/e0907c99-bb04-4eb8-9692-9333d5ff4399"&gt;F# Empty Windows App (WPF)&lt;/a&gt; and &lt;a href="https://visualstudiogallery.msdn.microsoft.com/ad49fd5c-930c-4fe6-a30e-2d0d6778c565"&gt;F# Windows App (WPF, MVVM)&lt;/a&gt; the NuGet packages &lt;a href="https://www.nuget.org/packages/FSharp.ViewModule.Core/"&gt;FSharp.ViewModule.Core&lt;/a&gt; and &lt;a href="https://www.nuget.org/packages/FsXaml.Wpf/"&gt;FsXaml for WPF&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Visual Studio – Getting compilation error “The type 'XAML' is not defined.”</title><link>http://blog.marko-apfel.de/posts/visual-studio-getting-compilation-error-the-type-xaml-is-not-defined/</link><pubDate>Thu, 09 Jul 2015 06:34:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/visual-studio-getting-compilation-error-the-type-xaml-is-not-defined/</guid><description>&lt;p&gt;During compilation of the &lt;a href="https://visualstudiogallery.msdn.microsoft.com/e0907c99-bb04-4eb8-9692-9333d5ff4399"&gt;F# Empty Windows App (WPF)&lt;/a&gt; I got that error (check the output pane carefully).&lt;/p&gt;
&lt;p&gt;&lt;a href="image_6.png"&gt;&lt;figure&gt;
 &lt;img src="http://blog.marko-apfel.de/posts/visual-studio-getting-compilation-error-the-type-xaml-is-not-defined/image-thumb-2.png" alt="image" loading="lazy" decoding="async" title="image"&gt;&lt;figcaption&gt;image&lt;/figcaption&gt;&lt;/figure&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;To solve this issue you have to thrust of the XAML Type Provider of this project. This you can do via the Visual Studio options:&lt;/p&gt;</description></item><item><title>Productive work environments for F# development (under windows)</title><link>http://blog.marko-apfel.de/posts/productive-work-environments-for-f-sharp-development-under-windows/</link><pubDate>Sat, 04 May 2013 07:30:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/productive-work-environments-for-f-sharp-development-under-windows/</guid><description>&lt;h2 id="ides-editors-"&gt;IDEs, Editors, ..&lt;/h2&gt;
&lt;p&gt;Here are my favorites in descend order&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.microsoft.com/visualstudio/eng/downloads#d-express-web"&gt;Visual Studio Express 2012 for Web&lt;/a&gt;
yes! - it allows you free F# development, notably for libraries&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linqpad.net/"&gt;LINQPad&lt;/a&gt;
again and again a wonderful tool!&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.icsharpcode.net/opensource/sd/"&gt;SharpDevelop&lt;/a&gt;
sometimes a little bit idiosyncratic&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.tryfsharp.org/Learn/getting-started"&gt;Online Scratchpad on TryFSharp.org&lt;/a&gt;
the fastest start …&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="additional-resources"&gt;Additional resources&lt;/h2&gt;
&lt;p&gt;Maybe the following packages are necessary or in minimum useful:&lt;/p&gt;</description></item><item><title>SharpDevelop, F#, “Please ensure that the F# compiler is installed on your computer.”</title><link>http://blog.marko-apfel.de/posts/sharpdevelop-f-sharp-please-ensure-that-the-f-sharp-compiler-is-installed-on-your-computer/</link><pubDate>Wed, 01 May 2013 04:18:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/sharpdevelop-f-sharp-please-ensure-that-the-f-sharp-compiler-is-installed-on-your-computer/</guid><description>&lt;h2 id="situation"&gt;Situation&lt;/h2&gt;
&lt;p&gt;My private machine has &lt;em&gt;Microsoft Visual Studio Express 2012&lt;/em&gt; for Windows Desktop. This Visual Studio edition doesn’t allow to develop with F#. So I installed additionally &lt;a href="http://www.icsharpcode.net/OpenSource/SD/Default.aspx"&gt;SharpDevelop&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;But it took longer as expected to get F# projects running in this environment.&lt;/p&gt;</description></item><item><title>Productive Toolset for C# Developer</title><link>http://blog.marko-apfel.de/posts/productive-toolset-for-c-sharp-developer/</link><pubDate>Wed, 24 Oct 2012 09:28:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/productive-toolset-for-c-sharp-developer/</guid><description>&lt;h2 id="programming"&gt;Programming&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Visual Studio&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;ReSharper&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Agent Johnson&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Agent Smith&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;StyleCop for ReSharper&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Keymaps&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;SettingsManager&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Git Source Control Provider&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Gist&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;NuGet Package Manager&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;NDepend&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Productivity Power Tools&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;PowerCommands for Visual Studio&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;PostSharp&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Indent Guides&lt;/p&gt;</description></item><item><title>Entity Framework: Connecting to a mdf user database file via localDB during script execution</title><link>http://blog.marko-apfel.de/posts/entity-framework-connecting-to-a-mdf-user-database-file-via-localdb-during-script-execution/</link><pubDate>Sun, 21 Oct 2012 12:35:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/entity-framework-connecting-to-a-mdf-user-database-file-via-localdb-during-script-execution/</guid><description>&lt;h2 id="problem"&gt;Problem&lt;/h2&gt;
&lt;p&gt;If you run the &lt;em&gt;Generate database from model&lt;/em&gt; wizard and execute the generated script the destination database could be the wrong one (for instance master of the SQL Server).&lt;/p&gt;
&lt;h2 id="solution"&gt;Solution&lt;/h2&gt;
&lt;p&gt;To use an own &lt;code&gt;mdf&lt;/code&gt; attachable user database some connection information must specified during script execution.&lt;/p&gt;</description></item><item><title>Entity Framework, Code First: where is the database?</title><link>http://blog.marko-apfel.de/posts/entity-framework-code-first-where-is-the-database/</link><pubDate>Sat, 20 Oct 2012 17:26:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/entity-framework-code-first-where-is-the-database/</guid><description>&lt;p&gt;With Entity Framework 5 in Visual Studio 2012 the code first feature could let you come to the question “Where is the automatically created database located?”&lt;/p&gt;
&lt;p&gt;I run in the question after changing the model which throws during the next run this error:&lt;/p&gt;</description></item><item><title>Strange error “argument type ‘lambda expression’ is not assignable to parameter type ‘string’”</title><link>http://blog.marko-apfel.de/posts/strange-error-argument-type-lambda-expression-is-not-assignable-to-parameter-type-string/</link><pubDate>Sun, 01 Jul 2012 11:08:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/strange-error-argument-type-lambda-expression-is-not-assignable-to-parameter-type-string/</guid><description>&lt;p&gt;During playing with EF and LINQ I run in this UI-error:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-txt" data-lang="txt"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;argument type ‘lambda expression’ is not assignable to parameter type ‘string’
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="image_2.png"&gt;&lt;figure&gt;
 &lt;img src="http://blog.marko-apfel.de/posts/strange-error-argument-type-lambda-expression-is-not-assignable-to-parameter-type-string/image_thumb.png" alt="image" loading="lazy" decoding="async" title="image"&gt;&lt;figcaption&gt;image&lt;/figcaption&gt;&lt;/figure&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The Compiler themselves states:&lt;/p&gt;
&lt;p&gt;Cannot convert lambda expression to type &amp;lsquo;string&amp;rsquo; because it is not a delegate type.&lt;/p&gt;</description></item><item><title>Error while trying to run project: Unable to start program ‘…’. The endpoint was not reachable.</title><link>http://blog.marko-apfel.de/posts/error-while-trying-to-run-project-unable-to-start-program-the-endpoint-was-not-reachable/</link><pubDate>Tue, 20 Mar 2012 10:55:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/error-while-trying-to-run-project-unable-to-start-program-the-endpoint-was-not-reachable/</guid><description>&lt;p&gt;During playing with Entity Framework I got the error:&lt;/p&gt;
&lt;p&gt;“Error while trying to run project: Unable to start program ‘&amp;rsquo;…’.
The endpoint was not reachable.&lt;/p&gt;
&lt;p&gt;&lt;a href="image_4.png"&gt;&lt;figure&gt;
 &lt;img src="http://blog.marko-apfel.de/posts/error-while-trying-to-run-project-unable-to-start-program-the-endpoint-was-not-reachable/image_thumb_1.png" alt="image" loading="lazy" decoding="async" title="image"&gt;&lt;figcaption&gt;image&lt;/figcaption&gt;&lt;/figure&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;By running the project in Visual Studio. Outside VS were no problems.&lt;/p&gt;</description></item><item><title>Installing of SDKs, Visual Studio and additional toolsets on build machines</title><link>http://blog.marko-apfel.de/posts/installing-of-sdks-visual-studio-and-additional-toolsets-on-build-machines/</link><pubDate>Mon, 05 Dec 2011 15:07:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/installing-of-sdks-visual-studio-and-additional-toolsets-on-build-machines/</guid><description>&lt;p&gt;Last week I get the information directly from Microsoft, that at build machines SDKs must be installed to guarantee that MSBuild works well in some circumstances.&lt;/p&gt;
&lt;p&gt;We have the problem, that a self-containing build should include all necessary build artifacts – particularly Silverlight stuff. I tried to encapsulate the special steps in own targets and a build was finally possible (see my former posts). But at local machines without installed Silverlight stuff it gives problems for problems. Because reason of time finally I decide to go the Microsoft way – they break my volition.&lt;/p&gt;</description></item><item><title>@Microsoft: please provide universal and professional concepts</title><link>http://blog.marko-apfel.de/posts/microsoft-please-provide-universal-and-professional-concepts/</link><pubDate>Sun, 20 Nov 2011 11:35:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/microsoft-please-provide-universal-and-professional-concepts/</guid><description>&lt;p&gt;Why such constructs are included in the &lt;code&gt;.csproj&lt;/code&gt;-Files?&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-xml" data-lang="xml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;&amp;lt;CodeAnalysisRuleSetDirectories&amp;gt;&lt;/span&gt;;c:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\\Rule Sets&lt;span class="nt"&gt;&amp;lt;/CodeAnalysisRuleSetDirectories&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;&amp;lt;CodeAnalysisRuleDirectories&amp;gt;&lt;/span&gt;;c:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\FxCop\\Rules&lt;span class="nt"&gt;&amp;lt;/CodeAnalysisRuleDirectories&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;So it every projects needs some manual steps to clean the project file so the solution could be build on a continuous integration server. That annoying!&lt;/p&gt;</description></item><item><title>Toolset agnostic build server and Silverlight projects</title><link>http://blog.marko-apfel.de/posts/toolset-agnostic-build-server-and-silverlight-projects/</link><pubDate>Thu, 10 Nov 2011 22:42:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/toolset-agnostic-build-server-and-silverlight-projects/</guid><description>&lt;h2 id="problem"&gt;Problem&lt;/h2&gt;
&lt;p&gt;Normally I try to have my continuous integration as most a possible toolset free to ensure that no local stuff could have an impact to my build.&lt;/p&gt;
&lt;p&gt;My Silverlight app references a special compile target in a folder outside my developer tree:&lt;/p&gt;</description></item><item><title>MSB4067: The element &lt;ImportGroup&gt; beneath element &lt;Project&gt; is unrecognized.</title><link>http://blog.marko-apfel.de/posts/msb4067-the-element-importgroup-beneath-element-project-is-unrecognized/</link><pubDate>Tue, 08 Nov 2011 11:32:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/msb4067-the-element-importgroup-beneath-element-project-is-unrecognized/</guid><description>&lt;h2 id="problem"&gt;Problem&lt;/h2&gt;
&lt;p&gt;Our global Jenkins continuous integration server throws this error during compile step. My local TeamCity continuous integration server runs fine. What is the difference.&lt;/p&gt;
&lt;h2 id="background"&gt;Background&lt;/h2&gt;
&lt;p&gt;I integrate some static code analysis steps via MSBuild-targets in the csproj files.&lt;/p&gt;</description></item><item><title>Running StyleCop without an installation to empower continuous integration</title><link>http://blog.marko-apfel.de/posts/running-stylecop-without-an-installation-to-empower-continuous-integration/</link><pubDate>Mon, 07 Nov 2011 22:32:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/running-stylecop-without-an-installation-to-empower-continuous-integration/</guid><description>&lt;h2 id="problem"&gt;Problem&lt;/h2&gt;
&lt;p&gt;A continuous integration server should only have a minimal toolset installed. This ensures that no unwanted libraries could affect the build and other steps.&lt;/p&gt;
&lt;p&gt;Clearly that with this slogan also &lt;em&gt;StyleCop&lt;/em&gt; should not be installed to the CI server. But we wanna have this analysis as an part of the whole build.&lt;/p&gt;</description></item><item><title>NuGet: Update to an older version of a package</title><link>http://blog.marko-apfel.de/posts/nuget-update-to-an-older-version-of-a-package/</link><pubDate>Fri, 04 Nov 2011 10:52:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/nuget-update-to-an-older-version-of-a-package/</guid><description>&lt;h2 id="problem"&gt;Problem&lt;/h2&gt;
&lt;p&gt;I must go back to an older package version (from 1.1.0.0 to 1.0.0.0) but the Package Manager Console does not allow this.&lt;/p&gt;
&lt;p&gt;With the command&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-cmd" data-lang="cmd"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Update-Package EsriDE.Commons.System.Utils -Version 1.0.0.0
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;I got the error:&lt;/p&gt;</description></item><item><title>"Failure has occurred while loading a type."</title><link>http://blog.marko-apfel.de/posts/failure-has-occurred-while-loading-a-type/</link><pubDate>Fri, 28 Oct 2011 12:08:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/failure-has-occurred-while-loading-a-type/</guid><description>&lt;h2 id="motivation"&gt;Motivation&lt;/h2&gt;
&lt;p&gt;During programming suddenly this error (&lt;code&gt;Failure has occurred while loading a type&lt;/code&gt;) was thrown by accessing a artifact of a referenced library.&lt;/p&gt;
&lt;p&gt;In such cases I take the assembly fusion logger &lt;em&gt;fuslogvw&lt;/em&gt; to search for problems of loading assemblies. Sometimes an old version from a not expected folder is binded. But all bindings were correct.&lt;/p&gt;</description></item><item><title>InternalsVisibleTo, PublicKey and PublicKeyToken</title><link>http://blog.marko-apfel.de/posts/internalsvisibleto-publickey-and-publickeytoken/</link><pubDate>Thu, 27 Oct 2011 14:35:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/internalsvisibleto-publickey-and-publickeytoken/</guid><description>&lt;h2 id="intro"&gt;Intro&lt;/h2&gt;
&lt;p&gt;If you want to test the internals of a productive assembly you must mark the assembly with the InternalsVisibleTo-attribute. This attribute has only one constructor which needs the name of the testing assembly.&lt;/p&gt;</description></item><item><title>Be carefully by using PostSharp regarding license choice</title><link>http://blog.marko-apfel.de/posts/be-carefully-by-using-postsharp-regarding-license-choice/</link><pubDate>Mon, 01 Aug 2011 11:25:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/be-carefully-by-using-postsharp-regarding-license-choice/</guid><description>&lt;h2 id="initial-situation"&gt;Initial situation&lt;/h2&gt;
&lt;p&gt;If you download and install &lt;em&gt;PostSharp&lt;/em&gt; you run the professional edition in trial mode if you don’t configure additional things – also if you want to run the community edition.&lt;/p&gt;</description></item><item><title>Correcting wrong AssemblyInfo Copyright and Vendor-information</title><link>http://blog.marko-apfel.de/posts/correcting-wrong-assemblyinfo-copyright-and-vendor-information/</link><pubDate>Mon, 01 Aug 2011 09:53:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/correcting-wrong-assemblyinfo-copyright-and-vendor-information/</guid><description>&lt;h2 id="initial-situation"&gt;Initial situation&lt;/h2&gt;
&lt;p&gt;Normally all of our installations are registered to the company name.&lt;/p&gt;
&lt;p&gt;But now we have the effect that some (developer) tool seems to overwrite this registry entries. That results in the following:&lt;/p&gt;</description></item><item><title>NuGet-Package-Management mit ArcObjects</title><link>http://blog.marko-apfel.de/posts/nuget-package-management-mit-arcobjects/</link><pubDate>Fri, 22 Jul 2011 10:48:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/nuget-package-management-mit-arcobjects/</guid><description>&lt;h2 id="motivation"&gt;Motivation&lt;/h2&gt;
&lt;p&gt;Wie gehen Sie in dieser Situation vor:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Eine von Ihnen verwendete .NET-Drittbibliothek liegt in einer neuen Version vor und Sie müssen die Abhängigkeiten in all Ihren Projekte aktualisieren.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Je nach Projekt und Notwendigkeit hatten wir bei ESRI Deutschland dafür bisher u.a. folgende Lösungs-Szenarien:&lt;/p&gt;</description></item><item><title>Using NuGet in a MSBuild-target to have the packages at the last stand</title><link>http://blog.marko-apfel.de/posts/using-nuget-in-a-msbuild-target-to-have-the-packages-at-the-last-stand/</link><pubDate>Wed, 06 Jul 2011 18:15:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/using-nuget-in-a-msbuild-target-to-have-the-packages-at-the-last-stand/</guid><description>&lt;h2 id="motivation"&gt;Motivation&lt;/h2&gt;
&lt;p&gt;Encouraged from the article “&lt;a href="http://docs.nuget.org/docs/workflows/using-nuget-without-committing-packages"&gt;Using NuGet without committing packages to source control&lt;/a&gt;” I decided to wrap the NuGet-call in a MSBuild target instead of using a pre-build event.&lt;/p&gt;
&lt;p&gt;Because we also trigger FxCop and StyleCop via targets this fits better in our project management.&lt;/p&gt;</description></item><item><title>Note to self: Visual Studio makros for build events</title><link>http://blog.marko-apfel.de/posts/note-to-self-visual-studio-makros-for-build-events/</link><pubDate>Wed, 06 Jul 2011 10:01:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/note-to-self-visual-studio-makros-for-build-events/</guid><description>&lt;p&gt;&lt;img src="https://web.archive.org/web/20111211202356id_/https://sites.google.com/site/markoapfel/VisualStudio.Makros.png" alt="Screenshot for Note to self: Visual Studio macros for build events" loading="lazy" decoding="async"&gt;&lt;/p&gt;</description></item><item><title>Let ReSharper and Code Contracts work together</title><link>http://blog.marko-apfel.de/posts/let-resharper-and-code-contracts-work-together/</link><pubDate>Sun, 05 Jun 2011 23:55:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/let-resharper-and-code-contracts-work-together/</guid><description>&lt;p&gt;&lt;em&gt;ReSharper&lt;/em&gt; by default does not recognize &lt;code&gt;Contract.Requires&lt;/code&gt; as an annotation hint, that the proofed condition furthermore is &lt;code&gt;true&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;So it comes to the effect, that using the following contract definition causes ReSharper to squiggle the next access and output a wrong hint:&lt;/p&gt;</description></item><item><title>Let ReSharper and xUnit work together</title><link>http://blog.marko-apfel.de/posts/let-resharper-and-xunit-work-together/</link><pubDate>Sun, 05 Jun 2011 13:41:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/let-resharper-and-xunit-work-together/</guid><description>&lt;h2 id="getting-the-ressources"&gt;Getting the ressources&lt;/h2&gt;
&lt;p&gt;First at all download&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://xunit.codeplex.com/releases/"&gt;xUnit&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://xunitcontrib.codeplex.com/releases/"&gt;xUnit Contrib ReSharper&lt;/a&gt;&lt;br&gt;
This gives you a bridge between ReSharper functionality and your XUnit coding.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="installation-und-configuration"&gt;Installation und Configuration&lt;/h2&gt;
&lt;p&gt;Unzip both archives.&lt;/p&gt;
&lt;h3 id="xunit-part"&gt;xUnit part&lt;/h3&gt;
&lt;h4 id="configure-the-code-to-use-xunit"&gt;Configure the code to use xUnit&lt;/h4&gt;
&lt;p&gt;Normally I prefer a single checkout point for my developing solution – this whole bundle I name DevTree. One of the top folders in the hierarchy of this DevTree is a lib-Folder. Beneath this folder all of the 3rd party libs which I use in my solution are located – all of them in an own folder. So I copy &lt;code&gt;xunit.dll&lt;/code&gt; to a folder &lt;code&gt;&amp;lt;DevTree-Root&amp;gt;\lib\xUnit&lt;/code&gt;.&lt;/p&gt;</description></item><item><title>Suppressing Add-in-registration task during build process</title><link>http://blog.marko-apfel.de/posts/suppressing-add-in-registration-task-during-build-process/</link><pubDate>Mon, 16 May 2011 07:17:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/suppressing-add-in-registration-task-during-build-process/</guid><description>&lt;p&gt;If you develop ArcGIS Add-ins with Visual Studio under limited permissions you get during the build process an error, that the stuff could not be registered.&lt;/p&gt;
&lt;p&gt;Normally its enough to run one times this build as an admin. Then all needed information are set and also taken for users with limited access.&lt;/p&gt;</description></item><item><title>Get Keymaps for ReSharper running</title><link>http://blog.marko-apfel.de/posts/get-keymaps-for-resharper-running/</link><pubDate>Thu, 12 May 2011 06:27:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/get-keymaps-for-resharper-running/</guid><description>&lt;p&gt;&lt;em&gt;Keymaps for ReSharper&lt;/em&gt; is a nice tool and allows the user easily to learn short cuts of ReSharper.&lt;/p&gt;
&lt;p&gt;Unfortunately, the last update is from january 2010. So the installation folder of the installing script (&lt;code&gt;Install.Keymaps.for.ReSharper.cmd&lt;/code&gt;) is not up to date. If you run it no expected new menu item “Show Keymap” under the ReSharper-menu is listed.&lt;/p&gt;</description></item><item><title>Suppressing FxCop/Code Analysis warnings in Config.Designer.cs of Esri Addins</title><link>http://blog.marko-apfel.de/posts/suppressing-fxcop-code-analysis-warnings-in-config-designer-cs-of-esri-addins/</link><pubDate>Wed, 11 May 2011 13:35:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/suppressing-fxcop-code-analysis-warnings-in-config-designer-cs-of-esri-addins/</guid><description>&lt;p&gt;Addins in ArcGIS Desktop 10 uses tool generated code of the &lt;code&gt;Config.esriaddinx&lt;/code&gt; file.&lt;/p&gt;
&lt;p&gt;Have a look at the properties you will see this tool – named &lt;code&gt;ArcGISAddInHostGenerator&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;figure&gt;
 &lt;img src="http://blog.marko-apfel.de/posts/suppressing-fxcop-code-analysis-warnings-in-config-designer-cs-of-esri-addins/ConfigEsriaddinx.CustomTool.png" alt="Screenshot for Suppressing FxCop/Code Analysis warnings in Config.Designer.cs of Esri Addins" loading="lazy" decoding="async"&gt;&lt;/figure&gt;&lt;/p&gt;</description></item><item><title>Calling esriRegasm manually (outside an ArcGIS-installation)</title><link>http://blog.marko-apfel.de/posts/calling-esriregasm-manually-outside-an-arcgis-installation/</link><pubDate>Tue, 26 Apr 2011 20:53:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/calling-esriregasm-manually-outside-an-arcgis-installation/</guid><description>&lt;p&gt;Since &lt;em&gt;ArcGIS 10&lt;/em&gt; during the &lt;em&gt;Visual Studio&lt;/em&gt; build an additional target with the execution of a program named &lt;code&gt;esriRegasm&lt;/code&gt; is called. Amongst other things this program adds the COM-categories in the registry.&lt;/p&gt;</description></item><item><title>Running CopySourceAsHtml Add-in under Visual Studio 2010</title><link>http://blog.marko-apfel.de/posts/running-copysourceashtml-add-in-under-visual-studio-2010/</link><pubDate>Sun, 02 Jan 2011 10:41:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/running-copysourceashtml-add-in-under-visual-studio-2010/</guid><description>&lt;p&gt;Until now &lt;a href="http://copysourceashtml.codeplex.com/"&gt;CopySourceAsHtml&lt;/a&gt; only supports &lt;em&gt;Visual Studio 2008&lt;/em&gt; out of the box.&lt;/p&gt;
&lt;p&gt;But it is no problem to pimp up the config-file for supporting Visual Studio 2010.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Copy all three files to &lt;code&gt;%userprofile%\Documents\Visual Studio 2010\Addins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Open &lt;em&gt;CopySourceAsHtml.AddIn&lt;/em&gt; in a text editor and change both lines with&lt;br&gt;
&lt;code&gt;&amp;lt;Version&amp;gt;9.0&amp;lt;/Version&amp;gt;&lt;/code&gt; to &lt;code&gt;&amp;lt;Version&amp;gt;10.0&amp;lt;/Version&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Run Visual Studio 2010 and &lt;em&gt;CopySourceAsHtml&lt;/em&gt; works fine&lt;/li&gt;
&lt;/ol&gt;</description></item><item><title>Differences by pasting formatted text in Word and OneNote</title><link>http://blog.marko-apfel.de/posts/differences-by-pasting-formatted-text-in-word-and-onenote/</link><pubDate>Sun, 02 Jan 2011 08:54:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/differences-by-pasting-formatted-text-in-word-and-onenote/</guid><description>&lt;p&gt;By pasting formatted text in Word and OneNote both applications act a little bit different. Meanwhile Word supports RTF-formatting OneNote does not.&lt;/p&gt;
&lt;p&gt;OneNote could only handle HTML-formatting.&lt;/p&gt;
&lt;p&gt;In combination with presenting source code for Visual Studio the Add-in &lt;a href="http://copysourceashtml.codeplex.com/"&gt;CopySourceAsHtml&lt;/a&gt; is available.&lt;/p&gt;</description></item><item><title>Installation experiences with NDepend under Win7/64 with restricted user permissions</title><link>http://blog.marko-apfel.de/posts/installation-experiences-with-ndepend-under-win7-64-with-restricted-user-permissions/</link><pubDate>Mon, 27 Dec 2010 19:10:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/installation-experiences-with-ndepend-under-win7-64-with-restricted-user-permissions/</guid><description>&lt;p&gt;Today Patrick from NDepend gave me a new license for his static code analysis tool &lt;em&gt;NDepend&lt;/em&gt; for my fresh machine with Win7/64. This platform is new for me, so some things are different to Win XP. Maybe that till yet some of these things are not well enough understood from me. So I stepped in some traps.&lt;/p&gt;</description></item><item><title>Explorer context menu to create a blank Visual Studio solution</title><link>http://blog.marko-apfel.de/posts/explorer-context-menu-to-create-a-blank-visual-studio-solution/</link><pubDate>Fri, 03 Sep 2010 15:25:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/explorer-context-menu-to-create-a-blank-visual-studio-solution/</guid><description>&lt;p&gt;Starting a new Visual Studio solution through the IDE is often too complex and time wasting.&lt;/p&gt;
&lt;p&gt;Other programs allows per default to create a blank document with the explorer context menu. Why not offer this functionality for Visual Studio?&lt;/p&gt;</description></item><item><title>Diverse Shortcuts</title><link>http://blog.marko-apfel.de/posts/diverse-shortcuts/</link><pubDate>Fri, 27 Aug 2010 10:45:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/diverse-shortcuts/</guid><description>&lt;h2 id="visual-studio--resharper"&gt;Visual Studio / ReSharper&lt;/h2&gt;
&lt;h3 id="new-to-learn-or-learn"&gt;New to learn or learn&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;SHIFT + ALT + PgDown/PgUp&lt;/code&gt; — &lt;strong&gt;R#&lt;/strong&gt;&lt;br&gt;
Find next/previous error&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ALT + PgDown/PgUp&lt;/code&gt; — &lt;strong&gt;R#&lt;/strong&gt;&lt;br&gt;
Find next/previous suggestion/hint&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="editing"&gt;Editing&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ALT + ENTER&lt;/code&gt; — &lt;strong&gt;R#, &lt;code&gt;ReSharper.QickFix__&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Show quick fixes and content actions&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + D&lt;/code&gt; — &lt;strong&gt;R#, &lt;code&gt;ReSharper.DuplicateText&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Duplicate line or selection&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + K, S&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.SurroundWith&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Code Snippet Picker (wrap around)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + ALT + RightArrow/LeftArrow&lt;/code&gt; — &lt;strong&gt;R#, &lt;code&gt;ReSharper.ExtendSelection&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Extends/shrinks selection&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + K, X&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.InsertSnippet&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Code Snippet Picker (insert)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + ALT + UpArrow/DownArrow&lt;/code&gt; — &lt;strong&gt;R#, Move Method (up/down)&lt;/strong&gt;&lt;br&gt;
Moves method above or down to the previous or next method&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + M, O&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.CollapseToDefinitions&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Collapses existing regions and types&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + M, L&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.ToggleAllOutlining&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Fully collapses and expands regions&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + M, M&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.Toggle-OutliningExpansion&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Collapses and expands actual region&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + M, P&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.StopOutlining&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Expands regions&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + V&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.CycleClipboardRing&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Pastes from the Clipboard ring&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + H&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.ReplaceInFiles&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Replace in files&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="window-handling"&gt;Window Handling&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;SHIFT + ALT + ENTER&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;View.FullScreen&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Full screen mode&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + ALT + DownArrow&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Window.ShowEzMDIFileList&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Lists all open documents&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ALT + ENTER&lt;/code&gt; — &lt;strong&gt;VS&lt;/strong&gt;&lt;br&gt;
Opens &amp;ldquo;Properties&amp;rdquo; dialog&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + TAB&lt;/code&gt; — &lt;strong&gt;?&lt;/strong&gt;&lt;br&gt;
Navigates through recent files&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="intellisense"&gt;IntelliSense&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;CTRL + SPACE&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.CompleteWord&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Completes current word&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + SPACE&lt;/code&gt; — &lt;strong&gt;?, &lt;code&gt;Edit.ParameterInfo&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Displays method parameter infos&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + J&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.ListMembers&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Invokes completion list&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + K, I&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.QuickInfo&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Displays complete declaration&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="refactor"&gt;Refactor&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;CTRL + R, R&lt;/code&gt; or &lt;code&gt;F2&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Refactor.Rename&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Opens &amp;ldquo;Rename&amp;rdquo; dialog&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + R, M&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Refactor.ExtractMethod&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Opens &amp;ldquo;Extract Method&amp;rdquo; dialog&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + R, E&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Refactor.EncapsulateField&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Opens &amp;ldquo;Encapsulate Field&amp;rdquo; dialog&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + R, F&lt;/code&gt; — &lt;strong&gt;R#, &lt;code&gt;ReSharper.IntroduceField&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Introduce Field&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + R, I&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Refactor.ExtractInterface&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Opens &amp;ldquo;Extract Interface&amp;rdquo; dialog&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ALT + DEL&lt;/code&gt; — &lt;strong&gt;R#, &lt;code&gt;ReSharper.SafeDelete&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Safe Delete&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + R, P&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Refactor.PromoteLocalVariabletoParameter&lt;/code&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + R, V&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Refactor.RemoveParameters&lt;/code&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="debugging"&gt;Debugging&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;CTRL + F10&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Debug.RunToCursor&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Run to Cursor&lt;/li&gt;
&lt;li&gt;&lt;code&gt;SHIFT + F11&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Debug.StepOut&lt;/code&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;SHIFT + F5&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Debug.StopDebugging&lt;/code&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;F9&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Debug.ToggleBreakpoint&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Set/remove breakpoint&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + F9&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Debug.EnableBreakpoint&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Disable/enable breakpoint&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL&lt;/code&gt; — &lt;strong&gt;VS&lt;/strong&gt;&lt;br&gt;
Make Datatip Transparent&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="build"&gt;Build&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;F6&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Build.BuildSolution&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Builds all the projects&lt;/li&gt;
&lt;li&gt;&lt;code&gt;SHIFT + F6&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Build.BuildSelection&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Builds the selected project&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="navigation"&gt;Navigation&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;SHIFT + ALT + L&lt;/code&gt; — &lt;strong&gt;R#, &lt;code&gt;ReSharper.LocateInSolutionExplorer&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Locate in Solution Explorer&lt;/li&gt;
&lt;li&gt;&lt;code&gt;SHIFT + F12&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.FindAllReferences&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
List of all references for symbol&lt;/li&gt;
&lt;li&gt;&lt;code&gt;F12&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.GoToDefinition&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;CTRL + LMB&lt;/code&gt; — &lt;strong&gt;R#&lt;/strong&gt;&lt;br&gt;
Navigates to declaration&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + ,&lt;/code&gt; — &lt;strong&gt;R#, &lt;code&gt;ReSharper.GotoRecentEdits&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
View recent edits&lt;/li&gt;
&lt;li&gt;&lt;code&gt;F8&lt;/code&gt; — &lt;strong&gt;?, &lt;code&gt;Edit.GoToNextLocation&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Next item (Task List, Find Results)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + I&lt;/code&gt; — &lt;strong&gt;?, &lt;code&gt;Edit.IncrementalSearch&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Activates incremental search&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + -&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;View.NavigateBackward&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Previously edited code&lt;/li&gt;
&lt;li&gt;&lt;code&gt;F7&lt;/code&gt; — &lt;strong&gt;R#, &lt;code&gt;View.ViewCode/ViewDesigner&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Switch to code or design view&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + G&lt;/code&gt; — &lt;strong&gt;?, &lt;code&gt;Edit.GoTo&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Opens &amp;ldquo;Go To Line&amp;rdquo; dialog&lt;/li&gt;
&lt;li&gt;&lt;code&gt;SHIFT + ALT + L&lt;/code&gt; — &lt;strong&gt;R#&lt;/strong&gt;&lt;br&gt;
Locate in Solution Explorer&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="important"&gt;Important&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;CTRL + C&lt;/code&gt; — &lt;strong&gt;VS/R#, &lt;code&gt;Edit.Copy&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Copy line or selection&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + X&lt;/code&gt; — &lt;strong&gt;VS/R#, &lt;code&gt;Edit.Cut&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Cut line or selection&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + ALT + /&lt;/code&gt; — &lt;strong&gt;R#&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;CTRL + K, C&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.CommentSelection&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Inserts &lt;code&gt;//&lt;/code&gt; at the beginning&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + ALT + /&lt;/code&gt; — &lt;strong&gt;R#&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;CTRL + K, U&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.UncommentSelection&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Removes the &lt;code&gt;//&lt;/code&gt; at the beginning&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + /&lt;/code&gt; — &lt;strong&gt;?, Block comment&lt;/strong&gt;&lt;br&gt;
Inserts &lt;code&gt;/*&lt;/code&gt; at the beginning and &lt;code&gt;*/&lt;/code&gt; at the end&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + K, D&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.FormatDocument&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Formats indentation&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + .&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;View.ShowSmartTag&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Open smart tag menu&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + F&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.FindInFiles&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Find in files&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + 8&lt;/code&gt; — &lt;strong&gt;R#, Code analysis on/off&lt;/strong&gt;&lt;br&gt;
Enable/disable code analysis&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="word"&gt;Word&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ALT + V, U&lt;/code&gt;&lt;br&gt;
Full screen&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="outlook"&gt;Outlook&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;CTRL + R&lt;/code&gt;&lt;br&gt;
Reply message&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + F&lt;/code&gt;&lt;br&gt;
Forward message&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + M&lt;/code&gt;&lt;br&gt;
New message&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + K&lt;/code&gt;&lt;br&gt;
Check names&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + Backspace&lt;/code&gt;&lt;br&gt;
Delete the previous word&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + ENTER&lt;/code&gt;&lt;br&gt;
Send message&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ALT + J&lt;/code&gt;&lt;br&gt;
Move to the Subject field&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + 1&lt;/code&gt;&lt;br&gt;
Go to mail&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + 2&lt;/code&gt;&lt;br&gt;
Go to calendar&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ALT + F4&lt;/code&gt;&lt;br&gt;
Close current window&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="windows"&gt;Windows&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;WIN + Anfangsbuchstabe&lt;/code&gt; or &lt;code&gt;CTRL + ESC + Anfangsbuchstabe&lt;/code&gt;&lt;br&gt;
Rotiert im expandierten Startmenü zwischen den entsprechenden Treffern&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + 1 .. 9&lt;/code&gt;&lt;br&gt;
Startet das jeweilige Programm aus der Taskleiste unten – beziehungsweise minimiert es oder stellt es wieder her&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + UpArrow&lt;/code&gt; / &lt;code&gt;WIN + DownArrow&lt;/code&gt;&lt;br&gt;
Maximize current window / Restore down or minimize current window&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + LeftArrow&lt;/code&gt; / &lt;code&gt;WIN + RightArrow&lt;/code&gt;&lt;br&gt;
Dock the current window to the left or right half of the screen&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + SHIFT + LeftArrow/RightArrow&lt;/code&gt;&lt;br&gt;
Verschiebt das Bild auf den linken bzw. rechten Bildschirm&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + HOME&lt;/code&gt;&lt;br&gt;
Minimize all but the current window&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + SPACE&lt;/code&gt;&lt;br&gt;
Makes all windows transparent so you can see through to the desktop&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + SHIFT + UpArrow/DownArrow&lt;/code&gt;&lt;br&gt;
Maximize vertical size / Restore vertical size&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + P&lt;/code&gt;&lt;br&gt;
Presentation mode&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + X&lt;/code&gt;&lt;br&gt;
Mobility centre with enhanced options&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + BREAK&lt;/code&gt;&lt;br&gt;
Displays system properties&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + #&lt;/code&gt;&lt;br&gt;
Quicklaunch&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WINDOWS + R&lt;/code&gt;&lt;br&gt;
Open Run dialog&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + N&lt;/code&gt;&lt;br&gt;
Opens a new Explorer window&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + N&lt;/code&gt;&lt;br&gt;
Creates a new folder&lt;/li&gt;
&lt;li&gt;&lt;code&gt;SHIFT + CTRL + Click at application&lt;/code&gt;&lt;br&gt;
Start program in admin mode&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="chrome--srware-iron"&gt;Chrome / SRWare Iron&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;CTRL + PgDown&lt;/code&gt; / &lt;code&gt;CTRL + PgUp&lt;/code&gt;&lt;br&gt;
Rotiert durch die Reiter&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + 1&lt;/code&gt; to &lt;code&gt;CTRL + 8&lt;/code&gt;&lt;br&gt;
Switches to the tab at the specified position number on the tab strip&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + LMB-Click&lt;/code&gt;&lt;br&gt;
Open link in new tab and switches to new tab&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ALT + HOME&lt;/code&gt;&lt;br&gt;
Open homepage in current window&lt;/li&gt;
&lt;li&gt;&lt;code&gt;F6&lt;/code&gt;&lt;br&gt;
Activate and highlight address bar for typing new stuff&lt;/li&gt;
&lt;li&gt;&lt;code&gt;SPACE&lt;/code&gt;&lt;br&gt;
Scrolls down&lt;/li&gt;
&lt;li&gt;&lt;code&gt;F11&lt;/code&gt;&lt;br&gt;
Fullscreen&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + T&lt;/code&gt;&lt;br&gt;
Reopens last closed tab&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + W&lt;/code&gt; or &lt;code&gt;CTRL + F4&lt;/code&gt;&lt;br&gt;
Closes the current tab&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + J&lt;/code&gt;&lt;br&gt;
Open download page&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Default installation for developer machines</title><link>http://blog.marko-apfel.de/posts/default-installation-for-developer-machines/</link><pubDate>Mon, 12 Jul 2010 12:00:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/default-installation-for-developer-machines/</guid><description>&lt;h2 id="ide"&gt;IDE&lt;/h2&gt;
&lt;h3 id="must-have"&gt;Must have&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Visual Studio 2008&lt;/li&gt;
&lt;li&gt;Visual Studio 2010&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="nice-to-have"&gt;Nice to have&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Sharp Develop&lt;/li&gt;
&lt;li&gt;Eclipse&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="editor"&gt;Editor&lt;/h2&gt;
&lt;h3 id="must-have-1"&gt;Must have&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Editor with high functionality and high usability
(like WScite, UltraEdit, PSPad, ..)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="nice-to-have-1"&gt;Nice to have&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Microsoft XML Notepad 2007&lt;/li&gt;
&lt;li&gt;Notepad++&lt;/li&gt;
&lt;li&gt;Windows Live Writer&lt;/li&gt;
&lt;li&gt;WScite&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="visual-studio-add-ins"&gt;Visual Studio Add-Ins&lt;/h2&gt;
&lt;h3 id="must-have-2"&gt;Must have&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;AnkhSvn&lt;/li&gt;
&lt;li&gt;GhostDoc&lt;/li&gt;
&lt;li&gt;PowerCommands&lt;/li&gt;
&lt;li&gt;PowerToys for Visual Studio&lt;/li&gt;
&lt;li&gt;ReSharper&lt;/li&gt;
&lt;li&gt;VsCommands&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="nice-to-have-2"&gt;Nice to have&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;CopySourceAsHtml&lt;/li&gt;
&lt;li&gt;Clone Detective for Visual Studio&lt;/li&gt;
&lt;li&gt;CR_Documentor, Documentor&lt;/li&gt;
&lt;li&gt;Agent Johnson (R# Plugin)&lt;/li&gt;
&lt;li&gt;Agent Smith (R# Plugin)&lt;/li&gt;
&lt;li&gt;Source Code Outliner&lt;/li&gt;
&lt;li&gt;StyleCop for ReSharper (R# Plugin)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="developing-tools"&gt;Developing Tools&lt;/h2&gt;
&lt;h3 id="must-have-3"&gt;Must have&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;DbgView&lt;/li&gt;
&lt;li&gt;Enterprise Architect&lt;/li&gt;
&lt;li&gt;Reflector&lt;/li&gt;
&lt;li&gt;WinMerge&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="nice-to-have-3"&gt;Nice to have&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;DXCore (u.a benötigt für Documentor)&lt;/li&gt;
&lt;li&gt;FusLogVw&lt;/li&gt;
&lt;li&gt;Microsoft FxCop 1.36&lt;/li&gt;
&lt;li&gt;Microsoft FxCop 10&lt;/li&gt;
&lt;li&gt;Microsoft Pex&lt;/li&gt;
&lt;li&gt;Micosoft StyleCop&lt;/li&gt;
&lt;li&gt;NDepend&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="other-tools"&gt;Other Tools&lt;/h2&gt;
&lt;h3 id="must-have-4"&gt;Must have&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;CLCL&lt;/li&gt;
&lt;li&gt;clip2txt&lt;/li&gt;
&lt;li&gt;Launchy&lt;/li&gt;
&lt;li&gt;ProcessExplorer&lt;/li&gt;
&lt;li&gt;ProcessMonitor&lt;/li&gt;
&lt;li&gt;TortoiseSVN&lt;/li&gt;
&lt;li&gt;SVNMonitor&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="nice-to-have-4"&gt;Nice to have&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;CmdHere Powertoy&lt;/li&gt;
&lt;li&gt;FeedReader&lt;/li&gt;
&lt;li&gt;Network Stumbler&lt;/li&gt;
&lt;li&gt;SRWare Iron&lt;/li&gt;
&lt;li&gt;TortoiseCVS&lt;/li&gt;
&lt;li&gt;TrueCrypt&lt;/li&gt;
&lt;li&gt;VLC Media Player&lt;/li&gt;
&lt;li&gt;ZoomIt&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="quicklaunch"&gt;Quicklaunch&lt;/h2&gt;
&lt;h3 id="must-have-5"&gt;Must have&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Shortcut to clip2txt&lt;/li&gt;
&lt;li&gt;Shortcut to Explorer as administrative user
%windir%\system32\runas.exe /user:&amp;lt;admin-user&amp;gt; &amp;ldquo;explorer /e,/separate,C:&amp;quot;&lt;/li&gt;
&lt;li&gt;Shortcut to (special) home and working directories
%windir%\explorer.exe /e,/root,c:\projects
&lt;a href=""&gt;\Projects&amp;rdquo;&amp;gt;\uranus\home$&amp;amp;lt;user&amp;gt;\Projects&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="nice-to-have-5"&gt;Nice to have&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;No GIS-links&lt;/li&gt;
&lt;li&gt;No Office links (only Outlook)&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Specify a project-specific custom dictionary for FxCop build tasks and Visual Studio Team System static code analysis</title><link>http://blog.marko-apfel.de/posts/specify-a-project-specific-custom-dictionary-for-fxcop-build-tasks-and-visual-studio-team-system-static-code-analysis/</link><pubDate>Fri, 02 Jul 2010 11:27:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/specify-a-project-specific-custom-dictionary-for-fxcop-build-tasks-and-visual-studio-team-system-static-code-analysis/</guid><description>&lt;p&gt;Using a project-specific custom dictionary for &lt;em&gt;FxCop&lt;/em&gt; and &lt;em&gt;FxCop build tasks&lt;/em&gt; is very simple. The &lt;em&gt;FxCopCmd&lt;/em&gt; call in the &lt;em&gt;FxCop&lt;/em&gt;-target offers the parameter &lt;code&gt;/dictionary:&amp;lt;DictionaryName&amp;gt;&lt;/code&gt; for that.&lt;/p&gt;
&lt;p&gt;But for &lt;em&gt;Visual Studio&lt;/em&gt; a little bit more steps are needed. And these steps must me gone for all projects.&lt;/p&gt;</description></item><item><title>Global SVN Ignore Patterns und Zeitstempel-Optionen</title><link>http://blog.marko-apfel.de/posts/global-svn-ignore-patterns-und-zeitstempel-optionen/</link><pubDate>Mon, 31 May 2010 09:13:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/global-svn-ignore-patterns-und-zeitstempel-optionen/</guid><description>&lt;h2 id="globale-konfiguration"&gt;Globale Konfiguration&lt;/h2&gt;
&lt;p&gt;Die setzt man unter den globalen SVN-Einstellungen.&lt;/p&gt;
&lt;p&gt;Diese öffnet man per kontextsensitiven Menü im Explorer:&lt;/p&gt;
&lt;p&gt;&lt;figure&gt;
 &lt;img src="http://blog.marko-apfel.de/posts/global-svn-ignore-patterns-und-zeitstempel-optionen/tortoisesvn-configuration-01b.png" alt="Screenshot for Global SVN Ignore Patterns und Zeitstempel-Optionen" loading="lazy" decoding="async"&gt;&lt;/figure&gt;&lt;/p&gt;
&lt;h3 id="global-ignores"&gt;Global Ignores&lt;/h3&gt;
&lt;h4 id="standard"&gt;Standard&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;*.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo *.rej *~ #*# .#* .*.swp .DS_Store&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="sinnvoll-sind-für-net-entwicklungen-und-visual-studio-und-resharper-folgende-ergänzungen"&gt;sinnvoll sind für .NET-Entwicklungen und Visual Studio und ReSharper folgende Ergänzungen&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;*.suo *.csproj.user */_ReSharper.* *.ReSharper.user */bin */obj *.cache *.gpState&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Der oft genannte Vorschlag &lt;code&gt;*bin&lt;/code&gt; und &lt;code&gt;*obj&lt;/code&gt; ist keine gute Idee da auch Dateien die mit &lt;code&gt;bin&lt;/code&gt; enden unterdrückt werden (&lt;code&gt;Something.bin&lt;/code&gt; oder &lt;code&gt;Taschendiebin&lt;/code&gt;).&lt;/p&gt;</description></item><item><title>Specify a custom dictionary for FxCop and Visual Studio source analysis</title><link>http://blog.marko-apfel.de/posts/specify-a-custom-dictionary-for-fxcop-and-visual-studio-source-analysis/</link><pubDate>Tue, 11 May 2010 17:46:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/specify-a-custom-dictionary-for-fxcop-and-visual-studio-source-analysis/</guid><description>&lt;p&gt;Renaming the default custom dictionary from &lt;code&gt;CustomDictionary.xml&lt;/code&gt; to an other name – for instance &lt;code&gt;FxCop.CustomDictionary.xml&lt;/code&gt; needs some additional changes to work in involved applications.&lt;/p&gt;
&lt;h2 id="visual-studio-team-system-code-analysis"&gt;Visual Studio Team System code analysis&lt;/h2&gt;
&lt;p&gt;For Visual Studio Team System code analysis this file should be added as a link to all projects and set to be the Build Action CodeAnalysisDirectory.&lt;/p&gt;</description></item><item><title>Remote Debugging mit Visual Studio</title><link>http://blog.marko-apfel.de/posts/remote-debugging-mit-visual-studio/</link><pubDate>Tue, 27 Apr 2010 09:38:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/remote-debugging-mit-visual-studio/</guid><description>&lt;p&gt;Das Debuggen einer Applikation auf einem Rechner ohne installiertes Visual Studio gestaltet sich mit dem Remote Debugging Monitor relativ einfach.&lt;/p&gt;
&lt;p&gt;Derartige Konstellationen ergeben sich insbesondere dann, wenn ein Debugging von Anwendungen in Produktiv-Umgebungen notwendig wird.&lt;/p&gt;</description></item><item><title>MSBuild Exec task: using quotes in WorkingDirectory does not work</title><link>http://blog.marko-apfel.de/posts/msbuild-exec-task-using-quotes-in-workingdirectory-does-not-work/</link><pubDate>Fri, 27 Nov 2009 10:01:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/msbuild-exec-task-using-quotes-in-workingdirectory-does-not-work/</guid><description>&lt;p&gt;For a general applicability I tried to specify the &lt;code&gt;WorkingDirectory&lt;/code&gt; attribute in a quoted manner:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-xml" data-lang="xml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;&amp;lt;WorkingDir&amp;gt;&lt;/span&gt;&lt;span class="ni"&gt;&amp;amp;quot;&lt;/span&gt;$(SolutionRoot)\EsriDE.Commons\tools\EsriDE\&lt;span class="ni"&gt;&amp;amp;quot;&lt;/span&gt;&lt;span class="nt"&gt;&amp;lt;/WorkingDir&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;or&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-xml" data-lang="xml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;&amp;lt;DoubleQuotes&amp;gt;&lt;/span&gt;%22&lt;span class="nt"&gt;&amp;lt;/DoubleQuotes&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;&amp;lt;WorkingDir&amp;gt;&lt;/span&gt;$(DoubleQuotes)$(SolutionRoot)\EsriDE.Commons\tools\EsriDE\$(DoubleQuotes)&lt;span class="nt"&gt;&amp;lt;/WorkingDir&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;The Exec task self is&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-xml" data-lang="xml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;&amp;lt;Exec&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="na"&gt;WorkingDirectory=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;$(WorkingDir)&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="na"&gt;Command=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;$(ExtractComCategories) $(InputDirectoryArg) $(FilterArg) $(SeparationArg) $(OutputDirectoryArg) $(OutputFileArg) $(OutputFormatArg)&amp;#34;&lt;/span&gt; &lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Every variant throws during building the exception MSB6003 (The directory name is invalid):&lt;/p&gt;</description></item><item><title>Stopping a build at the TFS</title><link>http://blog.marko-apfel.de/posts/stopping-a-build-at-the-tfs/</link><pubDate>Thu, 26 Nov 2009 07:54:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/stopping-a-build-at-the-tfs/</guid><description>&lt;p&gt;Open a “visual studio command prompt” and try:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bat" data-lang="bat"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;tfsbuild stop https://*****:8143 RXXXXX_Sourcecode Gen_2.6_branch_test_20080827.1
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description></item><item><title>Visual Studio: Find in files with *.xml wildcard does not find all occurrences</title><link>http://blog.marko-apfel.de/posts/visual-studio-find-in-files-with-xml-wildcard-does-not-find-all-occurrences/</link><pubDate>Tue, 17 Nov 2009 04:51:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/visual-studio-find-in-files-with-xml-wildcard-does-not-find-all-occurrences/</guid><description>&lt;p&gt;During a refactoring we searched for full type names in our IoC-config files. The filter was setted to &lt;code&gt;*.xml&lt;/code&gt; and Visual Studio does not found all occurrences of the search string in these xml-files.&lt;/p&gt;</description></item><item><title>StyleCop throws documentation warning SA1600 for private elements</title><link>http://blog.marko-apfel.de/posts/stylecop-throws-documentation-warning-sa1600-for-private-elements/</link><pubDate>Thu, 12 Nov 2009 06:24:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/stylecop-throws-documentation-warning-sa1600-for-private-elements/</guid><description>&lt;p&gt;if you see the following warnings in your code:&lt;/p&gt;
&lt;p&gt;&lt;figure&gt;
 &lt;img src="http://blog.marko-apfel.de/posts/stylecop-throws-documentation-warning-sa1600-for-private-elements/StyleCop.Warning.SA1600.png" alt="Screenshot for StyleCop throws documentation warning SA1600 for private elements" loading="lazy" decoding="async"&gt;&lt;/figure&gt;&lt;/p&gt;
&lt;p&gt;You have two choices:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;deactivate the rule
but this disables this rule for all documentations – also the wanted&lt;/li&gt;
&lt;li&gt;tune the detail settings
In the settings editor you see additional options if you select the “Documentation Rules” root node&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure&gt;
 &lt;img src="http://blog.marko-apfel.de/posts/stylecop-throws-documentation-warning-sa1600-for-private-elements/StyleCop.Settings.01.png" alt="Screenshot for StyleCop throws documentation warning SA1600 for private elements" loading="lazy" decoding="async"&gt;&lt;/figure&gt;&lt;/p&gt;</description></item><item><title>Using a custom dictionary in code analysis</title><link>http://blog.marko-apfel.de/posts/using-a-custom-dictionary-in-code-analysis/</link><pubDate>Wed, 11 Nov 2009 09:22:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/using-a-custom-dictionary-in-code-analysis/</guid><description>&lt;p&gt;see also &lt;a href="http://blog.marko-apfel.de/posts/working-with-microsoft-fxcop/"&gt;Working with Microsoft FxCop&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;As described in the previous post a custom dictionary could be referenced in a FxCop-call of a target by using the option:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-cmd" data-lang="cmd"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;/dictionary:&lt;span class="p"&gt;&amp;amp;&lt;/span&gt;quot;$(ProjectDir)..\FxCop.CustomDictionary.xml&lt;span class="p"&gt;&amp;amp;&lt;/span&gt;quot;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;But how is it possible to publish this custom dictionary for the Visual Studio integrated code analysis?&lt;/p&gt;</description></item><item><title>Working with Microsoft FxCop</title><link>http://blog.marko-apfel.de/posts/working-with-microsoft-fxcop/</link><pubDate>Wed, 11 Nov 2009 09:06:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/working-with-microsoft-fxcop/</guid><description>&lt;h2 id="run-fxcop-as-a-post-build-event"&gt;Run FxCop as a post build event&lt;/h2&gt;
&lt;p&gt;Since FxCop 1.36 it is possible to include FxCop in a post-build event.&lt;/p&gt;
&lt;p&gt;&lt;figure&gt;
 &lt;img src="http://blog.marko-apfel.de/posts/working-with-microsoft-fxcop/developingtools-fxcop-01.png" alt="Screenshot for Working with Microsoft FxCop" loading="lazy" decoding="async"&gt;&lt;/figure&gt;&lt;/p&gt;
&lt;p&gt;So FxCop runs after compiling in Visual Studio and allows you directly jumping to the warned line.&lt;/p&gt;</description></item><item><title>ReSharper is not available</title><link>http://blog.marko-apfel.de/posts/resharper-is-not-available/</link><pubDate>Mon, 09 Nov 2009 07:23:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/resharper-is-not-available/</guid><description>&lt;p&gt;Today a colleague ask me to help.&lt;/p&gt;
&lt;p&gt;On his system all ReSharper menus are grayed out. Also the Visual Studio Add-In Manager does not show this add-in.&lt;/p&gt;
&lt;p&gt;He tried:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;a new installation: without success,&lt;/li&gt;
&lt;li&gt;running with administrative privileges: without success,&lt;/li&gt;
&lt;li&gt;looking in event- and application-logs: no entries.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;After searching a little bit with old buddy google we found this message: &lt;a href="http://resharper.blogspot.com/2008/10/wild-world-of-visual-studio-mysterious.html"&gt;Wild World of Visual Studio &amp;ndash; Mysterious Component&lt;/a&gt;&lt;/p&gt;</description></item><item><title>SAP.Net.Setup_2.0.msi throws “You must first install the Visual Studio.NET 7.1”</title><link>http://blog.marko-apfel.de/posts/sap-net-setup-2-0-msi-throws-you-must-first-install-the-visual-studio-net-7-1/</link><pubDate>Fri, 06 Nov 2009 04:29:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/sap-net-setup-2-0-msi-throws-you-must-first-install-the-visual-studio-net-7-1/</guid><description>&lt;p&gt;During installation of the SAP .NET Connector the setup throws this error because no Visual Studio 2003 could be found.&lt;/p&gt;
&lt;p&gt;If you only need the assembly sap.connector.dll (for instance in cases of old projects which references this dll) you could ask google for downloading it ;-)&lt;/p&gt;</description></item><item><title>Visual Studio: Building parts of a solution</title><link>http://blog.marko-apfel.de/posts/visual-studio-building-parts-of-a-solution/</link><pubDate>Sun, 01 Nov 2009 07:10:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/visual-studio-building-parts-of-a-solution/</guid><description>&lt;p&gt;Often in large solutions I had the problem that a couple of little chances needs building some projects. Unfortunately Visual Studio tends to build more projects than needed.&lt;/p&gt;
&lt;p&gt;Formerly I used the configuration manager to deactivate unused projects. This is a overhead which sucks.&lt;/p&gt;</description></item><item><title>Visual Studio Error: The item "*.resources" was specified more than once in the "Resources" parameter.</title><link>http://blog.marko-apfel.de/posts/visual-studio-error-the-item-resources-was-specified-more-than-once-in-the-resources-parameter/</link><pubDate>Fri, 30 Oct 2009 09:58:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/visual-studio-error-the-item-resources-was-specified-more-than-once-in-the-resources-parameter/</guid><description>&lt;p&gt;Full error message in Visual Studio output window:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-txt" data-lang="txt"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;The item `*.resources` was specified more than once in the &amp;#34;Resources&amp;#34; parameter. Duplicate items are not supported by the &amp;#34;Resources&amp;#34; parameter.
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;I saw this error on context of custom cultures usage. The compiling machine does not have a project used custom culture registered.&lt;/p&gt;</description></item><item><title>Visual Studio lists Error: “CA0503 : Additional code analysis warnings or errors cannot be displayed”</title><link>http://blog.marko-apfel.de/posts/visual-studio-lists-error-ca0503-additional-code-analysis-warnings-or-errors-cannot-be-displayed/</link><pubDate>Thu, 29 Oct 2009 05:54:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/visual-studio-lists-error-ca0503-additional-code-analysis-warnings-or-errors-cannot-be-displayed/</guid><description>&lt;p&gt;This error during compilation annoyed me in a legacy project.&lt;/p&gt;
&lt;p&gt;Apparently because of performance issues the &lt;em&gt;Visual Studio&lt;/em&gt; development team decided to limit the warnings of code analysis to 200 items.&lt;/p&gt;
&lt;p&gt;This behavior could be parameterized under:&lt;/p&gt;</description></item><item><title>Visual Studio 2005 and 2008 compatibility with ReSharper</title><link>http://blog.marko-apfel.de/posts/visual-studio-2005-and-2008-compatibility-with-resharper/</link><pubDate>Wed, 21 Oct 2009 08:57:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/visual-studio-2005-and-2008-compatibility-with-resharper/</guid><description>&lt;p&gt;In our team we have developers with Visual Studio 2005 and 2008. Often we have projects which must be coded by a mixed team.&lt;/p&gt;
&lt;h2 id="visual-studio-2005-and-2008-compatibility-for-project-files"&gt;Visual Studio 2005 and 2008 compatibility for project-files&lt;/h2&gt;
&lt;p&gt;Normally this is no problem because adding projects in Visual Studio 2005 and manually introducing the ToolsVersion=&amp;ldquo;2.0&amp;rdquo; attribute in the new csproj-file allows an coexisting working when using two sln-files for Visual Studio 2005 and 2008.&lt;/p&gt;</description></item><item><title>Nice tools for I18N</title><link>http://blog.marko-apfel.de/posts/nice-tools-for-i18n/</link><pubDate>Mon, 19 Oct 2009 06:43:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/nice-tools-for-i18n/</guid><description>&lt;p&gt;&lt;a href="http://www.codeplex.com/ResourceRefactoring"&gt;Resource Refactoring Tool&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;a nice tool under Visual Studio 2005 - but with Visual Studio 2008 a lot of peoples (including me) have troubles :-(&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.jollans.com/tiki/tiki-index.php"&gt;Multi-Language Add-In for Visual Studio&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;must be evaluated - looks fine&lt;/p&gt;</description></item><item><title>Post-build event with folders which contains spaces</title><link>http://blog.marko-apfel.de/posts/post-build-event-with-folders-which-contains-spaces/</link><pubDate>Mon, 27 Apr 2009 03:47:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/post-build-event-with-folders-which-contains-spaces/</guid><description>&lt;p&gt;If you want to use a Post-build event with folders which contains a space often you get an error like:&lt;/p&gt;
&lt;p&gt;The system cannot find the file specified.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-txt" data-lang="txt"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;c:\WINDOWS\Microsoft.NET\Framework\v3.5\Microsoft.Common.targets(3397,13):
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;error MSB3073: The command
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&amp;#34;COPY C:\Projekte\_Learning By Doing\EsriDE.QA.StyleCop\bin\Debug\EsriDE.QA.StyleCop.dll
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&amp;#34;C:\Program Files\Microsoft StyleCop 4.3&amp;#34;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;exited with code 1.
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;In my case I used the macro &lt;code&gt;$(TargetPath)&lt;/code&gt; in following line which contains indirectly the spaces in &lt;code&gt;_Learning By Doing&lt;/code&gt;:&lt;/p&gt;</description></item><item><title>Compiler-Error: error MSB3217</title><link>http://blog.marko-apfel.de/posts/compiler-error-error-msb3217/</link><pubDate>Thu, 08 Jan 2009 11:54:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/compiler-error-error-msb3217/</guid><description>&lt;p&gt;Since several days during compilation i had the error:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-txt" data-lang="txt"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Cannot register assembly &amp;#34;Foo.dll&amp;#34;.
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Exception has been thrown by the target of an invocation.
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;In the output-window with diagnostic compile information the following statement was listed:&lt;/p&gt;</description></item><item><title>Referenzieren von Assemblys im GAC</title><link>http://blog.marko-apfel.de/posts/referenzieren-von-assemblys-im-gac/</link><pubDate>Mon, 16 Apr 2007 16:00:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/referenzieren-von-assemblys-im-gac/</guid><description>&lt;p&gt;Das Referenzieren von Assemblys im GAC, die nicht auf dem .NET-Reiter des Add-Reference-Dialogs erscheinen macht man wie folgt:&lt;/p&gt;
&lt;p&gt;Auf den Browse-Reiter wechseln und im File-Name-Feld dann vollen Namen zur DLL im GAC angeben.&lt;/p&gt;</description></item><item><title>GACing und Kopieren nach dem Kompilieren</title><link>http://blog.marko-apfel.de/posts/gacing-und-kopieren-nach-dem-kompilieren/</link><pubDate>Thu, 08 Mar 2007 13:00:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/gacing-und-kopieren-nach-dem-kompilieren/</guid><description>&lt;p&gt;Beim Entwickeln eigener Functoide (Custom Functoids) und deren Verwendung im BizTalk Mapper muss das Kompilat sowohl in den GAC als auch ins Verzeichnis &lt;code&gt;c:\Program Files\Microsoft BizTalk Server 2006\Developer Tools\Mapper Extensions&lt;/code&gt; kopiert werden.&lt;/p&gt;</description></item><item><title>Eigene Assemblys im "Add Referenz"-Dialog von Visual Studio</title><link>http://blog.marko-apfel.de/posts/eigene-assemblys-im-add-referenz-dialog-von-visual-studio/</link><pubDate>Thu, 29 Jun 2006 17:45:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/eigene-assemblys-im-add-referenz-dialog-von-visual-studio/</guid><description>&lt;p&gt;Um eigene Assemblies auf dem Reiter .NET im &amp;ldquo;Add Referenz&amp;rdquo;-Dialog anzeigen zu lassen, gibt es verschiedene Möglichkeiten. Einige der im Netz zu findenden, haben bei mir nicht funktioniert.&lt;/p&gt;
&lt;p&gt;Aber die nachstehende:&lt;/p&gt;
&lt;h2 id="registry-einträge"&gt;Registry-Einträge&lt;/h2&gt;
&lt;p&gt;Man fügt im Registry-Editor unter
&lt;code&gt;HKEY\_CURRENT\_USER\SOFTWARE\Microsoft\.NETFramework\AssemblyFolders&lt;/code&gt;
einen neuen Schlüssel mit dem Namen der eigenen Entwicklung ein und setzt den Standardwert auf das Verzeichnis mit der DLL.&lt;/p&gt;</description></item><item><title>Developing own Custom Functoid for BizTalk</title><link>http://blog.marko-apfel.de/posts/developing-own-custom-functoid-for-biztalk/</link><pubDate>Fri, 28 Apr 2006 18:15:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/developing-own-custom-functoid-for-biztalk/</guid><description>&lt;p&gt;Eigene Functoide für den BizTalk zu entwickeln ist ziemlich easy. Die Dokumentation mit den Beispielen ist OK und ausreichend.&lt;/p&gt;
&lt;p&gt;Trotzdem gibt es ein paar Dinge die man im Eifer des Gefechtes schnell mal übersieht.&lt;/p&gt;</description></item></channel></rss>