This is the answer by @Dimitar_Georgiev, with small corrections and formatting fixes.
I managed to find this solution for you and i really hope it works:
- Write your python code , for example : print("Hello world python !!") in text file and save to .py
- Create project at VB.NET, drag component 1 button and 1 textbox into form.
- Double click button1, at event click button1 write this code
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim proc As Process = New Process
proc.StartInfo.FileName = "C:\Python34\python.exe" 'Default Python Installation
proc.StartInfo.Arguments = "C:\path\to\my\pythonfile.py"
proc.StartInfo.UseShellExecute = False 'required for redirect.
proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden 'don't show commandprompt.
proc.StartInfo.CreateNoWindow = True
proc.StartInfo.RedirectStandardOutput = True 'captures output from commandprompt.
proc.Start()
AddHandler proc.OutputDataReceived, AddressOf proccess_OutputDataReceived
proc.BeginOutputReadLine()
proc.WaitForExit()
TextBox1.Text = Value
End Sub
Public sub proccess_OutputDataReceived(ByVal sender As Object, ByVal e As DataReceivedEventArgs)
On Error Resume Next
If e.Data = "" Then
Else
Value = e.Data
End If
End sub
- Create module file, and write this variable global :
Module module
Public Value As String
End Module
- Running the application, if textbox1 have populated with some string then your code was success.
HERE is a lick with the full process.