C# 未处理System.InvalidOperationException HResult=-2146233079

本文主要是介绍C# 未处理System.InvalidOperationException HResult=-2146233079,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.异常信息:

未处理System.InvalidOperationException
  HResult=-2146233079
  Message=The custom trace listener 'custom listener' does not have a listener type name set or the type is invalid (F:\CBCT64\Output\Polaris.exe.Config line 45).
  Source=Microsoft.Practices.EnterpriseLibrary.Logging
  StackTrace:
       在 Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.BasicCustomTraceListenerData.GetConstructor(Type[] constructorParameters)
       在 Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.BasicCustomTraceListenerData.CoreBuildTraceListener(LoggingSettings settings)
       在 Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.CustomTraceListenerData.CoreBuildTraceListener(LoggingSettings settings)
       在 Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.TraceListenerData.BuildTraceListener(LoggingSettings settings)
       在 Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.LoggingSettings.BuildTraceListener(String name, ConfigurationElement requestor)
       在 Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.LoggingSettings.<>c__DisplayClass45_0.<BuildTraceSource>b__0(TraceListenerReferenceData tln)
       在 System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
       在 System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
       在 Microsoft.Practices.EnterpriseLibrary.Logging.LogSource..ctor(String name, IEnumerable`1 traceListeners, SourceLevels level, Boolean autoFlush)
       在 Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.LoggingSettings.BuildTraceSource(TraceSourceData tsd, Dictionary`2 listeners)
       在 Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.LoggingSettings.<>c__DisplayClass44_0.<BuildLogWriter>b__1(TraceSourceData tsd)
       在 System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement](IEnumerable`1 source, Func`2 keySelector, Func`2 elementSelector, IEqualityComparer`1 comparer)
       在 System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement](IEnumerable`1 source, Func`2 keySelector, Func`2 elementSelector)
       在 Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.LoggingSettings.BuildLogWriter()
       在 Microsoft.Practices.EnterpriseLibrary.Logging.LogWriterFactory.LogWriterConfigurationBuilder.Create()
       在 Microsoft.Practices.EnterpriseLibrary.Logging.LogWriterFactory.Create()
       在 Foundation.Logger.Logger.SetLogWriter()
       在 Polaris.EntryPoint.Main(String[] args)
  InnerException: 
       FileName=LogViewerByMonth, Culture=neutral
       FusionLog==== 预绑定状态信息 ===
日志: DisplayName = LogViewerByMonth, Culture=neutral
 (Partial)
警告: 为程序集提供了部分绑定信息:
警告: 程序集名称: LogViewerByMonth, Culture=neutral | 域 ID: 1
警告: 当仅提供程序集显示名称的一部分时,将发生部分绑定。
警告: 这可能导致联编程序加载错误的程序集。
警告: 建议为程序集提供完全指定的文字标识,
警告: 并由简单名称、版本、区域性和公钥标记组成。
警告: 有关此问题的详细信息和常见解决方案,请参见白皮书 http://go.microsoft.com/fwlink/?LinkId=109270。
日志: Appbase = file:///F:/CBCT64/Output/
日志: 初始 PrivatePath = NULL
调用程序集: Microsoft.Practices.EnterpriseLibrary.Common, Version=6.0.0.0, Culture=neutral, PublicKeyToken=null。
===
日志: 此绑定从 default 加载上下文开始。
日志: 正在使用应用程序配置文件: F:\CBCT64\Output\Polaris.exe.Config
日志: 使用主机配置文件: 
日志: 使用 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\config\machine.config 的计算机配置文件。
日志: 此时没有为引用应用策略(私有、自定义、分部或基于位置的程序集绑定)。
日志: 尝试下载新的 URL file:///F:/CBCT64/Output/LogViewerByMonth.DLL。
日志: 尝试下载新的 URL file:///F:/CBCT64/Output/LogViewerByMonth/LogViewerByMonth.DLL。
日志: 尝试下载新的 URL file:///F:/CBCT64/Output/LogViewerByMonth.EXE。
错误: 未能完成程序集的安装(hr = 0x8007000b)。探测终止。

       HResult=-2147024885
       Message=未能加载文件或程序集“LogViewerByMonth, Culture=neutral”或它的某一个依赖项。试图加载格式不正确的程序。
       Source=mscorlib
       StackTrace:
            在 System.RuntimeTypeHandle.GetTypeByName(String name, Boolean throwOnError, Boolean ignoreCase, Boolean reflectionOnly, StackCrawlMarkHandle stackMark, IntPtr pPrivHostBinder, Boolean loadTypeFromPartialName, ObjectHandleOnStack type)
            在 System.RuntimeTypeHandle.GetTypeByName(String name, Boolean throwOnError, Boolean ignoreCase, Boolean reflectionOnly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean loadTypeFromPartialName)
            在 System.Type.GetType(String typeName, Boolean throwOnError)
            在 Microsoft.Practices.EnterpriseLibrary.Common.Configuration.AssemblyQualifiedTypeNameConverter.ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, Object value)
            在 Microsoft.Practices.EnterpriseLibrary.Common.Configuration.NameTypeConfigurationElement.get_Type()
            在 Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.BasicCustomTraceListenerData.GetConstructor(Type[] constructorParameters)
       InnerException: 
 

2.解决方法

(1)检查 Polaris.exe.Config 文件,确保custom listener节点配置正确。确认自定义跟踪侦听器的名称是否正确,以及是否设置了正确的侦听器类型名称。

<add name="custom listener" />

(2)在问题描述中可以看到红色字体部分,重新生成“LogViewerByMonth”项目。

 

其他注意点

  1. 确认自定义跟踪侦听器的类是否存在,并且它实现了正确的接口。确保类的名称与配置文件中指定的侦听器类型名称匹配。
  2. 检查自定义跟踪侦听器的代码,确保它正确地实现了必要的接口和方法。确保类的构造函数没有任何错误或异常。
  3. 如果可能的话,尝试重新编译和部署应用程序,以确保所有的依赖项都正确加载。
  4. 如果问题仍然存在,可能需要查看更详细的错误信息或日志,以获取更多的上下文和线索。查看应用程序的日志文件或使用调试工具来获取更详细的错误信息。

 

3.其他问题

未处理System.TypeInitializationException
  HResult=-2146233036
  Message=“ExaminationUI.IPWInitliazer”的类型初始值设定项引发异常。
  Source=ExaminationUI
  TypeName=ExaminationUI.IPWInitliazer
  StackTrace:
       在 ExaminationUI.IPWInitliazer.Initlizer()
       在 ExaminationUI.Examation..ctor()
       在 Polaris.EntryPoint.Main(String[] args)
  InnerException: 
       FileName=XRayIPWraper, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
       FusionLog==== 预绑定状态信息 ===
日志: DisplayName = XRayIPWraper, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
 (Fully-specified)
日志: Appbase = file:///F:/CBCT64/Output/
日志: 初始 PrivatePath = NULL
调用程序集: ExaminationUI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null。
===
日志: 此绑定从 default 加载上下文开始。
日志: 正在使用应用程序配置文件: F:\CBCT64\Output\Polaris.exe.Config
日志: 使用主机配置文件: 
日志: 使用 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\config\machine.config 的计算机配置文件。
日志: 此时没有为引用应用策略(私有、自定义、分部或基于位置的程序集绑定)。
日志: 尝试下载新的 URL file:///F:/CBCT64/Output/XRayIPWraper.DLL。
错误: 未能完成程序集的安装(hr = 0x8007000b)。探测终止。
 

解决方案同上。

 

这篇关于C# 未处理System.InvalidOperationException HResult=-2146233079的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/465309

相关文章

C#如何调用C++库

《C#如何调用C++库》:本文主要介绍C#如何调用C++库方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录方法一:使用P/Invoke1. 导出C++函数2. 定义P/Invoke签名3. 调用C++函数方法二:使用C++/CLI作为桥接1. 创建C++/CL

Java 中的 @SneakyThrows 注解使用方法(简化异常处理的利与弊)

《Java中的@SneakyThrows注解使用方法(简化异常处理的利与弊)》为了简化异常处理,Lombok提供了一个强大的注解@SneakyThrows,本文将详细介绍@SneakyThro... 目录1. @SneakyThrows 简介 1.1 什么是 Lombok?2. @SneakyThrows

在 Spring Boot 中实现异常处理最佳实践

《在SpringBoot中实现异常处理最佳实践》本文介绍如何在SpringBoot中实现异常处理,涵盖核心概念、实现方法、与先前查询的集成、性能分析、常见问题和最佳实践,感兴趣的朋友一起看看吧... 目录一、Spring Boot 异常处理的背景与核心概念1.1 为什么需要异常处理?1.2 Spring B

python处理带有时区的日期和时间数据

《python处理带有时区的日期和时间数据》这篇文章主要为大家详细介绍了如何在Python中使用pytz库处理时区信息,包括获取当前UTC时间,转换为特定时区等,有需要的小伙伴可以参考一下... 目录时区基本信息python datetime使用timezonepandas处理时区数据知识延展时区基本信息

C#使用StackExchange.Redis实现分布式锁的两种方式介绍

《C#使用StackExchange.Redis实现分布式锁的两种方式介绍》分布式锁在集群的架构中发挥着重要的作用,:本文主要介绍C#使用StackExchange.Redis实现分布式锁的... 目录自定义分布式锁获取锁释放锁自动续期StackExchange.Redis分布式锁获取锁释放锁自动续期分布式

Python Transformers库(NLP处理库)案例代码讲解

《PythonTransformers库(NLP处理库)案例代码讲解》本文介绍transformers库的全面讲解,包含基础知识、高级用法、案例代码及学习路径,内容经过组织,适合不同阶段的学习者,对... 目录一、基础知识1. Transformers 库简介2. 安装与环境配置3. 快速上手示例二、核心模

一文详解Java异常处理你都了解哪些知识

《一文详解Java异常处理你都了解哪些知识》:本文主要介绍Java异常处理的相关资料,包括异常的分类、捕获和处理异常的语法、常见的异常类型以及自定义异常的实现,文中通过代码介绍的非常详细,需要的朋... 目录前言一、什么是异常二、异常的分类2.1 受检异常2.2 非受检异常三、异常处理的语法3.1 try-

Python使用getopt处理命令行参数示例解析(最佳实践)

《Python使用getopt处理命令行参数示例解析(最佳实践)》getopt模块是Python标准库中一个简单但强大的命令行参数处理工具,它特别适合那些需要快速实现基本命令行参数解析的场景,或者需要... 目录为什么需要处理命令行参数?getopt模块基础实际应用示例与其他参数处理方式的比较常见问http

Java Response返回值的最佳处理方案

《JavaResponse返回值的最佳处理方案》在开发Web应用程序时,我们经常需要通过HTTP请求从服务器获取响应数据,这些数据可以是JSON、XML、甚至是文件,本篇文章将详细解析Java中处理... 目录摘要概述核心问题:关键技术点:源码解析示例 1:使用HttpURLConnection获取Resp

Java中Switch Case多个条件处理方法举例

《Java中SwitchCase多个条件处理方法举例》Java中switch语句用于根据变量值执行不同代码块,适用于多个条件的处理,:本文主要介绍Java中SwitchCase多个条件处理的相... 目录前言基本语法处理多个条件示例1:合并相同代码的多个case示例2:通过字符串合并多个case进阶用法使用