我试图用C重写下面的程序,而不是C(它的可移植性较差)。很明显,这是必要的。以“intmain(intargc,char*argv[])开头将允许获取命令行参数,但仍然存在一个难以理解的问题。你如何成功地避开带有空格的争论?在下面的程序中,参数中包含空格(例如:屏幕保护程序.scr“这是一个测试”)将作为单独的参数传递给脚本(例如:屏幕保护程序.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();
}
}
}
对不起,我的英语:)。在
窗户全乱了。每个程序都有自己的规则。在
在windows下执行此操作的正确方法是使用_spawnv
在类unix操作系统下,它的等价物是
fork()
,后跟execv
。在相关问题 更多 >
编程相关推荐