我正在尝试从 C# 项目中运行一个 JSFL 脚本,其中 JSFL 脚本打开一个 .fla 文件,修改它 n 次,并在关闭前导出 n 个 .swf 文件。在 C# 项目中,我通过 Process 类启动 JSFL 脚本。我尝试通过 myProcess.WaitForExit() 命令等待 JSFL 进程完成,但它不起作用。我的 C# 代码的其余部分在 JSFL 进程完成导出其 .swf 文件之前执行。有什么方法可以抛出 C# 项目可以从 JSFL 文件或其他解决方案捕获的内容吗?
最佳答案
一种解决方案(尽管很可能不是最好的解决方案)是让您的 C# 代码查找正在创建的 SWF 文件。只有在它们被更新/创建后,JSFL 脚本才会完成,所以您知道您的 C# 继续前进是安全的。如果无法知道 C# 程序需要查找多少 SWF 文件,您可以改为让 JSFL 脚本写入某种日志文件,并让 C# 程序每隔一段时间读取该日志,查看用于表示 JSFL 脚本已完成其任务的某种标记。
诚然,这可能远非最佳方法(而且我对 C# 的了解还不够深,无法判断您所看到的是设计使然还是错误迹象)。但运行 JSFL/Flash 可能只是完全异步的情况,如果是这样,也许日志文件方法是解决问题的最快途径。
关于c# - 暂停程序直到 JSFL 文件完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7326394/