未完待续 ps_app= createOLEObject "Photoshop.Application" ps_app.Load "d:\\test\\aaa.tga" ps_app.ActiveDocument.Selection.SelectAll() ps_app.ActiveDocument.Selection.Copy() ps_app.ActiveDocument.Paste() ps_app.Quit() ReleaseOLEObject ps_app…
MaxScript里开不了线程,但是可以用.Net的BackgroundWorker来做后台处理 BackgroundWorker Fn BackgroundTcpListenerDoWork theSender theEvent = ( IPAddress = DotNetClass "System.Net.IPAddress" theIPAddress = IPAddress.Parse "127.0.0.1" theTcpListener = DotNetOb…
前天看到一位大神写用MaxScript实现重启3dsMax的方法,用的是.net临时编译一个exe出来,然后用这个新的进程来关闭并开启新的max.感觉这种思路不错,或许可以用在别的地方.不过谈及max的重启,用那办法写几十行的代码显得繁琐了. 我想了一下,其实有个相当简单的办法,两行脚本搞定: callbacks.addscript #postSystemShutdown "shellLaunch (getDir #maxroot + \"3dsmax.exe\") \&qu…
之前用 hiddenDOSCommand 本机测试通过,但是换其他电脑有时会不能用... fn xcopy oldfile newfile = ( newfilepath = newfile + "\\" + getFilenameFile oldfile xcopy_cmd = "xcopy /s /e /i /y " + oldfile + " " + newfilepath-- + " &&rd /s /q &qu…
关于如何获取/清除 MAXScript 侦听器内的文本 用来保存记录?还没想到实际用处,先记上. macroRecorder as string listener as stringclearListener()…
之前写过一个 关于 MAXScript 中文路径返回上级目录 的博文 今天无意中发现了一个更简单的方法 代码如下: fn newfile filepath = ( nf = getfilenamepath filepath nf[nf.count] = "" nf ) --返回上级路径 newpath "D:\Program Files\Autodesk\3ds Max 2014\小一\工具" 这样确实比以前清爽多了…
MAXScript 中可以对文件进行创建删除复制等操作但是唯独不能删除文件夹... 网上搜了一下批处理的剪切方法,在 MAXScript 里调用一下就好了 fn xcopy oldfile newfile = ( newfilepath = newfile + "\\" + getFilenameFile oldfile xcopy_cmd = "xcopy /s /e /i /y " + oldfile + " " + newfilepath…
官方帮助文档FileStream Values部分有相关介绍. fn format_txt filepath filetext = ( if doesFileExist filepath == true then ( fin = openfile filepath mode:"r+" seek fin #eof txt = filetext + "\n" format txt to:fin close fin ) else ( newfile = createFil…
MAXScript 官方文档里关于获取文件夹下所有文件的方法 fn getFilesRecursive root pattern = ( dir_array = GetDirectories (root+"/*") for d in dir_array do join dir_array (GetDirectories (d+"/*")) my_files = #() for f in dir_array do join my_files (getFiles (f…
1,将场景中所有选中物体整体导出为一个fbx文件 exportfile filename #noprompt selectedOnly:true using:FBXEXP 2,将场景中所有选中物体各导出为一个文件 Sel = Selection as array for i=1 to Sel.count do ( Select Sel[i] objname=$.name exportfile objname #noprompt selectedOnly:true using:FBXEXP ) 下…