diff -durN a/src/GvimExt/gvimext.cpp b/src/GvimExt/gvimext.cpp
--- a/src/GvimExt/gvimext.cpp	Sat Jul 10 17:21:34 2010
+++ b/src/GvimExt/gvimext.cpp	Wed Jun 22 10:06:27 2011
@@ -586,8 +586,23 @@
 
     // Initialize m_cntOfHWnd to 0
     m_cntOfHWnd = 0;
+
+    HKEY keyhandle;
+    bool showExisting = true;
+
+    // Check whether "Edit with existing Vim" entries are disabled.
+    if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, "Software\\Vim\\Gvim", 0,
+				       KEY_READ, &keyhandle) == ERROR_SUCCESS)
+    {
+	if (RegQueryValueEx(keyhandle, "DisableEditWithExisting", 0, NULL,
+						 NULL, NULL) == ERROR_SUCCESS)
+	    showExisting = false;
+	RegCloseKey(keyhandle);
+    }
+
     // Retrieve all the vim instances
-    EnumWindows(EnumWindowsProc, (LPARAM)this);
+    if (showExisting)
+	EnumWindows(EnumWindowsProc, (LPARAM)this);
 
     if (cbFiles > 1)
     {
