从内存而不是磁盘向 CompilerParameters ReferencedAssemblies 提供程序集?

2023-11-26

我有一个CompilerParameters我用来喂食的物体Microsoft.CSharp.CSharpCodeProvider对象和一个ICodeCompiler从中派生出的对象。

一切正常,我可以即时编译代码。我的问题是引用的程序集。现在,我只需添加来自的所有程序集System.Reflection.Assembly.GetExecutingAssembly().GetReferencedAssemblies()进入编译器参数ReferencedAssemblies。这适用于硬盘上的文件。但是,我有一个程序集位于内存中而不是磁盘上。当我尝试引用它时,我得到了FileNotFoundException这是我所期望的,因为它试图添加一条不存在的路径。

那么我如何传递实际的Assembly反对CompilerParameters.ReferencedAssemblies?

我在 2006 年之前在网上看到过一些帖子,说这根本不可能。我希望 .net 3.5 和 .net 4.0 添加了对此类事情的支持,但我不确定。

仅供参考,我正在使用 .NET 4.0


另外,现在我正在程序空间中的 byte[] 创建一个临时文件,然后将该文件加载到程序集中。我知道编译器在后台执行此操作,但我相信它也会自行清理。如果我能做到的话那就太好了:

CompilerParameters.ReferencedAssemblies.Add(Assembly a)

那么您有要添加作为参考的内存中程序集吗?

我不确定这种方法是否得到支持CSharpCodeProvider.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从内存而不是磁盘向 CompilerParameters ReferencedAssemblies 提供程序集? 的相关文章

  • ClickOnce 应用程序错误:部署和应用程序没有匹配的安全区域

    我在 IE 中使用 FireFox 和 Chrome 的 ClickOnce 应用程序时遇到问题 它工作正常 异常的详细信息是 PLATFORM VERSION INFO Windows 6 1 7600 0 Win32NT Common
  • 复制 std::function 的成本有多高?

    While std function是可移动的 但在某些情况下不可能或不方便 复制它会受到重大处罚吗 它是否可能取决于捕获变量的大小 如果它是使用 lambda 表达式创建的 它依赖于实现吗 std function通常被实现为值语义 小缓
  • C中的malloc内存分配方案

    我在 C 中尝试使用 malloc 发现 malloc 在分配了一些内存后浪费了一些空间 下面是我用来测试 malloc 的一段代码 include
  • 在 LINQ 中按 Id 连接多表和分组

    我想按categoryId显示列表产品的名称组 这是我的代码 我想要我的视图显示结果 Desktop PC HP Red PC Dell Yellow PC Asus Red SmartPhone Lumia 720 Blue 我的组模型
  • 在 C 中匹配二进制模式

    我目前正在开发一个 C 程序 需要解析一些定制的数据结构 幸运的是我知道它们是如何构造的 但是我不确定如何在 C 中实现我的解析器 每个结构的长度都是 32 位 并且每个结构都可以通过其二进制签名来识别 举个例子 有两个我感兴趣的特定结构
  • 当我们想要返回对象的引用时,为什么我们在赋值运算符中返回 *this 而通常(而不是 this)?

    我正在学习 C 和指针 我以为我理解了指针 直到我看到这个 一方面 asterix 运算符是解引用的 这意味着它返回值所指向的地址中的值 而与号 运算符则相反 它返回值存储的地址记忆 现在阅读有关赋值重载的内 容 它说 我们返回 this因
  • 回发后刷新时提示确认表单重新提交。我做错了什么?

    我有一个以空白 默认状态启动的仪表板 我让用户能够将保存的状态加载到仪表板中 当他们单击 应用 按钮时 我运行以下代码 function CloseAndSave var radUpload find radUpload1ID var in
  • 在 Visual Studio 2010 中从 Fortran 调用 C++ 函数

    我想从 Fortran 调用 C 函数 为此 我在 Visual Studio 2010 中创建了一个 FORTRAN 项目 之后 我将一个 Cpp 项目添加到该 FORTRAN 项目中 当我要构建程序时出现以下错误 Error 1 unr
  • 如何在 32 位或 64 位配置中以编程方式运行任何 CPU .NET 可执行文件?

    我有一个可在 32 位和 64 位处理器上运行的 C 应用程序 我试图枚举给定系统上所有进程的模块 当尝试从 64 位应用程序枚举 32 位进程模块时 这会出现问题 Windows 或 NET 禁止它 我认为如果我可以从应用程序内部重新启动
  • Azure 辅助角色“请求输入之一超出范围”的内部异常。

    我在辅助角色中调用 CloudTableClient CreateTableIfNotExist 方法 但收到一个异常 其中包含 请求输入之一超出范围 的内部异常 我做了一些研究 发现这是由于将表命名为非法表名引起的 但是 我尝试为我的表命
  • 如何禁用 fread() 中的缓冲?

    我正在使用 fread 和 fwrite 读取和写入套接字 我相信这些函数用于缓冲输入和输出 有什么方法可以在仍然使用这些功能的同时禁用缓冲吗 Edit 我正在构建一个远程桌面应用程序 远程客户端似乎 落后于服务器 我不知道可能是什么原因
  • C# 中的合并运算符?

    我想我记得看到过类似的东西 三元运算符 http msdn microsoft com en us library ty67wk28 28VS 80 29 aspx在 C 中 它只有两部分 如果变量值不为空 则返回变量值 如果为空 则返回默
  • 为什么 std::strstream 被弃用?

    我最近发现std strstream已被弃用 取而代之的是std stringstream 我已经有一段时间没有使用它了 但它做了我当时需要做的事情 所以很惊讶听到它的弃用 我的问题是为什么做出这个决定 有什么好处std stringstr
  • “接口”类似于 boost::bind 的语义

    我希望能够将 Java 的接口语义与 C 结合起来 起初 我用过boost signal为给定事件回调显式注册的成员函数 这非常有效 但后来我发现一些函数回调池是相关的 因此将它们抽象出来并立即注册所有实例的相关回调是有意义的 但我了解到的
  • 动态添加 ASP.Net 控件

    我有一个存储过程 它根据数据库中存储的记录数返回多行 现在我想有一种方法来创建 div 带有包含该行值的控件的标记 如果从数据库返回 10 行 则 10 div 必须创建标签 我有下面的代码来从数据库中获取结果 但我不知道如何从这里继续 S
  • 将 MQTTNet 服务器与 MQTT.js 客户端结合使用

    我已经启动了一个 MQTT 服务器 就像this https github com chkr1011 MQTTnet tree master例子 该代码托管在 ASP Net Core 2 0 应用程序中 但我尝试过控制台应用程序 但没有成
  • 如何在非控制台应用程序中查看 cout 输出?

    输出到调试窗口似乎相当繁琐 我在哪里可以找到cout如果我正在编写非控制台信息 则输出 Like double i a b cout lt lt b lt lt endl I want to check out whether b is z
  • 调用堆栈中的“外部代码”是什么意思?

    我在 Visual Studio 中调用一个方法 并尝试通过检查调用堆栈来调试它 其中一些行标记为 外部代码 这到底是什么意思 方法来自 dll已被处决 外部代码 意味着该dll没有可用的调试信息 你能做的就是在Call Stack窗口中单
  • 从 Excel 应用程序对象中查找位数(32 位/64 位)?

    是否可以从 Microsoft Office Interop Excel ApplicationClass 确定 Excel 是以 32 位还是 64 位运行 Edit该解决方案应该适用于 Excel 2010 和 Excel 2007 此
  • 我的班级应该订阅自己的公共活动吗?

    我正在使用 C 3 0 遵循标准事件模式我有 public event EventHandler

随机推荐

  • 正则表达式匹配“{number}”

    我需要使用 PHP 和正则表达式将 Z 替换为 test Z 其中 Z 始终是无符号整数 除非有更快的方法 code 45 2 gt val 5 gt val apply regex to code echo code writes tes
  • 如何使用 C# 滚动到 RichTextBox 控件的指定行号?

    如何使用 C 滚动到 RichTextBox 控件的指定行号 这是WinForms 版本 你可以尝试这样的事情 void ScrollToLine int lineNumber if lineNumber gt richTextBox1 L
  • 在 python scipy 版本 1.1 中计算信噪比

    我在网上查了一下 似乎信噪比里面的比率函数scipy stats已弃用 并且在版本 1 1 中不可用 scipy 包中是否还有其他等效方法 因为我无法在网上找到它 如果不是 scipy 那么是否有其他推荐的库用于此类计算 如中所示githu
  • 警告:使用内部类时,类型参数 E 隐藏类型 E

    我正在编写一个堆栈 一个具有静态节点 另一个具有非静态节点 public class Stack
  • jQuery 更改事件在 IE11 中不起作用

    我在输入文本框上使用 jQuery 更改事件 它似乎在 Chrome 和 Firefox 中可以正常工作 但在 IE11 中却不能 IE 是否支持类似change 的其他事件 jQuery 1 7
  • Asp .net隐藏字段无法使用jquery设置值

    我无法在 asp net 中使用 jquery 设置隐藏字段的值 我的隐藏字段声明如下
  • venv、pyvenv、pyenv、virtualenv、virtualenvwrapper、pipenv 等有什么区别?

    Python 3 3 在其标准库中包含新包venv 它有什么作用 以及它与匹配正则表达式的所有其他包有何不同 py v virtual pip env 这是我个人对初学者的建议 从学习开始virtualenv and pip 可在各种情况下
  • 为什么 ValueType.GetHashCode() 是这样实现的?

    From ValueType cs Action Our algorithm for returning the hashcode is a little bit complex We look for the first non stat
  • 使用常量表达式声明数组的大小

    我有一个围绕数组的新类型包装器 我以为我可以使用size of而不是手动传递数组的大小 但编译器认为我错了 use std mem size of size of val repr C packed struct BluetoothAddr
  • 如何在 linq 中编写 EF 以包含小写比较

    我有这样的疑问 select lower Name from User 如何使用 linq to EF 实现相同的效果 避免用户 linq to 反对 var query context Users Select u gt u Name T
  • 如何在本地运行的网页上创建指向本地文件的链接?

    我想要一个 html 文件来组织分散在我的硬盘驱动器中的某些文件 例如 我有两个要链接到的文件 C Programs sort mw C Videos lecture mp4 问题是我希望链接充当文件的快捷方式 我尝试过以下方法 a hre
  • oracle物化视图刷新时间

    有人能告诉我使用以下设置将物化视图设置为刷新的频率吗 按需刷新强制从 sysdate 0 开始 NEXT round sysdate 1 24 1 我想我每小时都会读一次 但我不确定 SQL gt alter session set nls
  • Objective C 类方法与 C 函数

    在从事开源项目时 我遇到了以下 C 函数声明和实现 FSNData h NSString stringForMimeType MimeType type interface FSNData NSObject All the expected
  • 如何创建不振动的 iOS 推送通知?

    我知道如何创建无声推送通知 通过播放无声的声音文件 我还想发送不振动手机的推送通知 当按照下面的建议设置静音声音文件时 手机在锁定或应用程序未激活时仍然会振动 我的有效载荷仍然振动 aps alert loc key SOME KEY ba
  • 如何在elasticsearch中索引geojson文件?

    我正在尝试使用 PYTHON 以 geojson csv 文件和形状文件的形式将空间数据存储到 elasticsearch 中 我是 elasticsearch 的新手 即使在遵循文档后我也无法成功索引它 任何帮助 将不胜感激 示例 geo
  • 防止存储过程同时执行两次

    我有一个 SQL Server 2000 的存储过程 在任何给定时刻只能执行一个实例 有什么方法可以检查并确保该过程当前没有在执行吗 理想情况下 我希望代码是独立且高效 快速 的 我也不想做一些事情 比如创建一个全局临时表来检查它是否存在
  • 如何在C++中生成随机顶点以形成凸多边形?

    我需要为一个简单的凸多边形生成一组顶点 以便使用动态编程对该多边形进行最小权重三角剖分 我考虑取一个半径为 r 的圆 然后取 20 个顶点逆时针移动 然后我将形成一个20个顶点凸多边形但我该怎么做 我怎么知道半径为 r 的圆上的顶点 除了这
  • Asp.Net core 2.0 MVC 锚标记帮助器不工作

    我正在尝试创建一个演示页面 但无法解决下一个问题 并且我尝试了在网络上找到的所有内容 我有一个带有标签助手的锚标签 a class menu link Telefonok a 我还添加了一个 ViewImports cshtml我在其中添加
  • C# WebClient 下载字符串 https

    在网络浏览器中我通常可以加载以下网址 https security ultimatxxxx com 443 Serverstatus ashx 当我这样做时 Webclient DownloadStringAsync https secur
  • 从内存而不是磁盘向 CompilerParameters ReferencedAssemblies 提供程序集?

    我有一个CompilerParameters我用来喂食的物体Microsoft CSharp CSharpCodeProvider对象和一个ICodeCompiler从中派生出的对象 一切正常 我可以即时编译代码 我的问题是引用的程序集 现