none
Aide compilation dynamique RRS feed

  • Discussion générale

  • Bonjour, j'essaie de développer un logiciel, dans lequel l'utilisateur entre le code d'une application commande, mais, quand j'entre le code d'une application commande dans la textbox, le logiciel génère le .exe mais la fenêtre de commande ne s'ouvre pas, elle effectue le code que j'ai tapé mais la commande ne s'ouvre pas, par exemple, si je tape le code pour ouvrir un msgbox, le msgbox s'affiche mais pas la fenêtre de commande, voici le code du logiciel (le générateur)

    Imports System.IO
    Imports System.Net
    Imports System.CodeDom.Compiler
    Imports System
    Imports Microsoft.Win32
    Imports Microsoft.VisualBasic
    Imports Microsoft.CSharp
    Imports System.Text


    Public Class Form1

        Private Sub Compile(ByVal ExecutableName As String, ByVal SourceCode As String)
            Dim Compiler As CodeDomProvider = CodeDomProvider.CreateProvider("VisualBasic")
            Dim Settings As New CompilerParameters
            Dim Result As CompilerResults = Nothing
            Settings.GenerateExecutable = True
            Settings.OutputAssembly = ExecutableName
            Settings.ReferencedAssemblies.Add("System.dll")
            Settings.CompilerOptions = " /target:winexe"
            Settings.TreatWarningsAsErrors = False
            Result = Compiler.CompileAssemblyFromSource(Settings, SourceCode)

            If (Result.Errors.Count <> 0) Then
                MessageBox.Show("This is why CodeDOM is shitty:", "I know right", MessageBoxButtons.OK, MessageBoxIcon.Error)
                For Each E As CompilerError In Result.Errors
                    MessageBox.Show(E.ErrorText)
                Next
            End If
        End Sub



        Private Sub Button1_Click(sender As Object, e As EventArgs)

        End Sub

        Private Sub Button1_Click_1(sender As Object, e As EventArgs) Handles Button1.Click

            Dim Source As String = RichTextBox1.Text

            Dim S As New SaveFileDialog
            With S
                .Filter = "Executable|*.exe"
                If (.ShowDialog() = DialogResult.OK) Then
                    Compile(.FileName, Source)
                End If
            End With
        End Sub

        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load
            RichTextBox1.Text = My.Resources.Source
        End Sub
    End Class

    voici le contenu de la ressource: Source

    Imports System.IO
    Imports System.Net
    Imports System.CodeDom.Compiler
    Imports System
    Imports Microsoft.Win32
    Imports Microsoft.VisualBasic
    Imports Microsoft.CSharp
    Imports System.IO.File

    Module Module1

    Sub Main()



    End Sub

    End Module

    mercredi 12 avril 2017 15:31

Toutes les réponses

  • Bonjour,
    Pouvez-vous préciser - lorsque vous dites "fenêtre de commande", est-ce que c'est la fenêtre où vous entrez le code de l'application commande?

    Cordialement,
    Nina


    Microsoft propose ce service gratuitement, dans le but d'aider les utilisateurs et d'élargir les connaissances générales liées aux produits et technologies Microsoft. Ce contenu est fourni "tel quel" et il n'implique aucune responsabilité de la part de Microsoft.

    jeudi 13 avril 2017 14:27
    Modérateur