Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > .NET Framework > Forum > สอบถามเรื่อง ProcessStartInfo("cmd.exe"); ไม่ทำงาน กับ client



 

สอบถามเรื่อง ProcessStartInfo("cmd.exe"); ไม่ทำงาน กับ client

 



Topic : 054995



โพสกระทู้ ( 38 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook



Code (C#)
 public void Compile()
         {

             String strSQL = @"  SELECT  Course_ID
                            FROM    HW
                            where HW_Name = " + "'" + DropDownList1.Text + "'";

             SqlDataReader sdr1 = clsDB.QueryDataReader(strSQL);
             sdr1.Read();
             String Course_ID = sdr1["Course_ID"].ToString();
             clsDB.Close();

             DirectoryInfo myDirInfo;
             DirectoryInfo myDirInfo2;
             DirectoryInfo[] arrFolderInfo;
             myDirInfo = new DirectoryInfo(Server.MapPath("~/Storage_File/Teacher/" + User.Identity.Name + "/" + Course_ID + "/"));
             arrFolderInfo = myDirInfo.GetDirectories("*");
             
             
             


             foreach (DirectoryInfo myFolderInfo in arrFolderInfo)
             {
                 try
                 {
                     string filenameCompile = DropDownList1.Text + "_" + myFolderInfo.Name + ".cpp";
                     string filenameCompile_2 = DropDownList1.Text + "_" + myFolderInfo.Name;
                     string ShowResult = DropDownList1.Text + "_" + myFolderInfo.Name + ".exe";
                     string Output = DropDownList1.Text + "_" + myFolderInfo.Name + ".txt";
                     string StudentID = myFolderInfo.Name;


                     System.Diagnostics.ProcessStartInfo si = new System.Diagnostics.ProcessStartInfo("cmd.exe");
                     si.RedirectStandardInput = true; si.RedirectStandardOutput = true; si.RedirectStandardError = true; si.UseShellExecute = false; si.CreateNoWindow = true;
                     System.Diagnostics.Process console = System.Diagnostics.Process.Start(si);
                     console.StandardInput.WriteLine(@"C:");
                     console.StandardInput.WriteLine(@"cd " + (Server.MapPath("~/Storage_File/Teacher/" + User.Identity.Name + "/" + Course_ID + "/" + myFolderInfo.Name + "/" + DropDownList1.Text + "/")));
                     console.StandardInput.WriteLine(@"g++ " + filenameCompile + " -o " + filenameCompile_2);
                     System.Threading.Thread.Sleep(1000);
                     //console.StandardInput.WriteLine(@"" + ShowResult + ">" + Output);
                     console.StandardInput.WriteLine(@"exit");
                     System.Threading.Thread.Sleep(1000);



                     



                     myDirInfo2 = new DirectoryInfo(Server.MapPath("~/Storage_File/Teacher/" + User.Identity.Name + "/" + Course_ID + "/" + myFolderInfo.Name + "/" + DropDownList1.Text + "/"));

                     FileInfo[] arrFileInfo;


                     arrFileInfo = myDirInfo2.GetFiles("*.exe");



                     foreach (FileInfo myFileInfo in arrFileInfo)
                     {


                         if (myFileInfo.Name == ShowResult)
                         {

                             String strSQL1 = @"  INSERT INTO Check_Compile
                            (StudentID,HW_Name,Compile)
                            VALUES     ('" + StudentID + "', '" + DropDownList1.Text + "', '" + "ผ่าน" + "')";

                             clsDB.QueryExecuteNonQuery(strSQL1);
                             clsDB.Close();

                         }


                     }
                 }
                 // Modify
                 catch (System.IO.IOException e)
                 {

                 }


             }

             String strSQL2 = @"  INSERT INTO Check_Compile (StudentID,HW_Name,Compile)
                               select Enroll.Student_ID ,'" + DropDownList1.Text + "','ไม่ผ่าน' FROM Enroll WHERE Enroll.Student_ID NOT IN(select Check_Compile.StudentID from Check_Compile where HW_Name = " + "'" + DropDownList1.Text + "'" + ")";
             clsDB.QueryExecuteNonQuery(strSQL2);
             clsDB.Close();

         }



จริงๆแล้วเมื่อ ทำ ฟังก์ชันนี้เสร็จ โปรแกรมจะทำการสร้าง ไฟล์ .exe ขึ้นมา ตาม path ที่กำหนดไว้อะครับ
ปัญหาที่พบคือ
เมื่อเข้า ด้วย url http://192.168.1.3/test/Teacher/Check_Homework.aspx
ไม่มีการสร้าง ไฟล์ .exe ขึ้นมา

แต่เมื่อเข้าด้วย http://localhost:54392/Teacher/Check_Homework.aspx
โปรแกรมทำงานได้ปกติ


ไม่ทราบว่าต้องแก้ ยังไงหรอครับพี่ๆ
แต่ว่า เรื่อง permission ผมแก้หมดแล้ว สามารถเขียนไฟล์ หรือ สร้าง folder ไว้บน server ได้แล้ว

หรือว่า ไคลเอน ไม่สามารถสั่ง รัน cmd ได้อะครับ หรือว่า
มีปัญหา ตอน

console.StandardInput.WriteLine(@"cd " + (Server.MapPath("~/Storage_File/Teacher/" + User.Identity.Name + "/" + Course_ID + "/" + myFolderInfo.Name + "/" + DropDownList1.Text + "/")));

console.StandardInput.WriteLine(@"g++ " + filenameCompile + " -o " + filenameCompile_2);

ใน cmd มันไม่สามารถ cd ไปที่ path (Server.MapPath("~/Storage_File/Teacher/" + User.Identity.Name + "/" + Course_ID + "/" + myFolderInfo.Name + "/" + DropDownList1.Text + "/")) นี้ได้หรือเปล่า


หรือว่าต้อง set iis อะไรเพิ่ม
หรือยังไง โอ๊ยๆ งง
พี่ๆช่วย ดูให้ทีนะครับบบบบบบ



Tag : .NET, Web (ASP.NET), Console App, WebService, C#









ประวัติการแก้ไข
2011-01-24 17:20:21
2011-01-24 17:30:27
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2011-01-24 17:17:20 By : nuicpe View : 1565 Reply : 1
 

 

No. 1



โพสกระทู้ ( 38 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ขอถามอะไรเพิ่มหนอ่ยนะครับ


เราสามารถ สั่งให้ client รัน command ของ dos ได้หรือเปล่าีครับ
แล้ว จาก code ที่ผมโพสไว้ด้านบน
มันสามารถ ทำงานได้(จาก client ) หรือเปล่าครับ
หรือว่าต้องใช้วิธี ไหนน
ช่วยแนะนำทีนะครับๆๆ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-01-24 19:02:53 By : nuicpe
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : สอบถามเรื่อง ProcessStartInfo("cmd.exe"); ไม่ทำงาน กับ client
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 00
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่