2013-01-05 54 views
2

我看到一个帖子上IKVM.Reflection由Marc Gravell,这里就是我在IKVM User's Guide发现:IKVM.Reflection在运行时为Windows Store应用程序发出IL?

有使用IKVM.NET的方式主要有两种:

  • 动态:在这种模式下, Java类和jar被直接用来在.NET运行时上执行Java应用程序。 Java字节码被即时翻译成CIL,不需要进一步的步骤。此模式支持完整的Java类加载器模型。
  • 静:...

我想用它发射和执行的WinRT应用内IL。有没有根本的问题,为什么这是不可能做到的?像来自微软的政策,或阻止执行(可能已修补)的技术限制反射& IL从IKVM发出代码?

如果这是不可能的,是否有装载组件在运行时(假设我发出他们在外部服务器上,并从那里下载到本地app文件夹)的任何选项?

+0

有趣的问题。但是,它确实首先提出这个问题:您能否为该平台获取IKVM.Reflection来编译*。我没有考虑元编程方面的选项,但它在有效性方面听起来是一个边缘案例。 –

+0

@Marc:我要去尝试,但到目前为止,我用它编译正常.NET斗争,因为它依赖于Visual Studio 2008和我只有2012 –

+0

你搞糊涂了那里。我从来没有见过2012年与2008年的项目斗争,一旦csproj更新 –

回答

7

IKVM.NET的动态模式无关与IKVM.Reflection。 IKVM.Reflection仅由静态编译器使用。

虽然可以为.NET核心配置文件编译IKVM.Reflection(有一些调整),但这并没有让你更接近动态生成代码,除非你打破.NET核心配置文件“沙箱“(这是可能的,但我认为会违反Window Store政策)。

+0

你刚才救了我一天的工作:) –

相关问题