【问题标题】:VS 2017 c# interactive is not a valid Win32 applicationVS 2017 c# interactive 不是有效的 Win32 应用程序
【发布时间】:2018-03-02 10:53:41
【问题描述】:

我正在尝试在引用 com x86 引用的项目(dll 输出)上使用 VS C# Interactive。我正在选择项目并右键单击“初始化与项目交互”。那时我尝试执行我的代码。如果它的依赖项不是有效的 Win32 应用程序,我会得到一个未加载文件或程序集的计数。 C# Interactive 是否仅限于任何 CPU 项目?

谢谢

【问题讨论】:

  • 是的,它以 64 位模式运行。 Csi.exe 也是一个 64 位应用程序。我没有看到改变这一点的选项。用 corflags.exe 破解 csi.exe 也不起作用,它使强名称无效并使程序集加载失败。奇怪的顺便说一句。

标签: c# visual-studio c#-interactive


【解决方案1】:

另一个选项是使用#reset 32(用于 32 位模式)和#reset 64(用于 64 位模式)重置交互式窗口的执行引擎。
使用 VS 2017 企业版 15.8.6 测试

【讨论】:

    【解决方案2】:

    谢谢,我更改了我的项目的平台目标(在这种情况下,一个 dll 被不同的解决方案引用)并且我能够让 C# Interactive 工作。它让我仔细评估了引用程序集的平台目标(其中 c# 交互很有价值,因为输出无法执行)与可以在调试中的内联编辑中进行测试的应用程序之间的差异。这确实是一个很好的练习。

    【讨论】:

      猜你喜欢
      • 2013-12-07
      • 2013-11-03
      • 2017-04-16
      • 2012-07-03
      • 2019-03-02
      • 2016-12-07
      • 2021-10-15
      • 2011-06-23
      相关资源
      最近更新 更多