Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/315.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过Laravel文件运行C#应用程序未打开_C#_Excel_Laravel_Execute_Shellexecute - Fatal编程技术网

通过Laravel文件运行C#应用程序未打开

通过Laravel文件运行C#应用程序未打开,c#,excel,laravel,execute,shellexecute,C#,Excel,Laravel,Execute,Shellexecute,我有一个Laravel应用程序,我正在尝试使用Php Exec()函数执行c#应用程序。 我为OpenMicrosoftExcel工作表准备了一个c#应用程序,并对其进行了更新。如果我手动运行该c#应用程序,它将正常工作。但如果我从laravel运行该c#应用程序,则该c#应用程序不会完全运行。该过程是停止excel文件加载部分 这是我的c代码 有人知道吗?对不起,我的英语不好 using System; using System.Collections.Generic; using Syste

我有一个Laravel应用程序,我正在尝试使用Php Exec()函数执行c#应用程序。 我为OpenMicrosoftExcel工作表准备了一个c#应用程序,并对其进行了更新。如果我手动运行该c#应用程序,它将正常工作。但如果我从laravel运行该c#应用程序,则该c#应用程序不会完全运行。该过程是停止excel文件加载部分

这是我的c代码

有人知道吗?对不起,我的英语不好

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Office.Interop.Excel;
using MySql.Data;
using MySql.Data.MySqlClient;
using System.Data;
using System.IO;

namespace Excel_Export
{
    class Program
    {
      
        public static void Main(string[] args)
        
        {
            if (args.Length > 0)
            {

                Console.WriteLine(args[0]);
                Console.WriteLine(args[1]);
                Console.WriteLine(args[2]);

                File.AppendAllText(Environment.CurrentDirectory + @"\log.txt", args[0].ToString());
            }

            MySqlConnection con = new MySqlConnection("server=localhost; user id=user; password=123456; database=softera; pooling=false;");           

            MySqlDataAdapter adr = new MySqlDataAdapter();
            MySqlCommand cmd;

            // Create the SelectCommand.
            cmd = new MySqlCommand("hrms_sp_rpt_Payroll_SalaryBankFile_Excel", con);
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.Add(new MySqlParameter("_compID", 1));
            cmd.Parameters.Add(new MySqlParameter("_subID", 1));
            cmd.Parameters.Add(new MySqlParameter("_actID", 1));
            cmd.Parameters.Add(new MySqlParameter("_pgID", 1));       
            cmd.Parameters.Add(new MySqlParameter("_payFromDate",MySqlDbType.Date));
            cmd.Parameters[4].Value = "2020-02-01";
            cmd.Parameters.Add(new MySqlParameter("_payToDate",MySqlDbType.Date));
            cmd.Parameters[5].Value = "2020-02-29";

            adr.SelectCommand = cmd;

            adr.SelectCommand.CommandType = CommandType.StoredProcedure;
            System.Data.DataTable dt = new System.Data.DataTable();

            adr.Fill(dt);


            Application xlApp = new Application();

            if (xlApp == null)
            {
                //just to check if we get hold of the excel aplication  
                return;
            }
            //Notpad To Test excel open

            File.AppendAllText(Environment.CurrentDirectory + @"\log.txt", "start: " + DateTime.Now.ToString());
            Workbook xlWorkBook = xlApp.Workbooks.Open(Environment.CurrentDirectory + @"\SalaryBankFile.xlsm");

            //Notpad To Test excel open passed

            File.AppendAllText(Environment.CurrentDirectory + @"\log.txt", "start1: " + DateTime.Now.ToString());

            Worksheet xlWorkSheet = xlApp.ActiveSheet as Microsoft.Office.Interop.Excel.Worksheet;
            Microsoft.Office.Interop.Excel.Range userRange = xlWorkSheet.UsedRange;
            int x = userRange.Rows.Count;
            object misValue = System.Reflection.Missing.Value;

            for (int i= 0;  i < (dt.Rows.Count); i++)
            {
                x = x + 1;
                xlWorkSheet.Cells[x, 1] = string.Format("{0}", dt.Rows[i]["TranID"].ToString());
                xlWorkSheet.Cells[x, 2] = string.Format("{0}", dt.Rows[i]["DestinationBank"].ToString());
                xlWorkSheet.Cells[x, 3] = string.Format("{0}", dt.Rows[i]["DestinationBr"].ToString());
                xlWorkSheet.Cells[x, 4] = string.Format("{0}", dt.Rows[i]["Destination"].ToString());
                xlWorkSheet.Cells[x, 5] = string.Format("{0}", dt.Rows[i]["DestinationAccountName"].ToString());
                xlWorkSheet.Cells[x, 6] = string.Format("{0}", dt.Rows[i]["TRNcode"].ToString());
                xlWorkSheet.Cells[x, 7] = string.Format("{0}", dt.Rows[i]["Returncode"].ToString());
                xlWorkSheet.Cells[x, 8] = string.Format("{0}", dt.Rows[i]["Cr_Drcode"].ToString());
                xlWorkSheet.Cells[x, 9] = string.Format("{0}", dt.Rows[i]["Returndate"].ToString());
                xlWorkSheet.Cells[x, 10] = string.Format("{0}", dt.Rows[i]["Amount"].ToString());
                xlWorkSheet.Cells[x, 11] = string.Format("{0}", dt.Rows[i]["Currencycode"].ToString());
                xlWorkSheet.Cells[x, 12] = string.Format("{0}", dt.Rows[i]["OriginatingBank"].ToString());
                xlWorkSheet.Cells[x, 13] = string.Format("{0}", dt.Rows[i]["OriginatingBranch"].ToString());
                xlWorkSheet.Cells[x, 14] = string.Format("{0}", dt.Rows[i]["OriginatingAccount"].ToString());
                xlWorkSheet.Cells[x, 15] = string.Format("{0}", dt.Rows[i]["OriginatingAccountName"].ToString());
                xlWorkSheet.Cells[x, 16] = string.Format("{0}", dt.Rows[i]["Particulars"].ToString());
                xlWorkSheet.Cells[x, 17] = string.Format("{0}", dt.Rows[i]["Reference"].ToString());
                xlWorkSheet.Cells[x, 18] = string.Format("{0}", dt.Rows[i]["ValueDate"].ToString());
                xlWorkSheet.Cells[x, 19] = string.Format("{0}", dt.Rows[i]["SecurityField"].ToString());
                xlWorkSheet.Cells[x, 20] = string.Format("{0}", dt.Rows[i]["Filler"].ToString());

            }
           
            xlWorkBook.SaveAs(Environment.CurrentDirectory + @"\SalaryBankFile1.xls", XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);
            xlWorkBook.Close(true, Type.Missing, Type.Missing);
            xlApp.Quit();


            //releaseObject(xlWorkSheet);
            //releaseObject(xlWorkBook);
            //releaseObject(xlApp);


        }
    }
}
public function runexebank($subID,$actID,$pgID,$payFromDate,$payToDate)
    {
        //  $argument = '';
        //  exec("D:\ConsoleApp2.exe $argument");
        //  dd($output);
        //  $escaped_cmd = escapeshellcmd("D:\xampp\htdocs\softera\ConsoleApp2.exe ");
        // exec($escaped_cmd);

        exec("D:\\xampp\\htdocs\\softera\\public\\Excel_Export.exe");

        //    return view('city.create');
        //  $WshShell = new COM("WScript.Shell");
        //   $oExec = $WshShell->exec("D:\\ConsoleApp2.exe");
    }