Starting the license server service from a batch file

It’s rare, but the occasional customer has a problem where the license server keeps stopping (for example, after the computer goes to sleep). Normally the license service should always be running, but if you were really stuck and needed a workaround, you could add something to XSI.bat to start the license server before starting xsi.exe.

For example, here’s something I got from stackoverflow. You probably could just call sc start; if the service is already running, sc will just report that and nothing bad will happen.

@echo off
for /F "tokens=3 delims=: " %%H in ('sc query "Softimage License Server" ^| findstr "STATE"') do (
  if /I "%%H" NEQ "RUNNING" (
   sc start "Softimage License Server"
   echo "Starting Softimage License Server"

The service name (on lines 2 and 4) is the same name you specified in LMTOOLS:

Missing shaders in the preset manager

If you find that you’re missing nodes in the render tree Preset Manager, then check the Softimage install folder. In particular, check

  • $XSI_HOME\Application\phenolib\spdl
  • $XSI_HOME\Application\phenolib\spdl\mibase

In a working Softimage installation, like mine , the content of the Preset Manager is determined by spdl/mi files in those folders (and perhaps others too).

For example, if I delete mia_lens_bokeh.spdl from $XSI_HOME\Application\phenolib\spdl\mibase, then Bokeh (mia) disappears from the render tree preset manager. If I put it back, and refresh the preset manager, the shader re-appears.

Try or Activate is not for network licenses

This Try/Activate screen means that you are running in Standalone mode. Try gets you a Trial standalone license, which is good for 30 days and cannot be reset. Activate is for Standalone licenses only. If you try to activate a Network license, you’ll get an Error 123. I used to see these types of errors every release.


Here are some related links:

Objects not saved normally?

So I saved my little trivial scene yesterday and I got this:

' WARNING : 3000 - Save: [1] objects were not saved normally
' WARNING : 3000 - -- [Scene_Root.Camera] was saved, but is disconnected from the scene. (Floating object)

Normally I ignore these warnings, but I didn’t like the idea of saving a scene with a disconnected camera. I remember when you were able to save scenes without a camera; you just couldn’t open them again.

My camera view was still working, so I checked it, and I had an extra camera (that I didn’t create).
Long story short, I saved the scene and it seemed ok after. The extra camera disappeared.

See also this post about WARNING 3000 Objects were not saved normally.

The case of the dotXSISceneConverter that wouldn’t load into Maya

In this case, a customer installed Crosswalk for Maya, but he got “Unable to dynamically load dotXSISceneConverter.mll” errors when he tried to load the plugin.

// Error: line 1: Unable to dynamically load : C:/Program Files/Autodesk/Maya2013/bin/plug-ins/dotXSISceneConverter.mll
The specified module could not be found.
// Error: line 1: The specified module could not be found.
// Error: pymel : Failed to get controlCommand list from dotXSISceneConverter // 
// Error: pymel : Failed to get modelEditorCommand list from dotXSISceneConverter // 
// Error: pymel : Failed to get command list from dotXSISceneConverter // 
// Error: pymel : Failed to get constraintCommand list from dotXSISceneConverter // 
// Error: pymel.core : Failed to get depend nodes list from dotXSISceneConverter // 
// Error: line 1: The specified module could not be found.
 (dotXSISceneConverter) // 

Now, this is pretty much the same error you get in Softimage if your PATH is missing the C:\Program Files\Common Files\Softimage location. That’s where the main Crosswalk DLL is installed. To verify this, I fired up Dependency Walker and loaded dotXSISceneConverter.mll (the Maya Crosswalk plugin). And sure enough, I saw that the Maya plugin depends on Crosswalk_2013.0.64.dll (the other errors are for Maya DLLs, so they can be safely ignored, and anything about IESHIMS.DLL can always be ignored).


So the fix is to add the missing Common Files\Softimage path to the PATH environment variable. The Crosswalk installer is supposed to take care of adding C:\Program Files\Common Files\Softimage to the PATH environment variable, but in this case, it apparently didn’t.

Brush properties saved in scene file

Brush properties are stored in the scene file. Who knew? I certainly didn’t. Given where Brush Properties appear in the explorer, I didn’t expect them to be saved in a scene file.

What happened was that I loaded up a customer scene, activated the vertex paint brush, and it didn’t work. But I had just been painting vertex colors before I loaded their scene! I didn’t think to check the brush properties until later, so I spent a bit of time scratching my head over this…until finally I noticed that Selection was set to Use, not Ignore.


I tested this by saving scenes with different brush settings, and then reloading them. And different brush settings came in with each scene.

The case of McAfee antivirus, VBScript, and the Softimage startup crash

As I’ve mentioned before, Softimage cannot run without VBScript. You won’t get any errors with xsi.exe, just a crash, usually sometime after the splash screen. But xsibatch will give you some errors that tell you what the problem is:

C:\Program Files\Autodesk\Softimage 2013\Application\bin>xsibatch -processing -script %TEST%\test.vbs
Autodesk Softimage 11.0.525.0

ERROR : 2000 - Failed creating scripting engine: VBScript.
ERROR : 2000 - Failed creating scripting engine: JScript.

It turns out the problem is related to McAfee antivirus, which for some reason has overwritten some important VBScript and JScript registry values.

To fix this, you need to get back the VBScript and JScript registry entries. I haven’t had to do this myself, but I think this page gives a good explanation of the problem and what to do:

You’ll find a number of other pages on the Web about this. For example, here’s a thread on Note that fixing just VBScript is probably sufficient to get Softimage to start, but you’d still be missing JScript.

Related post: The case of the missing vbscript

Checking the environment of a running program

Sometimes when you’re troubleshooting, it’s a good idea to check the environment in which Softimage is running.
You can check specific environment variables in the script editor like this:

import os
print os.getenv( "XSI_USERHOME" )
print os.getenv( "TEMP" )

or like this:

print XSIUtils.Environment("XSI_BINDIR")

But I would typically use Process Explorer to see the full environment:
or Process Monitor (in Process Monitor, you just have to find the Process Start operation for XSI.exe and double-click it).