Câu hỏi HTA không thể chạy ie4uinit.exe


Tôi đang cố gắng làm mới các biểu tượng trên màn hình từ HTA bằng cách sử dụng như sau:

var shell = new ActiveXObject("WScript.Shell");
shell.run("C:\\Windows\\System32\\ie4uinit.exe -show");

Tôi đang chạy nó như người quản lý và tôi tích cực C:\Windows\System32\ie4uinit.exe tồn tại.

Nếu tôi sử dụng lệnh chính xác giống như từ vbscript .vbs nó chạy file thành công.

Có một số loại hạn chế? Tại sao HTA không thể chạy C:\Windows\System32\ie4uinit.exe ?

Thông báo lỗi:

enter image description here

Làm thế nào tôi có thể thực hiện công việc này?


1
2017-09-18 20:59


gốc


Vì vậy, thông báo lỗi khi nó không hoạt động là gì? - DavidPostill♦
Tôi đã cập nhật câu hỏi bằng màn hình lỗi. - Azevedo
Nó vẫn có vẻ với tôi rằng chuyển hướng 32-bit có thể tài khoản cho ie4uinit không tìm thấy. Bạn có chắc chắn rằng bạn đang thực hiện trong chế độ 64-bit tại thời điểm hộp thoại được hiển thị? - harrymc
Tích cực. 64bit. Tôi đã kiểm tra hình ảnh xử lý trong trình quản lý tác vụ. - Azevedo
Điều gì sẽ xảy ra khi bạn chạy khi sử dụng Hệ thống psexec -i -s? Là một thử nghiệm khác cho phép tài khoản của bạn Bỏ qua kiểm tra đi ngang. - harrymc


Các câu trả lời:


Khóa đăng ký của bạn HKEY_LOCAL_MACHINE\SOFTWARE\Classes\htafile\Shell\Open\Command chứa giá trị của:

C:\Windows\SysWOW64\mshta.exe "%1" {1A460BD7-F1C3-4B2E-88BF-4E770A288AF5}%U{1A460BD7-F1C3-4B2E-88BF-4E770A288AF5} %*

Trình xử lý HTA 32 bit có nghĩa là bạn đang chạy trong 32 bit chế độ.

Điều này có nghĩa là bạn đang sử dụng phiên bản 32-bit của VBScript, để chuyển hướng tệp trên Windows thực sự khiến nó phải xem xét C:\Windows\SysWOW64, Ở đâu ie4uinit.exe không tồn tại.

Một giải pháp để tránh duy trì hai khác biệt các phiên bản của tập lệnh VBScript của bạn được tìm thấy trong ServerFault câu trả lời.


0
2017-09-21 17:58



Tất cả 64bit ở đây. Vẫn không phải thế. Tôi đã đưa ra đường dẫn đầy đủ đến ie4uinit.exe - Azevedo
Task Manager trong Windows 10 không còn hiển thị 32 và 64 bit của một quá trình. Bạn cần Process Explorer cho điều đó, hiển thị cột Loại hình ảnh hoặc nhấp đúp vào exe và xem nó trong trường Hình ảnh. - harrymc
Bạn có thể vẫn còn trong lý thuyết truy cập vào system32 thực bằng cách sử dụng Hệ thống tập tin Redirector : C:\Windows\Sysnative\ie4uinit.exe, mặc dù tôi không biết điều này sẽ hoạt động tốt như thế nào trong môi trường của bạn. Lưu ý rằng Sysnative không phải là một thư mục, chỉ là một công cụ traversal và nó không tồn tại cho các ứng dụng 64-bit. - harrymc
@Azevedo: Bạn có nhận xét gì không? - harrymc
Vẫn giống nhau. - Azevedo