鳕鱼天空

This is Mr Wang's Tech Blog.

C# 带参数隐藏启动air应用程序

一直使用网上下载的scratch2绿色版,但这个绿色程序有个缺陷,无法带参数启动,具体说就是无法在双击SB2文件时打开它,而是打开一个空白的scratch程序。

经过对命令行的研究,发现是通过adl.exe来启动的,然后通过对运行窗口的隐藏,完成了新的Scratch2引导程序,关键代码如下

[STAThread]
static void Main(string[] args)
{
    string root = AppDomain.CurrentDomain.BaseDirectory;

    Application.EnableVisualStyles();
    Application.SetCompatibleTextRenderingDefault(false);

    ProcessStartInfo psi = new ProcessStartInfo(root+"bin\\scratch.exe");

    psi.Arguments = " \"" + root + "application.xml\" -nodebug";

    if(args!=null && args.Length>0)
    {
        psi.Arguments += " -- \"" + args[0] + "\"";
    }

    psi.UseShellExecute = false;
    psi.WindowStyle = ProcessWindowStyle.Hidden;
    psi.CreateNoWindow = true;

    Process.Start(psi);
}

 

后来看到了一篇相关文章,用C++做个启动器可以用来参考:

http://blog.csdn.net/worldspark/article/details/8555753