2013-08-07 47 views
5

SDK windows v7.1 có tập lệnh SetEnv.Cmd trong thư mục nhị phân để thiết lập chính xác môi trường của nó. Vấn đề là kịch bản này rõ ràng chỉ hoạt động với cmd.exe và tôi không thể tìm thấy một tương đương cho powershell bất cứ nơi nào.Môi trường Windows SDK và PowerShell

Vì vậy, tôi buộc phải sử dụng cmd.exe hoặc là có một cách để sử dụng powershell (ngoài việc viết lại kịch bản SetEnv.Cmd bằng tay - nếu ngay cả điều đó sẽ hoạt động?).

Trả lời

2

Có người đã viết một kịch bản ps1 mà phân tích ra setenv của SDK để bạn có thể tránh các quá trình thêm:

http://www.tavaresstudios.com/Blog/post/The-last-vsvars32ps1-Ill-ever-need.aspx

+1

Được chấp nhận là câu trả lời vì nó có vẻ hoạt động tốt (mặc dù nó đặt một số biến mà tôi không nghĩ nên thực sự được đặt và cần một tinh chỉnh để bỏ qua biến null) và nó thanh lịch hơn (hoặc overengineered;)) so với giải pháp khác . – Voo

2

Bạn có thể khởi chạy phiên bản CMD.EXE, chạy SetEnv.cmd và sau đó khởi chạy PowerShell từ trong cửa sổ CMD. Ví dụ PowerShell mở ra sẽ nhập các biến môi trường từ cá thể CMD sinh ra nó.

Rất tệ, nhưng nó hoạt động.

Tôi đã viết một tập lệnh theo lô để thực hiện việc đó cho tôi và chỉ tạo lối tắt cho nó trên màn hình của tôi. Dưới đây là một ví dụ:

@echo off 
call "C:\Path\To\SetEnv.cmd" param1 param2 param3 
powershell.exe -noexit 
+0

Trong trường hợp này "hoạt động như mong đợi" là tất cả tôi quan tâm cho. Powershell là tốt hơn rất nhiều so với cmd. – Voo