C# c语言中MMC的开发#

C# c语言中MMC的开发#,c#,mmc,C#,Mmc,嗨,我正在开发MMC管理单元C# 在本文中,我想读取XML文件,以便将XML文件放在何处 代码没有给出任何构建错误,但是当我在MMC中添加管理单元时,它给出了如何做的错误 [SnapInSettings("{2078B103-76FF-46E1-95BB-8B2CE3A72E60}", DisplayName = "Configuration", Description = "abc Pvt Ltd.") ] public class Mymmc : Sn

嗨,我正在开发MMC管理单元C#

在本文中,我想读取XML文件,以便将XML文件放在何处

代码没有给出任何构建错误,但是当我在MMC中添加管理单元时,它给出了如何做的错误

[SnapInSettings("{2078B103-76FF-46E1-95BB-8B2CE3A72E60}", 
     DisplayName = "Configuration", 
     Description = "abc Pvt Ltd.")
    ]
    public class Mymmc : SnapIn
    {
        XDocument xDoc;
        public Sararmmc()
        {
            ScopeNode childscopenode;
            xDoc = XDocument.Load("MMCSnapinXML.xml");
            IEnumerable<XElement> xelements = xDoc.Root.Descendants();
            this.RootNode = new ScopeNode();
            this.RootNode.DisplayName = xDoc.Root.Attribute("name").Value;
            foreach (XElement elm in xelements)
            {
                childscopenode = new ScopeNode();
                childscopenode.DisplayName = elm.Attribute("name").Value;
                this.RootNode.Children.Add(childscopenode);
            }

        }

    }

构造函数中可能会抛出许多异常(堆栈跟踪表明这是错误的来源)。这可能是XDocument.Load上引发的格式错误的XML异常,如果您正在访问的任何命名节点/属性不存在,也可能是null引用异常。它可能是一个找不到文件的异常,甚至是一个SecurityException-它甚至可能是更模糊的东西,例如MMC要求对程序集进行签名。。如果不知道你遇到了什么样的异常情况,任何人都很难帮助你


正如我在评论中所说,当您在运行时收到无法轻松解释的错误时,在应用程序中进行详细的日志记录变得非常有价值!NLog和log4net是.NET应用程序最流行的两种日志框架

构造函数中可能会抛出许多异常(堆栈跟踪表明这是错误的来源)。这可能是XDocument.Load上引发的格式错误的XML异常,如果您正在访问的任何命名节点/属性不存在,也可能是null引用异常。它可能是一个找不到文件的异常,甚至是一个SecurityException-它甚至可能是更模糊的东西,例如MMC要求对程序集进行签名。。如果不知道你遇到了什么样的异常情况,任何人都很难帮助你


正如我在评论中所说,当您在运行时收到无法轻松解释的错误时,在应用程序中进行详细的日志记录变得非常有价值!NLog和log4net是.NET应用程序中最流行的两个日志框架

您会遇到什么错误/异常?请解释您会遇到什么类型的错误!!!!!!!!!你的代码有日志记录吗?如果没有,则是时候开始了;)您遇到了什么错误/异常?请解释您遇到的错误类型!!!!!!!!!你的代码有日志记录吗?如果没有,则是时候开始了;)matt我得到了解决方案实际上我把我的MMCSnapinXML保存在system32文件夹中,但它在user文件夹中看起来是相同的文件,没有得到xml文件很高兴你对它进行了排序,但请接受我的建议:记录:)matt我得到了解决方案实际上我把我的MMCSnapinXML保存在system32文件夹中,但是它在用户文件夹中看起来是同一个文件,没有得到xml文件很高兴您对它进行了排序,但请接受我的建议:记录:)
Server stack trace: 
   at System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandle& ctor, Boolean& bNeedSecurityCheck)
   at System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean fillCache)
   at System.RuntimeType.CreateInstanceImpl(Boolean publicOnly, Boolean skipVisibilityChecks, Boolean fillCache)
   at System.Activator.CreateInstance(Type type, Boolean nonPublic)
   at System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)
   at System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)
   at System.Activator.CreateInstance(String assemblyName, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityInfo, StackCrawlMark& stackMark)
   at System.Activator.CreateInstance(String assemblyName, String typeName)
   at System.AppDomain.CreateInstance(String assemblyName, String typeName)
   at System.AppDomain.CreateInstanceAndUnwrap(String assemblyName, String typeName)
   at Microsoft.ManagementConsole.Internal.SnapInClient.CreateSnapIn(String assemblyName, String typeName)
   at Microsoft.ManagementConsole.Internal.ClassLibraryServices.Microsoft.ManagementConsole.Internal.IClassLibraryServices.CreateSnapIn(String assemblyName, String typeName)
   at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs)
   at System.Runtime.Remoting.Messaging.StackBuilderSink.PrivateProcessMessage(RuntimeMethodHandle md, Object[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs)
   at System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg, Int32 methodPtr, Boolean fExecuteInContext)

Exception rethrown at [0]: 
   at Microsoft.ManagementConsole.Executive.SnapInInitializationOperation.OnStart()
   at Microsoft.ManagementConsole.Executive.Operation.Start()
   at Microsoft.ManagementConsole.Executive.RunningOperationsTable.EnqueueOperation(Operation operation)
   at Microsoft.ManagementConsole.Executive.StandAloneComponentData..ctor(SnapInRegistrationInfo info, Int32 bookkeepingId)
   at Microsoft.ManagementConsole.Advanced.FrameworkSnapInFactory.Microsoft.ManagementConsole.Advanced.ISnapInFactory.CreateSnapIn(Int32 bookkeepingId, String snapInKey, Object& snapIn)