如何检查MAX是否已完成加载

时间:2010-05-28 06:37:30

标签: python 3dsmax

我试图通过python脚本实例化一个程序,如下所示

os.startfile('“C:/ Program Files / Autodesk / 3ds Max 2010 / 3dsmax.exe”')

由于Max需要一点时间来加载,我想等到它完全加载完毕。我检查任务管理器以查看列表中是否有“3dsmax10.exe”,但是一旦进程开始(显然)它就在列表中。那么有没有办法找出它是否已完全装满?

感谢任何帮助

由于

3 个答案:

答案 0 :(得分:2)

这是一个hackish(非强大)解决方案。在命令行上使用MAXScript脚本启动3ds Max。例如

c:\3dsmax\3dsmax -U MAXScript myscript.ms

正如Parceval建议的那样,这个脚本可以使用MAXScript命令创建一个新文件:

createFile c:\tmp\myfile.txt

接下来在Python中等待文件存在(不要忘记先删除它)。总而言之:

while not os.path.exists(c:\tmp\myfile.txt):
   time.sleep(1)

答案 1 :(得分:1)

完全加载有点主观。据我所知,3DS MAX执行插件加载 - 这是加载时间的绝对主要部分 - 显示启动画面。只有在加载完成后才会显示其主窗口。

您可以使用此事实并使用WinAPI持续监视现有窗口,以了解主窗口何时出现。使用标题文本或wnd-class来查找它。

答案 2 :(得分:1)

您可以在 maxhome \ Scripts \ Startup中放置一个简单的maxscript脚本,该脚本将在最大完成启动时启动。这个脚本可以创建一个文件,或通过com或tcp与你的python脚本通信。