Bagaimana Windows menemukan jalur untuk executable seperti iexplore.exe?

0

Jika saya mengetik iexplore ke dalam menjalankan jendela, itu menjalankan Internet Explorer. Saya kira itu berarti C: \ Program Files \ Internet Explorer dalam variabel lingkungan jalur saya, tetapi tidak. Saya memeriksa variabel pengguna saya dan variabel sistem saya. Jadi, bagaimana Windows tahu ke mana harus mencari hal semacam ini?

Saya kira saya harus menyebutkan saya menggunakan Windows 8.1 saat ini.

Kyle Delaney
sumber
Saya menebak melalui Variabel Lingkungan% SystemRoot% dan% SystemRoo% \ system32
DukeSilversJazz
2
Saya mencoba menjalankan "iexplorer.exe" dari prompt PowerShell, saya diberitahu itu adalah perintah yang salah, saya berusaha menjalankan "notepad.exe" dan program dijalankan. Saya kemudian beralih ke direktori dan menjalankan "iexplorer.exe" dan program berjalan. Jadi sebenarnya ada di variabel jalur pengguna Anda.
Ramhound
2
Saya juga menjalankan "iexplorer.exe" dari menjalankan perintah dan diberitahu bahwa perintah itu juga tidak valid. Jadi, Anda telah mengubah variabel jalur Anda dari default (atau variabel jalur pengguna saya berbeda) dalam kedua kasus, jalur IS dalam variabel jika tidak, Anda akan mendapatkan kesalahan. Saya kemudian memberikan jalur ke executable, dan seperti yang diharapkan, program dimulai.
Ramhound
1
Bukan iexplore.exe? Itu sebabnya ia kembali sebagai perintah yang tidak valid.
Darren
% SystemRoot% mengacu pada C: \ Windows, kan? Saya memeriksa di sana, dan C: \ Windows \ System32, dan tidak melihat iexplore di mana pun.
Kyle Delaney

Jawaban:

3

Komputer telah menggunakan Pendaftaran Aplikasi dengan program ini. Untuk melihat daftar file yang dapat dieksekusi tersebut, periksa HKLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ App Paths

misalnya:

reg QUERY "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths"

Itu menunjukkan executable. Untuk menampilkan informasi lebih lanjut tentang itu, gunakan:

reg QUERY "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths" /s

Sebenarnya, itu hanya salah satu lokasi yang diperiksa untuk file yang dapat dieksekusi. The MSDN halaman di Aplikasi Pendaftaran memiliki bagian yang disebut “Menemukan Aplikasi executable”, yang menyebutkan ini serta beberapa lokasi lain yang bisa digunakan oleh fungsi “ShellExecuteEx”. Fungsi itu digunakan oleh beberapa kode pemrograman, termasuk kotak dialog Run, tetapi mungkin bukan apa yang digunakan oleh command prompt tradisional, jadi itulah sebabnya Anda mungkin mendapatkan hasil yang berbeda untuk perintah tertentu (berdasarkan di mana Anda mencoba menjalankan perintah dari).

TOOGAM
sumber
0

Anda tidak dapat menjalankan Internet Explorer dari baris perintah atau PowerShell seperti program lain, karena itu tidak dapat dijalankan C:\Windows\System32. Variabel %SystemRoot%referensi path C:\Windows\System32, dan di mana hal-hal seperti Run dan Powershell menjalankan program secara default karena path mereka mulai dari sana kecuali ditentukan sebaliknya. Dapat dieksekusi Internet Explorer ditemukan di:

C:\Program Files\Internet Explorer\iexplore.exe

untuk 64-bit

dan

C:\Program Files (x86)\Internet Explorer\iexplore.exe

untuk 32-bit

Anda bisa menjalankan Internet Explorer dengan jalur di atas atau dimasukkan tersebut dalam sebuah file batch:

%SystemRoot%\explorer.exe "C:\Program Files\Internet Explorer\iexplore.exe"

dan:

%SystemRoot%\explorer.exe "C:\Program Files(x86)\Internet Explorer\iexplore.exe"

Semoga ini membantu.

Tuan Mendelli
sumber
Saya pikir Anda mungkin salah paham dengan saya. Saya tidak mengatakan saya tidak bisa menjalankan Internet Explorer dari dialog run. Saya katakan saya bisa. Dan saya bertanya mengapa demikian, karena tidak ditemukan di% SystemRoot% seperti yang Anda katakan. Ini juga aneh bahwa saya dapat menjalankannya dari menjalankan dialog tetapi tidak dari baris perintah.
Kyle Delaney
Cobalah sendiri. Tekan Win + R dan ketik iexplore.
Kyle Delaney
Sudah mencobanya, tetapi sepertinya tidak berhasil. Ini dapat berfungsi berbeda pada Windows 10. Sejauh menjalankan program langsung dari berjalan, saya percaya mungkin ada daftar program yang telah ditentukan yang dapat dieksekusi dengan cara ini. Mungkin berbasis registri.
Tn. Mendelli