繁体   English   中英

从C#Windows应用程序编译MFC代码

[英]Compile MFC Code From C# Windows Application

我建立一个C#Windows应用程序编译和生成MFC代码,我GOOGLE了,很多,我发现这个线索非常有用的主题 ,但我面对2点的问题;

1)与编译相关,因为我的MFC项目具有4种不同的配置2适用于Oracle 10的2和适用于Orace 8i的2,但是当我在命令行中通过Oracle 10配置时,它无法识别它并在oralce 8上构建项目

Oralce 8配置:a)调试b)发布

Oralce 10配置:a)调试(Ora 10)b)发行版(Ora 10)

但是何时在命令行中传递这些值,例如;

devenv / build调试(Ora 10)“ c:\\ MySolutions \\ Visual Studio Projects \\ MySolution \\ MySolution.sln”

它不会通过命令行在给定的配置下构建它

2)与C#中的Process Class有关,我从Process.Start(CMD的路径)调用CMD,它会启动命令提示符,但是在打开窗口后将其关闭(我说关闭了它,因为我在任务中检查了Process选项卡经理,而且不在那里)。

请帮我解决一下这个。

谢谢

对于#2-发布一些代码-这是我的:

using System;
using System.Diagnostics;
using System.ComponentModel;

namespace MyProcess
{
    class MyProcess
    {
        public static void Main()
        {
           string CmdPath, CmdArgument, FrameworkPath;
           CmdPath = "cmd.exe";
           CmdArgument = "";
           FrameworkPath = "C:\\";
           ProcessStartInfo CmdLine = new ProcessStartInfo(CmdPath, CmdArgument);
           CmdLine.WindowStyle = ProcessWindowStyle.Maximized;
           CmdLine.WorkingDirectory = FrameworkPath;
           CmdLine.UseShellExecute = false;
           Process CmdProcess = new Process();
           CmdProcess.StartInfo = CmdLine;
           try
           {
              CmdProcess.Start(); 
           }
           catch (Exception e)
           {
               Console.WriteLine(e.Message);
           }
        }
    }
}

对于您的问题的第1部分,我非常确定您需要在带空格的所有参数周围加上引号,因此该行应如下所示:

devenv / build“调试(Ora 10)”“ c:\\ MySolutions \\ Visual Studio Projects \\ MySolution \\ MySolution.sln”

假定您的解决方案中有一个名为“ Debug(Ora 10)”的配置

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM