您可以使用以下开关和选项,从命令行启动MetaFacture.exe。

**句法**：

 MetaFacture.exe&gt;--

当路径或选项参数包含空格，破折号或斜杠时，必须将其写在引号内。

---

### 切换--culture（用户界面的语言）​

在命令行中，在开发系统调用之后包括此开关，以便设置用户界面的语言。

### 句法：

  
\--culture=  
   
: 典型的语言代码如下：de，en，fr，it，es，zh-CHS。

> 例如
> 
> 使用英语的用户界面启动MetaFacture：
> 
> MetaFacture.exe --culture=en

---

### 切换--profile（MetaFacture配置文件）​

在命令行中，在开发系统调用之后包括此开关，以便使用特定的配置文件启动MetaFacture。在不使用此开关的情况下启动MetaFacture时，将打开***选择配置文件***。

**句法：**

\--profile =“ ”  
   
: 您必须完全按照开发系统的***帮助 ➔ 关于***初始屏幕或计算机的“开始”菜单中显示的配置文件名称进行指定。

> 例如
> 
> MetaFacture.exe --culture=de --profile="MetaFacture V3.6"

---

### 开关--compare（开始工程比较）

在命令行中，在开发系统调用之后包含此开关，目的是为了使用特定的配置文件启动MetaFacture。在切换之后输入工程文件的路径，然后输入参考工程的路径。MetaFacture启动并打开***项目比较-差异***视图。

**句法：**

\--compare =“ ”“”

> 例如
> 
> MetaFacture.exe --compare "D:\\proj\\project1.project" "D:\\proj\\project2.project"

---

###  选项--project（MetaFacture工程）

在命令行中，在开发系统调用之后包括此选项，以便在MetaFacture中打开给定的项目。

**句法：**

\--project=”"  
   
：工程的文件路径

> 例如
> 
> 打开test工程。
> 
> MetaFacture.exe --culture=de --project="D:\\projects\\test.project"

---

### 选项--projectarchive (MetaFacture 工程归档)​

在命令行中，在开发系统调用之后包括此选项，以提取给定的工程归档并在MetaFacture中打开工程。

**句法：**

\--project=”"  
   
：工程的文件路径

> 例如
> 
> 打开test工程。
> 
> MetaFacture.exe --culture=de --project="D:\\projects\\test.project"

---

### 选项--runscript（执行脚本）​

在命令行中，在开发系统调用之后包括此选项，以便从MetaFacture执行给定的脚本文件。

***--runscript的命令行选项***

| --runscript=".py" | MetaFacture在启动时执行.py脚本文件。  您必须提供完整的脚本文件路径。 |
|---|---|
| --scriptargs:'  ... ' | 将此选项与--runscript选项一起使用。结果，参数 ... 被传递到脚本。参数将转发到Python变量sys.argv。 |
| --noUI | 将此选项与--runscript选项一起使用。  MetaFacture用户界面未打开。 MetaFacture打印从脚本生成的所有错误，警告，编译器报告和命令行消息。脚本信息(1: 严重文本）可以与其他消息分开（2：严重性为FatalError，错误，警告，信息），使用“ &gt;”运算符。 |
| --enablescripttracing | 将此选项与--runscript选项一起使用。结果，脚本文件的每个命令都显示在输出中。 |
| --textPrompts | 将此选项与--noUI选项一起使用。结果，消息服务方法和默认对话框在命令行中输出，供用户输入。  如果未指定--textPrompts，则将自动使用默认值确认所有消息服务提示。 |
| scriptdebugger {=""} | 将此选项与--runscript选项一起使用。它将IronPython设置为调试模式，以便可以使用外部调试器来调试Python脚本。为 定义了以下值（大写/小写无关）。  - auto: 自动检测当前进程的每个脚本中是否包含调试器。目前，只能自动检测基于.NET的调试器。检测到的调试器将覆盖--enablescripttracing标志。 - .NET: 激活基于.NET的调试器的调试，例如“ Visual Studio的Python工具”（PTVS）和SharpDevelop。使用此选项，调试器也可以包含在正在运行的脚本中，而不是“ auto”。       注意：当前使用--scriptdebugger而不提供值时的默认值。 - disabled: 禁用调试和自动检测。 - script: 将IronPython脚本引擎切换到调试模式，以激活set-trace调试器的调试。脚本本身必须连接到调试器或与调试器断开连接。 - tracing: 激活简单的集成脚本跟踪模式，并禁用自动检测（与--scripttracing开关相同）。 - $absolute\_path.py$: 启动与基于Python的调试器的连接的Python脚本的绝对路径。IronPython脚本引擎已切换到调试模式，以允许调试集合跟踪调试器。该脚本在初始化期间执行一次，并应定义以下非参数化函数：       在执行用户脚本以建立与调试器的连接之前，将立即执行scriptdebuggersetup。       执行用户脚本后或下载脚本引擎后，将立即调用scriptdebuggershutdown，并应关闭与调试器的连接。 |

> **在脚本文件中使用“ sys.argv”使用传输参数的示例**
> 
> start /b /wait MetaFacture.exe   
> \--runscript="D:\\Script\\ArgvAnd\_\_main\_\_Test.py"   
> \--scriptargs:'username password 3.14 "path=\\"C:\\temp\\\\"'
> 
>    
> 脚本文件ArgvAnd\_\_main\_\_Test.py
> 
> from \_\_future\_\_ import print\_function  
> import sys  
> print("sys.argv: ", len(sys.argv), " elements:")
> 
> for arg in sys.argv:   
>  print(" - ", arg)  
> print()  
> print("\_\_name\_\_: ", \_\_name\_\_)
> 
>   
>    
> 输出结果：stdout:
> 
> sys.argv: 6 elements:   
> \- D:\\TestScripts\\ArgvAnd\_\_main\_\_Test.py  
> \- username  
> \- password  
> \- 3.14  
> \- path= "C:temp"  
> \_\_name\_\_: \_\_main\_\_
> 
>   
>    
> 有关\_\_name\_\_全局变量的更多信息，请参见Python文档。

> 消息输出示例
> 
> start /b /wait MetaFacture.exe --runscript="D:\\Script\\AmpelTest.py" --noUI 1&gt;ScriptMessages.txt  
>    
> MetaFacture将脚本生成的所有消息转发到ScriptMessages.txt文件。其他消息将打印到命令行。
> 
> start /b /wait MetaFacture.exe --runscript="D:\\Script\\AmpelTest.py" --noUI 2&gt;NUL  
>    
> MetaFacture禁止显示所有消息，脚本消息除外。脚本消息将打印到命令行。  
> .  
> .选项--scriptdebugger的示例
> 
> 以下initdebug.py脚本已使用基于pydevd的调试器（例如PyDev / LiClipse和PyCharm）成功进行了测试。MetaFacture要使用此脚本，请从以下命令行开始：
> 
> \--profile="Fanta Development Build" --scriptdebugger="D:\\test\\charmdebug\\initdebug.py"
> 
>   
>    
> 文件：initdebug.py:
> 
> from \_future\_ import print\_function  
> from \_future\_ import unicode\_literals  
> import sys  
> sys.path.append(r"D:\\test\\Env2\\Lib\\site-packages\\pycharm-debug.egg")  
> import pydevd  
> def scriptdebuggersetup():  
> pydevd.settrace('localhost', port=51234, stdoutToServer=True, stderrToServer=True)  
> def scriptdebuggershutdown():  
> pydevd.stoptrace()

---

###  选项--ignorewhitespace​

在命令行中，在--compare  选项之后，将此选项添加到开发系统调用中，以便在工程比较中忽略空格。请注意，仍会考虑语义上相关的空格，例如STRING文字中的空格。

**语法：**

\--compare =“”“” --ignorewhitespace =“ true” |“ false”

> 例如
> 
> MetaFacture.exe --compare "D:\\proj\\project1.project" "D:\\proj\\project2.project" --ignorewhitespace="true"

---

### 选项--ignorecomments​

在命令行中，在--compare  选项之后，将此选项添加到开发系统调用中，以便在工程比较中忽略注释。

**句法：**

\--compare =“”“” --ignorewhitespace =“ true” |“ false”

> **例如**
> 
> MetaFacture.exe --compare "D:\\proj\\project1.project" "D:\\proj\\project2.project" --ignorecomments="true"

---

### 选项--ignoreproperties​

在命令行中，将此选项添加到开发系统调用中，以在工程比较中忽略对象属性（访问权限，编译设置，目录，位图等）。

**句法：**

\--compare =“”“” --ignorewhitespace =“ true” |“ false”

> **例如**
> 
> MetaFacture.exe --compare "D:\\proj\\project1.project" "D:\\proj\\project2.project" --ignorecomments="true"

---

### 选项 --skipunlicensedplugins（缺少组件许可证）​

在命令行中，将此选项添加到开发系统调用中以跳过提示是否仍应加载未许可组件的提示。如果是这样，则MetaFacture**不会**暗示加载这些组件。

> **例如**
> 
> MetaFacture.exe --skipunlicensedplugins