微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Codedom 编译器 VB.NET 4.6.1 不支持

如何解决Codedom 编译器 VB.NET 4.6.1 不支持

Sub Codedom(ByVal Path As String,ByVal Code As String,ByVal MainClass As String)
    Dim providerOptions = New Collections.Generic.Dictionary(Of String,String) 'Thanks to Cobac for adding this.
    providerOptions.Add("CompilerVersion","v4.6.1")
    Dim CodeProvider As New Microsoft.CSharp.CSharpCodeProvider(providerOptions)
    Dim Parameters As New CompilerParameters
    With Parameters
        .GenerateExecutable = True
        .OutputAssembly = Path
        .CompilerOptions += "/platform:X86 /unsafe /target:winexe"
        .MainClass = MainClass
        .IncludeDebuginformation = False
        .ReferencedAssemblies.Add("System.Windows.Forms.dll")
        .ReferencedAssemblies.Add("System.CodeDom.CodeObject")
        .ReferencedAssemblies.Add("System.CodeDom.Compiler.CodeDomProvider")
        .ReferencedAssemblies.Add("Microsoft.CSharp.CSharpCodeProvider")
        .ReferencedAssemblies.Add("Microsoft.VisualBasic.VBCodeProvider")
        .ReferencedAssemblies.Add("Microsoft.VisualBasic.dll")
        .ReferencedAssemblies.Add("System.Linq.dll")
        .ReferencedAssemblies.Add("System.Core.dll")
        .ReferencedAssemblies.Add("System.Data.dll")
        .ReferencedAssemblies.Add("System.Deployment.dll")
        .ReferencedAssemblies.Add("System.Drawing.dll")
        .ReferencedAssemblies.Add("System.Xml.dll")
        .ReferencedAssemblies.Add("System.Xml.Linq.dll")
        .ReferencedAssemblies.Add("System.dll")
        .ReferencedAssemblies.Add(Process.GetCurrentProcess().MainModule.FileName)
        .ReferencedAssemblies.Add(Application.ExecutablePath)
    End With
    Dim Results = CodeProvider.CompileAssemblyFromSource(Parameters,Code)
    If Results.Errors.Count > 0 Then
        For Each E In Results.Errors
            MsgBox(E.ErrorText)
        Next
    End If
End Sub

它适用于 4.0,但不适用于 4.6.1 任何想法?为什么?

我还尝试添加更多我没有太多想法的参考组件

搜索了很多,但没有找到任何信息,所以这让我很烦恼。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。