首页 > 解决方案 > 尝试导入模块时故意使模块失败

问题描述

尝试使用 导入模块时,是否有规范的方法使模块失败import-module,例如,因为不满足特定的先决条件。

目前,我在模块的开头有以下三行:

if ( [IntPtr]::Size -ne 4 ) {
    throw '32 bit environment required' 
}

我想知道是否有更好的(或更一致的方式)来防止在 64 位环境中使用模块。

标签: powershellerror-handlingmodule

解决方案


我想知道是否有更好的(或更一致的方式)来防止在 64 位环境中使用模块。

PowerShell 的Module Manifest 架构为此提供了一个配置元素 - ProcessorArchitecture

New-ModuleManifest -Path My32BitOnlyModule.psd1 -ProcessorArchitecture x86

或者,如果您需要添加到现有模块清单:

@{
  # ...
  ProcessorArchitecture = 'x86'
  # ...
}

对于 64 位架构,标签为Amd64


推荐阅读