Tác vụ theo lịch trình hoạt động trên ổ đĩa được ánh xạ khi được định cấu hình cho chế độ Windows XP, nhưng không phải cho Windows 7


1

Có một PC Windows 7 với một tác vụ theo lịch trình. Điều duy nhất nó làm là chạy tệp VBS nằm trên ổ đĩa được ánh xạ trỏ đến chia sẻ mạng:

M:\Folder\Script.vbs

nơi M:là ổ đĩa ánh xạ.

Tác vụ được đặt thành Run whether user is logged in or notvà nó đã lưu thông tin đăng nhập cho người dùng có quyền truy cập vào thư mục đó.

Bây giờ, nếu tôi chọn mục này trong danh sách thả xuống:

nhập mô tả hình ảnh ở đây

sau đó nhiệm vụ hoạt động. Tuy nhiên nếu tôi chọn rằng:

nhập mô tả hình ảnh ở đây

sau đó nó không thành công với mã 8007010B(mà theo tôi hiểu là "Tên thư mục không hợp lệ"). Nó không thành công cho dù có ai đó đăng nhập hay không, bất kể điều gì đã kích hoạt tác vụ (lịch trình hoặc người dùng thực hiện Runthủ công). Nó cũng thất bại nếu tôi đăng nhập vào máy tính với tư cách là người dùng theo đó nhiệm vụ được cho là chạy và Runnó thủ công.

Khi tôi đăng nhập với tư cách là người dùng mà tác vụ chạy, tôi có quyền truy cập vào ổ đĩa được ánh xạ và có thể chạy tập lệnh với Explorer không có vấn đề gì.

Rõ ràng là có một số shim đồng hành đá vào, nhưng cái nào? Và tôi phải làm gì để nó hoạt động khi 'được cấu hình cho Windows 7', chế độ gốc cho máy tính?

Tôi sẽ để nguyên như vậy, nhưng nếu ai đó nhầm 'nâng cấp' tác vụ lên chế độ Windows 7, thì không có cách nào quay lại: tùy chọn Windows XP sẽ bị xóa khỏi menu cho tác vụ đó. Để có nó trở lại, người ta cần xuất tác vụ dưới dạng XML, xóa nó và nhập lại.

Câu trả lời:


2

Khi tác vụ chạy, bản đồ ổ đĩa M: không tồn tại trong ngữ cảnh của người dùng / phiên, tác vụ đang được chạy như.

Tham chiếu vị trí mạng bằng UNC hoặc sửa đổi tập lệnh của tác vụ để ánh xạ M: tới đường dẫn trước khi thực hiện phần còn lại của công việc.


Đó có thể là trường hợp, nhưng tôi muốn hiểu chính xác tại sao. Tại sao nó hoạt động trong chế độ XP? Tại sao nó không hoạt động ở chế độ 7 khi tôi đăng nhập đúng người dùng và đã có ổ đĩa được ánh xạ (vì một phiên khác được tạo cho tác vụ để chạy, bỏ qua phiên hiện có?)? Ngoài ra, tôi không muốn thay đổi đường dẫn thành UNC vì tập lệnh cũng sử dụng các đường dẫn M: và các tập lệnh khác mà nó gọi cũng vậy.
GSerg

@GSerg Ngoài ra, hãy thử bỏ chọn "Chạy với đặc quyền cao nhất", nó cản trở tôi theo những cách kỳ lạ mỗi khi tôi cố gắng sử dụng nó.
Ƭᴇcʜιᴇ007

1

@ Cʜιᴇ007 là chính xác. Chạy tập lệnh bằng cách sử dụng " Chạy cho dù người dùng có đăng nhập hay không " sử dụng phiên hệ thống và không thể thấy các ổ đĩa của phiên người dùng vật lý.

Một giải pháp khác là tạo một tác vụ khác sử dụng cùng một tài khoản người dùng và sử dụng cùng lựa chọn " Chạy cho dù người dùng có đăng nhập hay không ". Tác vụ này sẽ chỉ được sử dụng để ánh xạ các ổ đĩa mong muốn mà các Tác vụ theo Lịch trình khác của bạn dựa vào. Các ổ đĩa sẽ được ánh xạ trong phiên hệ thống và cho phép các tác vụ khác của bạn nhìn thấy các ổ đĩa được ánh xạ tương tự. Tôi kích hoạt tác vụ này chạy một tệp bó để ánh xạ ổ đĩa cho người dùng hệ thống cứ sau 5 phút.

Ví dụ về ánh xạ Powershell

if (-not (test-path E:)) {Log -Letter "E:"; Net Use E: \\server\share 'password' /user:user /persistent:yes /y}

Ánh xạ hàng loạt / Powershell đơn giản

Net Use E: \\server\share 'password' /user:user /persistent:yes /y


0

Theo chủ đề này , bạn cần thêm cùng một đường dẫn vào hộp "bắt đầu trong". Thêm M:\Folder\vào đầu trong hộp và nó sẽ hoạt động tốt.


Tôi đã cố gắng M:\Folder, M:\Folder\ , "M:\Folder""M:\Folder\". Nó không hoạt động. Nó hoạt động theo chế độ Windows XP, nơi nó M:\Folderkhông có dấu ngoặc kép hoặc dấu gạch chéo, nhưng dường như nó không có ảnh hưởng đến chế độ Windows 7.
GSerg

Kỳ dị. tất cả các nghiên cứu tôi đã thực hiện nói rằng hộp bắt đầu là chìa khóa ... không có dấu ngoặc kép.
Nathan C
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.