Sử dụng Joey 's câu trả lời, bạn có thể sử dụng này để đặt "bí danh" thành các hội đồng. Về cơ bản nó gán một assembly cho một hàm với tên của bí danh mà bạn muốn.
function Global:Add_Assembly_Alias($STR_assembly, $alias) {
[string]$assembly = "$STR_assembly.{0}"
$ExecutionContext.InvokeCommand.InvokeScript(
$ExecutionContext.InvokeCommand.NewScriptBlock("
function Global:$alias(`$namespace) {
[string](`"$assembly`" -f `$namespace)
}
")
)
}
Ví dụ: nếu bạn muốn gán System.Windows.Forms để wforms bạn sẽ gọi hàm chính như
Add_Assembly_Alias System.Windows.Forms wforms
Nó tạo cho bạn những chức năng được gọi là "wforms" với không gian tên như là đối số mà bạn có thể sử dụng để thêm các đối tượng mới vv Nếu bạn muốn thêm ví dụ một đối tượng hộp văn bản bạn sẽ chỉ cần gọi
$tb = new-object (wforms TextBox)
Nó không nhiều, nhưng tôi nghĩ điều này gần như bạn có thể gán một assembly cho một cái gì đó tương tự như một bí danh. Rất tiếc, tôi không quản lý điều này cho các cuộc gọi trực tiếp của biểu mẫu
[Windows.Forms.MessageBox]::Show("Hello World!")
nhưng tôi hy vọng điều này vẫn hữu ích.
Chúc mừng, D
Cảm ơn bạn cho cả trả lời –
Tôi không biết về hệ thống được ngụ ý. Cảm ơn! – Kleinux
@Kleinux: Nó hoạt động để chỉ các kiểu, đó là lý do tại sao bạn có thể viết '[datetime]' thay vì '[system.datetime]' nhưng nó sẽ không hoạt động để nạp một assembly (nghĩa là 'Add-Type - Assembly Windows.Forms' sẽ không hoạt động). – Joey