Tôi biết đó là một câu hỏi kỳ lạ nhưng tôi bị khóa vào một nhà cung cấp bên thứ ba khởi chạy một cmd.exe 32 bit trên máy chủ Windows Server 2008 R2 64 bit mục tiêu. Từ đây tôi muốn khởi chạy một cửa sổ PowerShell 64-bit và chạy một kịch bản lệnh.Làm thế nào để khởi động powerhell 64 bit từ 32-bit cmd.exe?
Dưới đây là thử nghiệm của tôi:
powershell.exe "Get-Module -ListAvailable| Where-Object {$_.name -eq 'FailoverClusters'}"
Nếu tôi chạy này từ một cmd.exe 32-bit Tôi nhận được gì trả lại. Nếu tôi chạy từ một cmd.exe 64 bit, tôi nhận được:
ModuleType Name ExportedCommands
---------- ---- ----------------
Manifest FailoverClusters {}
Bất kỳ ý tưởng nào về những gì tôi có thể làm để gọi tập lệnh 64 bit PowerShell từ trình bao 32 bit?
Chỉ cần đánh tôi vào cú đấm. :-) –
Tôi có Windows 7 Enterprise 64-bit và tôi nhận được "Hệ thống không thể tìm thấy đường dẫn được chỉ định" nếu tôi sử dụng. Vì vậy, dòng mà làm việc cho tôi để chạy 64 bit powershell là:% systemroot% \ syswow64 \ windowspowershell \ v1.0 \ powershell.exe – dotnetguy
@mishrud là nhầm lẫn. Gọi '% systemroot% \ syswow64 \ windowspowershell \ v1.0 \ powershell.exe' từ 32-bit cmd.exe sẽ mang lại cho bạn sức mạnh 32 bit. Bạn có thể xác minh điều này bằng cách sử dụng 'ls env:' Phiên bản 32-bit sẽ hiển thị 'PROCESSOR_ARCHITECTURE' là' x86' Hơn nữa, 'syswow64' chỉ chứa 32-bit tương đương 64-bit DLL và EXE. –