cscript / wscript的regserver参数是做什么的?

时间:2018-04-19 12:40:42

标签: vbscript

我有seen mentions in other places到cscript或wscript的-regserver参数 - 但找不到任何信息这可以准确地定义这个选项的作用,或者在你想要/需要使用它时真正澄清。

即使是内置的帮助也没有提到它:

λ cscript /?
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.

Usage: CScript scriptname.extension [option...] [arguments...]

Options:
 //B         Batch mode: Suppresses script errors and prompts from displaying
 //D         Enable Active Debugging
 //E:engine  Use engine for executing script
 //H:CScript Changes the default script host to CScript.exe
 //H:WScript Changes the default script host to WScript.exe (default)
 //I         Interactive mode (default, opposite of //B)
 //Job:xxxx  Execute a WSF job
 //Logo      Display logo (default)
 //Nologo    Prevent logo display: No banner will be shown at execution time
 //S         Save current command line options for this user
 //T:nn      Time out in seconds:  Maximum time a script is permitted to run
 //X         Execute script in debugger
 //U         Use Unicode for redirected I/O from the console

并且Microsoft's documentation也没有。

注意 - 我收集了一些我链接到的外部文章,这个选项可用于从Windows XP中的一些错误中恢复,也可能用于Vista。但这实际上并没有解释这个选项的含义或存在的原因。我不认为微软在事后作为FIX添加它,而是人们可以利用它来解决XP / Vista中的任何问题。

编辑:仅仅因为两个问题具有相同/相似的答案并不能使它们重复。相同的信息可以回答多个不同的问题。被称为潜在重复的问题与脚本可执行文件没有任何关系。这个问题的价值在于使用这些工具的人可以实际搜索并找到答案。他们不会轻易找到另一个(因为我在发布之前没有广泛搜索/谷歌搜索)。

1 个答案:

答案 0 :(得分:1)

这些实际上不是var result = data .OrderBy(i => i.TimeStamp) .ThenBy(i => i.Id) .Skip(start) .Take(length); 或{{1}}的唯一参数;相反,它们在Windows中是标准参数,可用作任何可充当COM服务器的EXE。

有关其运作方式的详细信息,请参阅此相关问题:remove a backslash before the dots in your pattern

这至少是https://superuser.com/questions/1164298/what-actually-happens-during-regserver-unregserver

  

如果服务器打包在EXE模块中,则应用程序希望   注册服务器使用命令行启动EXE服务器   参数/ RegServer 或-RegServer(不区分大小写)。如果   应用程序希望取消注册服务器,它启动EXE   命令行参数/ UnregServer 或-UnregServer。

     

在   自注册EXE检测这些命令行参数并调用   与DllRegisterServer和DLL中的DLL相同的操作   DllUnregisterServer分别在其下注册其模块路径   LocalServer32而不是InprocServer32或InprocHandler32。