码迷,mamicode.com
首页 > 数据库 > 详细

Visual Studio Form & DataBase (4)

时间:2015-11-16 19:11:11      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:

解决启动外部程序问题。

技术分享
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Diagnostics;
 4 using System.Linq;
 5 using System.Text;
 6 using System.Threading.Tasks;
 7 
 8 namespace OuterExe
 9 {
10     class Program
11     {
12         static void InputFiles()
13         {
14             // In dir: Outer
15             // Input main.cpp & data.in & data.out
16         }
17 
18         static void Main(string[] args)
19         {
20             InputFiles();
21             try
22             {
23                 Process Run = Process.Start("Outer\\main.bat");
24                 if (Run != null)
25                 {
26                     Run.WaitForExit();
27                     if (Run.HasExited)
28                         Console.WriteLine("External program has exited.");
29                 }
30                 else
31                 {
32                     Run.Kill();
33                     Console.WriteLine("External program has exited by force.");
34                 }
35             }
36             catch(Exception exception)
37             { Console.WriteLine(exception.Message); }
38             
39             string ErrorString = System.IO.File.ReadAllText("Outer\\error");
40             string Answer = System.IO.File.ReadAllText("Outer\\data.out");
41             string YourAnswer = System.IO.File.ReadAllText("Outer\\test.out");
42             
43             if (ErrorString != "")
44             {
45                 Console.WriteLine("Compiling error:\n" + ErrorString);
46                 Console.ReadKey();
47                 return;
48             }
49             if (YourAnswer == Answer)
50                 Console.WriteLine("Accepted");
51             else Console.WriteLine("Wrong Answer");
52             Console.ReadKey();
53         }
54     }
55 }
View Code

在 debug 里面,有个 Outer 文件夹。

用 main.bat 统筹程序的执行。

技术分享
1 @echo off
2 g++ Outer\main.cpp -o Outer\main 2> Outer\error
3 Outer\main < Outer\data.in > Outer\test.out
View Code

要注意的是 g++ 的执行目录不是 Outer,而是 debug,这是 bat 的特点决定的。

Visual Studio Form & DataBase (4)

标签:

原文地址:http://www.cnblogs.com/gu-castle/p/4969603.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!