Microsoft KB Archive/246195: Difference between revisions

From BetaArchive Wiki
(importing KB archive)
 
m (Text replacement - """ to """)
 
Line 92: Line 92:
   public static void main(String args[])
   public static void main(String args[])
   {
   {
       String key = "Software\\Microsoft\\Java VM\\MSDEBUG";
       String key = "Software\\Microsoft\\Java VM\\MSDEBUG";
       RegistryKey hklm = Registry.LOCAL_MACHINE;
       RegistryKey hklm = Registry.LOCAL_MACHINE;
       if (hklm.getSubKey(key) != null)
       if (hklm.getSubKey(key) != null)
       {
       {
         hklm.deleteSubKey(key);
         hklm.deleteSubKey(key);
         System.out.println("Deleted MSDEBUG key.");
         System.out.println("Deleted MSDEBUG key.");
       }
       }
       else
       else
       {
       {
         System.out.println("MSDEBUG key was not present.");
         System.out.println("MSDEBUG key was not present.");
       }
       }
   }
   }

Latest revision as of 12:49, 21 July 2020

Knowledge Base


Article ID: 246195

Article Last Modified on 6/14/2006



APPLIES TO

  • Microsoft Visual J++ 6.0 Standard Edition



This article was previously published under Q246195

Important This article contains information about how to modify the registry. Make sure to back up the registry before you modify it. Make sure that you know how to restore the registry if a problem occurs. For more information about how to back up, restore, and modify the registry, click the following article number to view the article in the Microsoft Knowledge Base:

256986 Description of the Microsoft Windows registry


SYMPTOMS

If a Java-implemented Component Object Model (COM) object is set to run under the system surrogate (DLLHOST), the surrogate may not close after the COM object has been destroyed.

CAUSE

Visual J++ 6.0 creates the following registry entry:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Java VM\MSDebug


When this entry is set, the DLLHOST process is kept alive.

RESOLUTION

Warning Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall your operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk.
You can resolve this problem manually or programmatically. To resolve this problem manually, use the Registry Editor (Regedit.exe) to delete the following registry entry:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Java VM\MSDebug


To programmatically remove the registry entry, follow these steps:

  1. Copy the following code:

    import com.ms.wfc.app.*;
    public class DeleteKey
    {
       public static void main(String args[])
       {
          String key = "Software\\Microsoft\\Java VM\\MSDEBUG";
          RegistryKey hklm = Registry.LOCAL_MACHINE;
          if (hklm.getSubKey(key) != null)
          {
             hklm.deleteSubKey(key);
             System.out.println("Deleted MSDEBUG key.");
          }
          else
          {
             System.out.println("MSDEBUG key was not present.");
          }
       }
    }
                        
  2. At a command prompt, type the following command:

    jview DeleteKey

NOTE: Running the Visual J++ debugger again only adds this registry entry again.

REFERENCES

For support information about Visual J++ and the SDK for Java, visit the following Microsoft Web site:


Additional query words: terminate

Keywords: kbbug kbjava kbdebug kbprb KB246195