c# - 暂停程序直到 JSFL 文件完成

标签 c# actionscript-3 synchronization jsfl

我正在尝试从 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/

相关文章:

c# - Visual Studio 2012 不创建新的 SQL 表

c# - WCF 最容易实现的安全模式

C# 使用泛型类而不指定类型

c# - 运算符 '&' 不能应用于类型 'T' 和 'T' 的操作数

actionscript-3 - Flash AS3 - 将多个对象拖放到一个目标?

php - 如何实时同步两个不同mysql数据库的两个表?

apache-flex - FLEX XMLDecoder 将 `09.00` 变为 "09.00",但将 `10.00` 变为 10

php - AS3 中的日期格式

bash - 如何同步(锁定/解锁)从多个脚本访问 bash 中的文件?

java - 为什么在syncedList()或Vector已经同步的情况下,为什么我们仍然需要外部同步?