重定向命令行参数进行引导

问题描述 投票:1回答:3

我正在尝试用C而不是C#(不太便于移植)重写以下程序。显然,“ int system(const char * command)”对于完成程序是必需的。以“ int main(int argc,char * argv [])”开头将允许获取命令行参数,但是仍然存在难以理解的问题。您如何成功转义带有空格的参数?在下面的程序中,其中带有空格的参数(例如:screensaver.scr“这是一个测试”)将作为单独的参数(例如:screensaver.scr这是一个测试)传递到脚本,并且很容易引起问题。 >

namespace Boids_Screensaver
{
    static class Program
    {
        [STAThread]
        static void Main(string[] args)
        {
            System.Diagnostics.Process python = new System.Diagnostics.Process();
            python.EnableRaisingEvents = false;
            python.StartInfo.FileName = "C:\\Python31\\pythonw.exe";
            python.StartInfo.Arguments = "boids.pyw";
            foreach (string arg in args)
            {
                python.StartInfo.Arguments += " " + arg;
            }
            python.Start();
        }
    }
}

我正在尝试用C而不是C#(不太便于移植)重写以下程序。显然,“ int system(const char * command)”对于完成程序是必需的。开始...

c# python c arguments screensaver
3个回答
1
投票

2
投票

0
投票
© www.soinside.com 2019 - 2024. All rights reserved.