user2455111 Asked:2020-11-14 14:59:34 +0000 UTC2020-11-14 14:59:34 +0000 UTC 2020-11-14 14:59:34 +0000 UTC 如何获得在 VS 中打开的相同程序集列表 772 如何以编程方式加载在框架选项卡中打开的程序集列表 以及如何加载程序集列表,扩展选项卡中显示的内容 c# 1 个回答 Voted Best Answer Yury Bakharev 2020-11-14T16:35:03Z2020-11-14T16:35:03Z 嗯,据我了解,任务是找到这些 dll 并获取它们,在一种情况下,所有带有系统标记的东西,而在另一种情况下,Microsoft.VisualStudio,通常,这些文件被复制到 GAC。从那里,我会像这样得到它们 static class Program { private static string WindDir = "C:\\Windows\\Microsoft.NET\\assembly\\GAC_MSIL"; private static string ExtensionSystem = "C:\\ExtensionSystem"; private static string ExtensionVS = "C:\\ExtensionVS"; static void Main() { string[] directorys = Directory.GetDirectories(WindDir); Directory.CreateDirectory("C:\\ExtensionSystem"); Directory.CreateDirectory("C:\\ExtensionVS"); GetSystemExtension(directorys, "System.", ExtensionSystem); GetSystemExtension(directorys, "Microsoft.VisualStudio", ExtensionVS); } private static void GetSystemExtension(string[] directorys, string extension, string targedFolder) { foreach(string dir in directorys) { if ((dir.Contains(extension) && !dir.Contains("ProjectSystem") && !dir.Contains("TypeSystem") && !dir.Contains("TeamSystem")) && !dir.Contains(".resources") ||( Path.GetFileName(dir) == "System")) { string[] directorySystem = Directory.GetDirectories(Path.Combine(WindDir, dir)); string[] files = Directory.GetFiles(directorySystem[0]); File.Copy(files[0], Path.Combine(targedFolder, Path.GetFileName(files[0]))); } } } } 据我了解,这仅适用于 .Net 4.0 的版本
嗯,据我了解,任务是找到这些 dll 并获取它们,在一种情况下,所有带有系统标记的东西,而在另一种情况下,Microsoft.VisualStudio,通常,这些文件被复制到 GAC。从那里,我会像这样得到它们
据我了解,这仅适用于 .Net 4.0 的版本