问题标签 [clr]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
7 回答
5089 浏览

.net - 将 Objective-C 支持添加到 .NET 公共语言运行时需要什么?

.NET CLR 是否可以支持 Objective-C?是否有任何理由(从法律或实施)的角度来看这是不可能的?

本着跨平台应用程序开发的精神,如果能够在 Windows 机器上编写和运行 Objective-C 应用程序,那就太好了。至少我认为会。

0 投票
2 回答
1186 浏览

.net - x64 .NET 编译/进程资源管理器怪异

如果我要说的任何内容毫无意义或忽略了一些显而易见的事情,我深表歉意——我对 CLR 内部的了解参差不齐。

如果我理解正确,那么如果我只是在 VS2K5 中为“AnyCPU”构建一个解决方案(或使用这些设置将 MSBuild 指向那个 .sln 文件),那么二进制文件只能编译到 MSIL。然后,如果在 32 位平台上执行,它们会被 JITted 到 32 位;如果在 x64 上执行,它们会被 JITted 到 64 位代码......对吗?

DLL 用于 Web 应用程序并托管在 W3WP.exe 进程中。Process Explorer 告诉我 W3WP 是一个 64 位进程。

但是,当我使用 Process Explorer 在 DLL 视图中检查其中一个 DLL 的属性时,它会显示:“图像:32 位”。是什么赋予了?

如果我对有问题的 dll 运行 corflags,它会告诉我: ILONLY 1 , 32BIT 0 but PE PE32 。我的理解是,这意味着是的,它只编译到 IL,不,它不限于 32 位或 64 位,但我并不完全清楚。PE32 标志是否与上述显示为 32 位有关?

0 投票
7 回答
60256 浏览

clr - 致命 CLR 错误 80004005

今天,每次我尝试打开任何.Net 应用程序时,我都会得到:

有什么建议么?

0 投票
7 回答
425 浏览

.net - 各种 CLR 运行时有多大?

我正在考虑将一个项目迁移到托管代码,但我听说 .NET 运行时非常庞大——实际上比我的可执行二进制文件大几倍。在我看来,这就像尾巴在摇狗。但我也被告知,一些 CLR 实现,例如 Mono,是模块化的,您可以为它们创建一个自定义分发,只包含您实际需要的部分。

问题是,我在谷歌上找到关于这个应该非常简单的问题的答案非常困难。各种实现的完整 CLR 包有多大,哪些支持这种模块化分发能力,以及运行时对于不使用大量 .NET 铃声的标准 Windows 样式(基于表单)应用程序最终会有多大和口哨?(我最感兴趣的是组装系统固有的轻松创建插件的能力,以及通过 JIT 编译将脚本构建到我的程序中的能力。)

编辑:我对安装程序大小或下载时间不感兴趣。我想知道实际框架的大小,未压缩并准备好运行,因为它将在最终用户的系统上。

0 投票
3 回答
2527 浏览

c# - 嵌入 .Net 运行时

我是否能够嵌入 .net 运行时以便在主机操作系统上不需要 .net?我正在通过查看此处查看使用 Mono 执行此操作:http: //mono-project.com/Embedding_Mono但似乎暗示使用外部模块来完成此操作。我的目标是拥有一个没有安装 .net 运行时的可执行文件。我不知道如何在我的应用程序中配置它来编译本机代码,链接单声道运行时 - 以及编译 C# 代码并链接它?

0 投票
2 回答
728 浏览

clr - 如何列出所有正在运行的 CLR 实例

只是忘记了我曾经在 DOS Prompt 上执行的命令,以列出机器上所有正在运行的 CLR 实例。有人记得吗??

0 投票
4 回答
345 浏览

asp.net-mvc - 在安装了 beta 的盒子上运行 ASP.NET MVC preview 3 应用程序 - 安装 ASP.NET MVC Beta 后如何从 GAC 中删除 System.Web.Mvc?

我有一个针对 MVC Preview 3(引用 MVC 程序集的本地副本)构建的应用程序,我试图在安装了 ASP.NET MVC beta 的机器上对其进行修改/测试。我对更新这个应用程序以运行 MVC 测试版并不感兴趣——我只需要做一些小改动。

RouteCollection.IgnoreRoutes (在 global.asax.cs 中)上的 MissingMethodExceptions 失败,因为在运行时,CLR 总是在 GAC 中找到 System.Web.Mvc 的 beta 版本并加载它而不是在我的站点中加载预览 3 版本的 \ bin 目录。

由于程序集具有相同的名称、版本和公钥,我相信在 web.config 中无法区分它们,所以我认为这里唯一的解决方案是从 GAC 中删除 ASP.NET MVC beta 程序集。

只有 - 我不能这样做,因为它们是由 Windows Installer 安装的,所以我无法使用 gacutil.exe /u 删除它们,当我尝试直接删除它们时,我得到“访问被拒绝”。

任何人都知道我可以如何删除这个程序集 - 或者,如果失败了,如何在 GAC 中具有 System.Web.Mvc beta 的系统上运行/托管需要 System.Web.Mvc preview 3 的应用程序?

0 投票
1 回答
1597 浏览

.net - 关闭 .net JIT 编译器优化

当我们远程一个方法(即使用泛型)时,远程接收器似乎无法从其他相同命名的方法中发现我们的方法。使用附加的.net 源代码进行调试我已经把它带到了有MethodInfo.MakeGenericMethod调用的地方。但是,我无法查看任何周围的数据,因为它已经过 jit 优化。

几周前,我遇到了一个注册表设置,它会禁用此设置(它特别提到它有助于使用源代码进行调试)。然而,作为一个沃利,我已经失去了我对它所做的事情,并且很难再次找到它。

0 投票
1 回答
643 浏览

.net - Boo 可见的内部结构 (Binsor)

我正在为 IoC 使用 Castle Windsor,我想使用 Binsor 来定义我的配置。我想让 Boo 看到我的内部结构。我试图用它来标记我的程序集, InternalsVisibleTo("Boo.Lang")但这并没有完成这项工作。我已经尝试过InternalsVisibleTo("Rhino.Commons"),因为我注意到异常是从 Rhino.Commons.Binsor.BooComponentInstaller 中引发的,但这也不起作用。有任何想法吗?

0 投票
4 回答
4577 浏览

c++ - 使用 /clr:pure 项目中的混合 DLL

我正在与 Dll 一起构建一个项目。

Dll 必须支持本机代码,因此我将其声明为 /clr。我的项目最初也是一个 /clr 项目,一切都很好。但是我想包含一些 NUnit 测试,所以我不得不将我的主项目从 /clr 切换到 /clr:pure。

一切仍然可以编译,但任何 Dll 调用都会产生运行时错误。当我恢复到 /clr 时一切正常

在我的 Dll 中,导出的函数声明如下:

我还制作了一个 .def 文件,其中包含所有导出函数的真实名称

在我的主要项目中,我的进口声明如下:

有人遇到过这样的问题吗?