Tôi bắt đầu sử dụng PowerShell và tạo chức năng trong tệp 'thư viện' để cải thiện khả năng đọc mà tôi gọi từ 'nhân viên' của tôi kịch bản.Cách gọi hàm trong kịch bản PowerShell khác khi thực thi kịch bản PowerShell bằng cách sử dụng 'Chạy với PowerShell'
=================== Library file ==========================
function ShowMessage($AValue)
{
$a = new-object -comobject wscript.shell
$b = $a.popup($AValue)
}
=================== End Library file ==========================
=================== Worker file ==========================
. {c:\scratch\b.ps1}
ShowMessage "Hello"
=================== End Worker file ==========================
Chạy tập lệnh 'worker' hoạt động tốt khi trong PowerShell IDE nhưng khi tôi nhấp chuột phải vào tệp công nhân và chọn 'Chạy bằng PowerShell', bạn không thể tìm thấy hàm 'ShowMessage'. Cả hai tệp đều nằm trong cùng một thư mục. Điều gì có thể xảy ra ở đây?
Cũng lưu ý rằng hãy gọi tập lệnh bằng cách sử dụng '&', ví dụ: '&" c: \ scratch \ b.ps1 "' không nhập các hàm. – ashes999