【问题标题】:Prevent specific code from being executed when imported防止导入时执行特定代码
【发布时间】:2018-06-04 21:50:54
【问题描述】:

我正在处理一个多文件的 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 中做到这一点?还是我必须实现一个过滤器,在导入时手动删除所有不需要的代码?

【问题讨论】:

    标签: import vbscript include


    【解决方案1】:

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

    【讨论】:

    • 绝妙的答案!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多