防止导入时执行特定代码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了防止导入时执行特定代码相关的知识,希望对你有一定的参考价值。

我正在研究一个多文件VBScript项目。一些用作库(它们仅包含Subs和Functions),而另一些用作程序条目。

我正在使用此功能从其他文件导入功能

Dim Fso
Set Fso = CreateObject("Scripting.FileSystemObject")

Sub Import(ByVal FileName)
  Dim File
  Set File = Fso.OpenTextFile(FileName, 1) ' ForReading
  ExecuteGlobal File.ReadAll()
  File.Close
End Sub

但是,有时我希望文件能够在导入时自行运行,并且我希望它在两种情况之间表现不同。我认为有些东西与Python相当:

if __name__ == "__main__":
    # Code when run directly

有没有办法在VBScript中执行此操作?或者我是否必须实施一个过滤器,在导入时手动删除所有不需要的代码?

答案

使用WScript.Script[Full]Name检查模块是否包含或独立执行。

以上是关于防止导入时执行特定代码的主要内容,如果未能解决你的问题,请参考以下文章

Swift新async/await并发中利用Task防止指定代码片段执行的数据竞争(Data Race)问题

防止Python代码导入某些模块?

从 excel 导入数据时防止 SQL Server 2008 中的行重复

如何防止在方向更改时重新创建片段寻呼机中的片段?

防止导航到同一个片段

使用导航从一个片段导航到另一个片段后,防止后按工作