我正在尝试通过python脚本实例化一个程序,如下所示
os.startfile( '"C:/Program Files/Autodesk/3ds Max 2010/3dsmax.exe"' )
因为3dsMax需要一点时间来加载,所以我想等到它完全加载完成。我检查任务管理器以查看3dsmax10.exe
是否在列表中,但它在进程一开始就在列表中(显然)。那么有没有办法找出它是否完全加载了呢?
任何帮助我们都将不胜感激
谢谢
发布于 2010-10-21 02:36:06
这是一个有点老套(不健壮)的解决方案。在命令行上使用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)
发布于 2010-05-28 17:01:28
完整的加载有点主观。就我所记得的,3DS MAX执行插件加载-这绝对是加载时间的主要部分-显示闪屏。只有在加载完成后,它才会显示其主窗口。
您可以利用这一事实,并使用WinAPI不断监视现有窗口,以了解主窗口何时出现。使用title text或wnd-class来查找它。
发布于 2010-07-31 01:05:36
您可以将一个简单的maxscript脚本放在maxhome\Scripts\Startup中,该脚本将在max完成启动时启动。这个脚本可以创建一个文件,或者通过com或tcp与您的python脚本对话。
https://stackoverflow.com/questions/2927049
复制相似问题