AnkhSVN (Visual Studio Subversion integration) on Vista

November 17th 2007 • .NET (, , , ) • 14,886 views • 27 responses

Try the new AnkhSVN 1.0.3 preview release

As a number of people have found our popular free Subversion plug-in for Visual Studio, AnkhSVN, has an issue with Vista but a fix is at hand!

Until we can get another build of AnkhSVN out simply:

  1. Uninstall AnkhSVN
  2. Run one of the following registry files on your machine
  3. Reinstall AnkhSVN choosing the Install for all users option

Download AnkhSVN fix 32-bit (Windows Registry REG) (2 KB)

Download AnkhSVN fix 64-bit (Windows Registry REG) (2 KB)

These keys also contain the Visual Studio 2008 fix and should work fine on Window XP too.

Thanks to Jon Skeet, Arild Fines and Jesse Johnston who helped find the solution.

[)amien

Related content

27 responses  

  1. Pingback AnkhSVN and Visual Studio 2007/2008/Orcas » DamienG on November 17th, 2007

    [...] newer registry file is available to provide AnkhSVN with Visual Studio 2008 and Vista support in [...]

  2. Josh Santangelo on November 19th, 2007

    But it still doesn’t work with VS 2008, does it?

  3. Victor Rudosch on November 20th, 2007

    With that fix AnkhSVN works fine in VS 2008. Many thanks!

  4. Jack on November 23rd, 2007

    It works partially for me.

    I could see the menu Tools | AnkhSVN.

    In the Solution Folder, most of the files has the green tick marks. When I right click on the project, which has either the green tick mark or the square icon, I cannot see the AnkhSVN menu items like ‘Commit’, ‘Update’, as well as the AnkhSVN cascade menu.

    It is strange. Could this the problem with .svn vs _svn as I am still using .svn and the projects are just WinForm applications?

    I have to get outside to use TSVN to perform the check in, come back to the VS2008, right click on the Solution, press Update to update the rest, which seems to work.

  5. Pavel on November 23rd, 2007

    In this registry file your must change “SatelliteDllPath”=”C:\\Program Files\\AnkhSVN\\”
    to the actual install path, because it won’t be 100% program files

  6. Jack on November 24th, 2007

    I did and I made sure of that. Still not 100% reliable on the solution explorer as reported. I have even copy the BitmapDll.dll from 1033 up to the AnkhSVN root, just in case.

    As a check, I flicked over to VS2005 and open a project I have yet to convert to VS2008 and AnkhSVN worked flawlessly there.

    Two things of interest:
    1) The Project element in the csproj file for VS2008 has additional attribute – ToolsVersion. Could this throw the AnkhSVN off course failing to bring up the AnkhSVN related menu items for the project files in the Solution Explorer?

    2) From time to time, it also seems to have failure to recognize that I have changed things in AssemblyInfo.cs, which is in the Properties sub-folder.

  7. B Kimball on December 1st, 2007

    I put on the x64 version of the patch on my machine, running Win XP Pro x64 Edition. When I go to run a web application in VS2008, right before the browser opens I get the following:

    -----------------------------------------------------------
    System.Runtime.InteropServices.COMException:
    Member not found. (Exception from HRESULT: 0x80020003 (DISP_E_MEMBERNOTFOUND))
    at EnvDTE.Project.get_FullName()
    at Ankh.Solution.ProjectNode.FindProjectResources(Explorer explorer) in D:\tmp\build-26\src\Ankh\Solution\ProjectNode.cs:line 85
    at Ankh.Solution.SolutionExplorerTreeNode.CreateNode(UIHierarchyItem item, IntPtr hItem, Explorer explorer, SolutionExplorerTreeNode parent) in D:\tmp\build-26\src\Ankh\Solution\SolutionExplorerTreeNode.cs:line 87
    at Ankh.Solution.SolutionExplorerTreeNode.FindChildren() in D:\tmp\build-26\src\Ankh\Solution\SolutionExplorerTreeNode.cs:line 270
    at Ankh.Solution.SolutionNode..ctor(UIHierarchyItem item, IntPtr hItem, Explorer explorer) in D:\tmp\build-26\src\Ankh\Solution\SolutionNode.cs:line 36
    at Ankh.Solution.SolutionExplorerTreeNode.CreateSolutionNode(UIHierarchyItem item, Explorer explorer) in D:\tmp\build-26\src\Ankh\Solution\SolutionExplorerTreeNode.cs:line 127
    at Ankh.Solution.Explorer.SolutionLoadStrategy.Load(Explorer outer) in D:\tmp\build-26\src\Ankh\Solution\Explorer.cs:line 816
    at Ankh.Solution.Explorer.SolutionLoadStrategy2005.DoLoad() in D:\tmp\build-26\src\Ankh\Solution\Explorer.cs:line 951
    
    dte=9.0&
    
    Version: 1.0.2.2778
    -----------------------------------------------

    Anyone have any ideas on what to do about that one?

  8. Paul on December 6th, 2007

    When I do as written, I get the following errors when launching VS2008:

    —————————
    An error occurred while Ankh was loading (Press Ctrl-C to copy this message to the clipboard)
    —————————
    System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.

    at EnvDTE.Window.set_Visible(Boolean pfVisible)

    at Ankh.UIShell.CreateRepositoryExplorer() in D:\tmp\build-26\src\Ankh\UIShell.cs:line 452

    at Ankh.UIShell.get_RepositoryExplorer() in D:\tmp\build-26\src\Ankh\UIShell.cs:line 32

    at Ankh.RepositoryExplorer.Controller..ctor(IContext context) in D:\tmp\build-26\src\Ankh\RepositoryExplorer\Controller.cs:line 25

    at Ankh.AnkhContext..ctor(_DTE dte, AddIn addin, IUIShell uiShell) in D:\tmp\build-26\src\Ankh\AnkhContext.cs:line 73

    at Ankh.Connect.OnConnection(Object application, ext_ConnectMode connectMode, Object addInInst, Array& custom) in D:\tmp\build-26\src\Ankh\Connect.cs:line 89
    —————————
    OK
    —————————

    —————————
    An error occurred while Ankh was loading (Press Ctrl-C to copy this message to the clipboard)
    —————————
    System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.

    at EnvDTE.Window.set_Visible(Boolean pfVisible)

    at Ankh.UIShell.CreateRepositoryExplorer() in D:\tmp\build-26\src\Ankh\UIShell.cs:line 452

    at Ankh.UIShell.get_RepositoryExplorer() in D:\tmp\build-26\src\Ankh\UIShell.cs:line 32

    at Ankh.RepositoryExplorer.Controller..ctor(IContext context) in D:\tmp\build-26\src\Ankh\RepositoryExplorer\Controller.cs:line 25

    at Ankh.AnkhContext..ctor(_DTE dte, AddIn addin, IUIShell uiShell) in D:\tmp\build-26\src\Ankh\AnkhContext.cs:line 73

    at Ankh.Connect.OnConnection(Object application, ext_ConnectMode connectMode, Object addInInst, Array& custom) in D:\tmp\build-26\src\Ankh\Connect.cs:line 89
    —————————
    OK
    —————————

    I use AnkhSetup-1.0.2.2778-Final.msi and the 32 bit fix.

  9. Damien Guard on December 6th, 2007

    Yes, there is still that issue which seems to occur in some environments and not others. Arild is investigating.

    [)amien

  10. George S on December 17th, 2007

    You have to disable Data Execution Prevention:

    Run

    bcdedit.exe /set {current} nx AlwaysOff

    Then reboot. Everything should work fine.

  11. Robert on December 18th, 2007

    I have the same System.AccessViolationException error as Paul.

    Applied reg patchand reinstalled, disabled Data Execution Prevention – still the same problem.

    VS 2008 on Vista Business.

  12. Michael on December 18th, 2007

    When I disabled DEP it gave me a boot loop bsod with the 0x0000007B error, which I had to fix by reenabling DEP through WinRE. So just be careful with that, I do not know why it only happened to me, but I guess I will need to wait for Ankhsvn to fix this normally.

    Is there some way to use the exclude function in DEP to exclude ankhsvn? I notice devenv for VS2008 cannot be excluded, but is there another exe that runs, that would cause the memory modification?

  13. Pedro S on December 28th, 2007

    I recently started to use AnkhSVN with visual studio 2008, and the reg fix the cmd line “bcdedit.exe /set {current} nx AlwaysOff ” and reboot worked just fine.

    Thanks for the fix.

  14. Damien Guard on January 21st, 2008

    This is the same error as reported above. A temporary fix is to use bcdedit.exe /set {current} nx AlwaysOff although a new version of AnkhSVN that addresses this is due soon.

    [)amien

  15. Petr M. on January 21st, 2008

    I try clean install of VS 2008 on my computer (win. Vista). And this fix does not work. After ankh install I get this error message while loading VS. Do you have solution for this?

    Petr M.

    ---------------------------
    An error occurred while Ankh was loading (Press Ctrl-C to copy this message to the clipboard)
    ---------------------------
    System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
    
       at EnvDTE.Window.set_Visible(Boolean pfVisible)
    
       at Ankh.UIShell.CreateRepositoryExplorer() in D:\tmp\build-26\src\Ankh\UIShell.cs:line 452
    
       at Ankh.UIShell.get_RepositoryExplorer() in D:\tmp\build-26\src\Ankh\UIShell.cs:line 32
    
       at Ankh.RepositoryExplorer.Controller..ctor(IContext context) in D:\tmp\build-26\src\Ankh\RepositoryExplorer\Controller.cs:line 25
    
       at Ankh.AnkhContext..ctor(_DTE dte, AddIn addin, IUIShell uiShell) in D:\tmp\build-26\src\Ankh\AnkhContext.cs:line 73
    
       at Ankh.Connect.OnConnection(Object application, ext_ConnectMode connectMode, Object addInInst, Array& custom) in D:\tmp\build-26\src\Ankh\Connect.cs:line 89
    ---------------------------
    OK
    ---------------------------
  16. Julien Ferraro on January 25th, 2008

    IT WORKS !!!!

    The version 1.0.3.2815 works nice with Vista x64 and VS 2008

    THANK YOU VERY MUCH !

  17. Jack on January 25th, 2008

    Hi everyone,

    Just installed the AnkhSVN 1.0.3.2815 on XP Pro SP2 with VS2008 VSTS and I would like to thank everyone that my earlier reported problems have not been fixed.

    Great job everybody.

    Jack

  18. Jack on January 25th, 2008

    Hi everyone,

    Just one problem with 1.0.3.2815 and that is visual distortion when running in a machine with 120DPI display setting.

    In the commit dialog box the “Press Ctrl-Enter to Commit” text runs into the “Commit” button.

    Jack

  19. Pingback flx. » Ankh SVN und Visual Studio 2008 on February 22nd, 2008

    [...] http://damieng.com/blog/2007/11/17/ankhsvn-visual-studio-subversion-integration-on-vista Q: [...]

  20. ketiko on March 2nd, 2008

    Installed AnkhSVN 1.0.3.2815 on XP Pro SP2 with VS2008 VSTS and I get the same connect.cs line 89 System.AccessViolationException to protected memory error. I still can’t run ankhsvn on my computer. I’ve tried all the above fixes. Does anyone know if there is a fix? Do you need any info frm me? How can I get this resolved?

  21. James on March 4th, 2008

    I had the same issues as above – System.AccessViolationException to protected memory . . . . using AnkhSVN 1.0.3.2823-Trunk.msi on XP Pro SP2 with VS 2008 – what I had also installed was TortoiseSVN 1.4.8 and Subversion 1.4.6 windows installer – the issue I had was in the Subversion 1.4.6 windows installer package – uninstall Subversion 1.4.6 and then download the zip file for Subversion 1.4.6 and unzip everything works GREAT!!!

  22. Matt on March 11th, 2008

    Great Stuff!!

    Works fine with VS2008 on Server 2003 with Ankh 1.0.2.2778 final.

    Thanks

  23. Frank on April 16th, 2008

    James’ solution works but with one exception. If you need VB6 support the SVNVB6 this fix breaks the support. The one key difference is that a directory named “helpers” is missing from the .zip with a single file “svnpath.exe”. Restore this file from the full install of Subversion and the VB6 support will once again be functional.

  24. Vishalgiri Goswami on May 24th, 2008

    I tried everything but nothing worked for me.

    Then I tried what James suggested on Mar 4th, 2008 at 22:03

    So I found the problem was in subversion and not in ankhsvn.

    I uninstalled the subversion and downloaded zip of the same and then configured.

    Now everything is working fine.

    I am thinking to re-enable DEP.

  25. Bert Huijben on July 14th, 2008

    AnkhSVN 2.0 is just released. It has full VS 2005 and VS 2008 support built in and works correctly on Windows 2000, XP, 2003 and Vista.

  26. CM on July 21st, 2008

    Hi Bert, I’m running AnkhSVN 2.0 on Win2k using VS05 to support Classic ASP sites and have proof Ankh causes a problem in that configuration. It appears Ankh changes the registry settings the macros rely on. If I install Ankh I get Visual Studio Macro errors similar to: Exception from HRESULT: 0x8971001E AND sometimes have to reboot the whole system as I couldn’t even open paint to print out the error.
    If I uninstall Ankh, manually delete the Visual Studio registry keys and reinstall VS I can run macros just fine. The second I install Ankh, without touching one other thing, I get these errors. [Other features of Ankh that I tested (prior to the error) such as committing, updating, comparing versions and visual cues to what exists in Subversion seem to work beautifully.] I have reproduced the error several times identifying Ankh as the culprit although I have not identified the precise registry key. I know my configuration is unusual and not supported by MS but I was hoping you might be able to tell me exactly what Ankh changes in the Visual Studio registry. [P.S. I did recieve another error earlier on, before the macro one, that Ankh complained about there being no web.config file in the same parent path of the local IIS site. But there is no web.config file for my Classic ASP site and I don't want one there because then VS wants to compile the site as .NET. I can successfully work with the Classic ASP site including using the debugger without that file. Is this a clue and/or related to what Ankh wants or expects wrt the macro issue and/or wrt the memory exception errors noted by other posters here?] Any direction you or another reader could provide would be appreciated.

    Thanks much, Chris

  27. Johan on August 8th, 2009

    Hi,

    The new version (AnkhSvn-2.1.7115.172) is a bit corrupt – get package load failures. However new daily build (AnkhSvn-Daily-2.1.7143.182) works fine on my Win2008 x64 with VS 2008.

    Cheers,
    Johan

Leave your response

  1. (kept private)