Sichere Szenenausführung – Gesperrte Befehle

In diesem Thema werden alle Befehle aufgelistet, die in eingebetteten Skripts der Funktion Sichere Szenenausführung gesperrt sind.

MAXScript-Befehle

Wenn im Dialogfeld Einstellungen unter Sichere Szenenausführung die Option MAXScript-Systembefehle sperren aktiviert ist, können die folgenden MAXScript-Befehle nicht ausgeführt werden, sofern sie in eingebetteten Skripts enthalten sind:

Anmerkung: Diese Befehle werden auch gesperrt, wenn sie von Skripts oder Skriptdateien aufgerufen werden, die innerhalb von in der Szene eingebetteten Skripts ausgeführt wurden, z. B. beim Aufruf von execute(), executeScriptFile(), fileIn(), readValue() oder readExpr(). Befehle werden auch gesperrt, wenn sie in skriptgesteuerten benutzerdefinierten Attributen enthalten sind.

Die Anzeige eines Rollouts, das ActiveX- oder dotNet-Steuerelemente enthält, wird gesperrt, wenn die Definition in einem in der Szene eingebetteten Skript enthalten ist.

Das Makroskript-Definitionsschlüsselwort ist gesperrt.

Diese Dateimethoden sind in allen Fällen gesperrt:

Diese rein internen systemTools-Funktionen sind gesperrt:

Zeichenfolgen, die mit getUserPropVal() ausgewertet werden, gelten als eingebettete Skripts und werden gesperrt, wenn sie gesperrte Befehle enthalten. Dies geschieht unabhängig davon, ob sich getUserPropVal() selbst in einem eingebetteten Skript befindet.

Für bestimmte Erweiterungen oder Dateien gesperrte Funktionen

Diese Dateimethoden sind für das Ändern von geschützten Dateien und Dateien mit geschützten Erweiterungen gesperrt:

  • DOffen (schreibgeschützte Öffnungsmodi r, rt und rb sind immer zulässig)
  • DateiÖffnen (schreibgeschützte Öffnungsmodi r, rt und rb sind immer zulässig)
  • createFile
  • openLog
  • copyFile
  • DateiUmbenennen
  • IniEinstellungLösch
  • IniEinstellungenFestlegen
Die geschützten Dateien sind:
  • 3dsmax.ini
  • PackageContents.xml
  • Plugin.ini
  • Plugin.UserSettings.ini
  • FotometrischesLichtVorlagen.ini
  • PhysicalMaterialTemplates.ini
  • Benutzerdefinierte 3dsmax.ini- und plugin.ini-Dateien, die durch Befehlszeilenargumente angegeben werden

Die geschützten Erweiterungen lauten: .bashrc, .bat, .bin, .bmf, .bmi, .bms, .cmd, .com, .cpl, .dla, .dlb, .dlc, .dle, .dlf, .dlh, .dli, .dlk, .dll, .dlm, .dln, .dlo, .dlr, .dls, .dlt, .dlu, .dlv, .dlx, .dly, .dlz, .exe, .flt, .gadget, .gup, .inf1, .ins, .inx, .isu, .job, .jse, .lnk, .mcr, .ms, .msc, .mse, .msi, .msp, .mst, .mxs, .mzp, .paf, .pif, .ps1, .py, .pyc, .pyd, .pyo, .pyw, .reg, .res, .rgs, .scr, .sct, .shb, .shs, .u3p, .vb, .vb3, .vbs, .vbscript, .ws, .wsf, .wsh.

Anmerkung: 3ds Max bereinigt den Dateinamen und verwirft die vom Betriebssystem nicht erkannten Zeichen, bevor ermittelt wird, ob die Datei gesperrt ist. Beispiel: Alle nachfolgenden Punkte werden verworfen, sodass das Dateipräfix .ms.. als .ms gilt.

Sonderfälle von Dateimethoden:

  • DateiEin: Gesperrt für alle Dateien mit anderen Erweiterungen als .ms, .mse und .mxs
  • SkriptdateiAusführen: Gesperrt für alle Dateien mit anderen Erweiterungen als .ms, .mse und .mxs; für .py und .pyw auch dann nicht gesperrt, wenn die Option Python-Skripte sperren deaktiviert ist.

Geschützte Dateispeicherorte

Wenn MAXScript-Systembefehle blockieren aktiviert ist, wird jeder Befehl, der in das Dateisystem schreiben kann, am Zugriff auf diese Speicherorte gehindert, aus denen 3ds Max-Plug-Ins und Skripte lädt:

  • Das 3ds Max-Installationsverzeichnis
  • Verzeichnis für Benutzerwerkzeuge (normalerweise C:\Benutzer\<BENUTZER>\Autodesk\3ds Max <Jahr>\User Tools)
  • Die Speicherorte für Benutzerskripts, die unter Zusätzl. Skripts, Zusätzliche Startskripts und Zusätzliche Makros im Dialogfeld Benutzer- und Systempfade konfigurieren definiert sind (in MAXScript sind das #userScripts, #userStartupScripts und #userMacros).
  • Plug-In-bezogene Verzeichnisorte, die in plugin.ini oder Plugin.usersettings.ini definiert sind oder beim Start mit der Befehlszeilenoption -p an 3ds Max übergeben werden oder die durch die Umgebungsvariable ADSK_APPLICATION_PLUGINS definiert werden.
  • Das Verzeichnis ProgramData (in der Regel C:\ProgramData)
  • Das Verzeichnis %LOCALAPPDATA%\Autodesk\ApplicationPlugins\

Python-Befehle

Wenn im Dialogfeld Einstellungen unter Sichere Szenenausführung die Option Python-Skripte sperren ausgewählt ist, werden alle Python-Befehle, die aus eingebetteten Szenen-Skripten aufgerufen wurden, gesperrt.

.NET-Befehle

Wenn im Dialogfeld Einstellungen unter Sichere Szenenausführung die Option .NET-Code von Drittanbietern sperren ausgewählt ist, werden alle .NET-Framework-Klassen, einschließlich .NET-Steuerelementen, beim Ausführen aus eingebetteten Szenen-Skripten gesperrt, mit Ausnahme derjenigen, die im Lieferumfang von 3ds Max-Plug-Ins enthalten sind oder von 3ds Max verwendet werden.

Darüber hinaus wird der MAXScript-Befehl dotNet.loadAssembly() gesperrt.

Dies ist die Liste der zulässigen (in der Whiteliste vorhandenen) .NET-Typen, alle anderen sind gesperrt: