diff --git a/base/src/TSystem.cxx b/base/src/TSystem.cxx
index f8dda2cdde98b30d42bd9eb37416febb7a0bb251..2d9209483ea463c324098c9e86262bcc08ae52f6 100644
--- a/base/src/TSystem.cxx
+++ b/base/src/TSystem.cxx
@@ -1,4 +1,4 @@
-// @(#)root/base:$Name:  $:$Id: TSystem.cxx,v 1.88 2004/06/04 16:47:57 rdm Exp $
+// @(#)root/base:$Name:  $:$Id: TSystem.cxx,v 1.89 2004/06/05 05:22:22 brun Exp $
 // Author: Fons Rademakers   15/09/95
 
 /*************************************************************************
@@ -1334,7 +1334,7 @@ const char *TSystem::GetLibraries(const char *regexp, const char *options,
 
    if ((opt.Length()==0) || (opt.First('S')!=kNPOS)) {
       if (!libs.IsNull()) libs.Append(" ");
-#ifndef WIN32
+//#ifndef WIN32
       const char *linked;
       if ((linked = GetLinkedLibraries())) {
          if (fLinkedLibs != LINKEDLIBS) {
@@ -1351,7 +1351,7 @@ const char *TSystem::GetLibraries(const char *regexp, const char *options,
             libs.Append(linked);
          }
       } else
-#endif
+//#endif
          libs.Append(fLinkedLibs);
    }
 
diff --git a/winnt/src/TWinNTSystem.cxx b/winnt/src/TWinNTSystem.cxx
index f47505c2a23ce73b3320f425e529702954761f81..20b323a94d657ea32cd0654ab9396e9bcf0ff4c3 100644
--- a/winnt/src/TWinNTSystem.cxx
+++ b/winnt/src/TWinNTSystem.cxx
@@ -1,4 +1,4 @@
-// @(#)root/winnt:$Name:  $:$Id: TWinNTSystem.cxx,v 1.91 2004/05/28 20:21:38 brun Exp $
+// @(#)root/winnt:$Name:  $:$Id: TWinNTSystem.cxx,v 1.92 2004/06/03 13:29:09 brun Exp $
 // Author: Fons Rademakers   15/09/95
 
 /*************************************************************************
@@ -2806,6 +2806,11 @@ const char *TWinNTSystem::GetLinkedLibraries()
 {
    // Get list of shared libraries loaded at the start of the executable.
    // Returns 0 in case list cannot be obtained or in case of error.
+   char winPath[256];
+   char winDrive[256];
+   char winDir[256];
+   char winName[256];
+   char winExt[256];
 
    if (!gApplication) return 0;
 
@@ -2902,9 +2907,14 @@ const char *TWinNTSystem::GetLinkedLibraries()
                   if (dll.EndsWith(".dll")) {
                      char *dllPath = DynamicPathName(dll, kTRUE);
                      if (dllPath) {
-                        if (!linkedLibs.IsNull())
-                           linkedLibs += " ";
-                        linkedLibs += dllPath;
+                        char *winPath = getenv("windir");
+                        _splitpath(winPath,winDrive,winDir,winName,winExt);
+                        if(!strstr(dllPath, winDir)) {
+                           if (!linkedLibs.IsNull())
+                              linkedLibs += " ";
+                           linkedLibs += dllPath;
+                        }
+                        delete [] winPath;
                      }
                      delete [] dllPath;
                   }