Saya membuat aplikasi winforms yang tidak melakukan apa-apa selain menjalankan exe yang telah saya sertakan dalam proyek saya dan saya membuat proyek pengaturan dan menambahkan opsi keluaran proyek dan memeriksa opsi salin sumber daya yang dilokalkan. Kemudian saya membangun proyek pengaturan saya dalam mode rilis dan menginstal file pengaturan. Semuanya sukses sampai sekarang. Ketika saya memulai aplikasi saya, itu harus memulai exe yang telah saya sertakan di dalamnya (dibungkus dalam file pengaturan (proyek pengaturan)) pada FORM_LOAD. Exe melakukan bagiannya dengan benar, exe eksternal dimulai tetapi tiba-tiba crash menampilkan kesalahan php. Exe eksternal saya adalah exe aplikasi web php yang dibuat menggunakan perangkat lunak exeoutput. Jadi yang saya coba lakukan adalah membungkus phpexe ini di dalam winforms saya untuk membuat penginstal untuk phpexe ini. Ketika saya menjalankan phpwebapplicationexe dari folder lokal saya, itu berjalan dengan lancar tetapi ketika saya menjalankan aplikasi winforms saya dan ketika secara implisit phpexe berjalan itu menunjukkan beberapa kesalahan php .. Saya akan menyertakan tangkapan layar saya di sini.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Windows.Forms;

namespace POSApplication
{
public partial class Default : Form
{
    public Default()
    {
        InitializeComponent();
    }

    private void Default_Load(object sender, EventArgs e)
    {
        try
        {
            string AppPath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "POS_MAIN/pos.exe");
            Process.Start(@AppPath);
            this.Close();
        }
        catch(Exception ex)
        {
            MessageBox.Show(ex.Message);
        }
    }
}

}

[SCREEN_SHOT] Phpexe dibuat dari keluaran exe yang saya sertakan dalam proyek saya

[SCREEN_SHOT] Proyek penyiapan saya

[SCREEN_SHOT] Kesalahan yang saya dapatkan setelah menjalankan winforms exe saya

[SCREEN_SHOT] Ketika saya menjalankan phpexe eksternal dari folder lokal saya, itu berjalan dengan sukses

-2
user11811685 13 Agustus 2019, 09:08

1 menjawab

Jawaban Terbaik

Coba ini:

string path="path/to/executable.exe"
string arguments_list_as_string="--argument1 value1 --argument2 value1"
var p=new ProcessStartInfo(path);
p.Arguments=aruguments_list_as_string;
try
{
   Process.Start(p);
}catch(Exception e)
{
   MessageBox.Show(e.Message);
}

Anda dapat meletakkan executable di direktori output build dan melakukan set path ke

 string path=System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location+"\\executable_name.exe";
0
Bakaji 13 Agustus 2019, 06:43