asp.net LC.exe已退出代码为 -1的原因分析及解决方法

网络编程 2025-03-13 15:28www.168986.cn编程入门

遭遇“LC.exe”退出错误,代码显示为-1,这通常与VS2005项目中使用的第三方组件有关。此情况涉及到一个特定的商业组件,它在主使用类上应用了LicenseProvider属性,具体为LicFileLicenseProvider。这一属性意味着该组件的许可辅助信息被保存在一个名为license.licx的文件中。这个文件位于解决方案资源管理器中的Properties文件夹内。

这个文件实际上是一个引用,包含了使用的第三方组件的各种详细信息,如名称空间、类名、文件名、文化和PublicKeyToken信息。这个文件是自动生成的。如果在项目中使用的是商业组件的测试版,但在发布时却使用了该商业组件的破解版,那么很可能就会出现这个问题。破解后的组件通常会失去强名称签名,导致引用信息与原来的测试版组件完全不同。

每次VS2005编译项目时,都会在调用语言编译器之前先调用许可编译器lc.exe,这时就会出现错误代码-1。要解决这个问题,首先要尝试删除Properties文件下的license.licx文件,然后重新编译项目。如果问题仍然存在,那么需要进一步行动。

具体来说,需要将破解版的组件使用lidism翻译成IL语言,然后用ilasm重新编译成dll文件。在编译过程中,需要加入/key=[你的强名称文件].snk参数,自己加入强名称签名。这样操作后,再尝试使用VS2005重新编译项目,很可能就能成功解决问题。

这个问题的解决过程展现了编程世界的复杂性,尤其是在处理第三方组件和许可机制时。希望以上内容能够帮助开发者们更好地理解这个问题并找到解决方案。也提醒大家在使用商业组件时,尽量遵循正规渠道和合法授权,避免使用破解版,以免引发不必要的麻烦和风险。

上一篇:BootStrap Datetimepicker 汉化的实现代码 下一篇:没有了

Copyright © 2016-2025 www.168986.cn 狼蚁网络 版权所有 Power by