Tag: 兼容性

在仅适用于.NET-4的系统上的GAC中使用面向.NET-2.0的COM DLL

再次问候, 按照我之前的问题,我正在尝试最大化我的C#编写的Windows资源管理器扩展的兼容性。 特别是,我有兴趣确保它在安装了.NET 4并且未安装.NET 3.5及更低版本的环境中工作。 人们会认为没有问题,但显然不是那么简单…… 有两个问题。 首先,非.NET-4目标程序集不会加载CLR 4,除非它们具有指定的.config文件。 如果没有这个.config文件,即使尝试在它们上使用ngen也会失败。 但我的DLL进入了GAC。 我如何在那里获得.config文件? 其他人也问过同样的事情,并得出结论“好吧,我只会改为创建一个静态的设置类。” 显然我做不到…… 第二个问题:当我用regasm.exe注册我的DLL,然后打开注册表查看它写的内容时,我在其CLSID条目下看到RuntimeVersion = v2.0.50727 。 这也可以防止加载DLL。 只有在我手动将RuntimeVersion值更改为RuntimeVersion后,DLL v4.0.30319加载。 那么我必须让我的安装程序在这里做什么? 对于第一个我不知道。 对于第二个,我想我必须让安装程序手动设置注册表的RuntimeVersion到任何.NET版本安装? 这看起来太古怪了……

Visual Studio 2010中的ASP.Net MVC 1.0

Visual Studio 2010是否与MVC 1.0兼容 大家好, 感谢提前阅读。 我正在使用MVC 1.0项目和VS2008。 我很高兴升级到VS2010,但我怀疑它与MVC 1.0的兼容性。 你做完了吗? 它是如何产生的?

Selenium 2.53.1在FireFox 48上不起作用

我正在使用selenium来测试我们的网站。 当我构建项目时,有一个exception: – OpenQA.Selenium.WebDriverException:无法在45000毫秒内启动套接字。 尝试连接到以下地址:127.0.0.1:7055,问题来自代码 IWebDriver driver = new FirefoxDriver(); 谁知道如何解决这个问题?

在Windows 7计算机上编写/编译的.NET 4程序将无法在XP上运行

我有一个应用程序,我在Windows 7 Ultimate计算机上使用Visual Studio 2010中的C#.NET 4.0编写。 这个应用程序在Vista和其他Windows 7计算机上运行良好,但每当运行Windows XP的人试图运行它时它会崩溃。 为了重现这一点,我尝试在我的Win XP VMWare机器上运行它,它在那里崩溃了。 不幸的是,它没有给我任何特定的错误,只是告诉我程序崩溃了,需要关闭。 另一位用户发给我的电话如下: Run-time error ‘339’ Component ‘vbalSGrid6.ocx’ or one of its dependencies not correctly registered: a file is missing or invalid. Code 0xe0434352 Flags 0x00000001 当我尝试在我的Virtual XP机器上运行它时,我没有得到那一点,我也确保在那里安装.NET 4.0。 可能导致这种情况的原因是,如果XP支持.NET 4框架,为什么app不会在XP中运行? 程序中使用的组件:DataGridView,ComboBox,Buttons,Labels,LinkLabel,NewtonSoft的JSON解析器,以及它的相关内容。 我很困惑,完全不知道从哪里开始。 想法? 更新 :嗯,尝试在XP上运行我最近创建的其他应用程序,它加载得很好。 两者之间唯一的主要区别(在我使用的组件中)是我使用NewtonSoft的JSON库,我实际上认为它是.NET 3.5组件。 更新2 :只是为了踢,我试图在我的Wind7机器上以“Windows XP SP3”兼容模式运行程序,它运行正常。 当然,我不知道“兼容模式”如何模仿真正的XP SP3环境,但我想我还是会给你信息。

是否有适用于.Net 3.5的C#4.0的更改列表?

我最近看到很多C#4.0的变化。 我真的很喜欢他们中的一些。 但是,我还是不想因兼容性原因而转向.Net 4.0。 那么,是否有一个全新的C#4.0语言function列表可以在.Net 3.5或更低版本上运行? 例如,默认参数是否需要.NET 4.0 CLR,还是它们是编译器function? 可以使用自动属性(C#3.0特性)并仍然以.NET 2.0为目标,因为它不需要Framework支持,但不使用LINQ表达式,因为它确实需要Framework 3.5。 请不要说“当然C#4.0在.Net 3.5中不起作用,因为它更老了”