Windows 7 menemukan lokasi program yang diinstal

26

Biasanya pada Windows XP, jika saya ingin tahu lokasi program yang diinstal, saya cukup mengklik 'Properties' dan itu akan menunjukkan di mana executable berada.

Di Windows 7, saya melakukan hal yang sama dan saya mendapatkan ini:

teks alternatif

Bagaimana saya bisa mengetahui di mana program berada berdasarkan pintasan? Namun saya perhatikan bahwa untuk beberapa program itu memang menunjukkan jalan pintas di bawah 'Target', tetapi tidak dalam kasus dengan iTunes misalnya.

7wp
sumber
Bagi mereka yang datang ke sini yang tidak memiliki jalan pintas - cari saja di registri seperti yang dijelaskan oleh Marcelo Trejo di bawah ini
icc97

Jawaban:

21

Apa yang Anda lihat adalah pintasan khusus yang disebut Pintasan Beriklan. Cara pintas sebenarnya tautan msiexec.exeyang dapat dieksekusi Penginstal Windows. Pintasan yang diiklankan memungkinkan penulis pemasang untuk menginstal hanya sebagian dari aplikasi mereka dan kemudian menginstal potongan tambahan ketika diakses melalui pintasan yang diiklankan. Pemasang Windows juga secara otomatis memeriksa integritas semua file yang diinstal setiap kali aplikasi dijalankan sehingga Anda dapat memastikan aplikasi tersebut valid ketika dijalankan.

Berikut adalah pertanyaan Stack Overflow dengan sedikit info lebih lanjut tentang pintasan yang diiklankan.

Menemukan yang dapat dieksekusi pintasan akhirnya berjalan bukanlah tugas yang mudah dan akan melibatkan beberapa penggalian melalui registri. Saran Hugh sepertinya jauh lebih sederhana.

astaga
sumber
Sedikit detail pendukung yang bagus ada +1 dari saya
Joe Taylor
Ini adalah jawaban yang bagus untuk contoh yang digunakan tetapi tidak menjawab pertanyaan asli yaitu "Windows 7 menemukan lokasi program yang diinstal" Entah bagaimana ini menjadi tentang "pintasan yang diiklankan" Saya hanya ingin mencari tahu di mana suatu program berada sehingga saya dapat memindahkannya dari drive c: ke drive lain yang memiliki ruang (atau saya ingin menjalankan program dari baris perintah untuk alasan apa pun) Saya telah belajar bahwa MS memilih untuk menyembunyikan jalur yang mendasarinya karena berbagai alasan, SALAH di antaranya adalah ini "tautan pengiklan" di mana sebenarnya tidak ada jalan.
Malcolm Anderson
17

Saya bertanya-tanya hal yang sama untuk beberapa cara pintas di bawah win XP. Saya mencoba Cygwin 's readshortcuttetapi tidak memberitahu saya target nyata:

$ readshortcut.exe -fa "Microsoft Word.lnk"
Target: /cygdrive/c/WINDOWS/Installer/{00000409-78E1-11D2-B60F-006097C998E7}/wordicon.exe
Working Directory:
Arguments:
Show Command: Normal
Icon Library: /cygdrive/c/WINDOWS/Installer/{00000409-78E1-11D2-B60F-006097C998E7}/wordicon.exe
Icon Library Offset: 0
Description: Create and edit text and graphics in letters, reports, Web pages, or e-mail messages by using Microsoft Word.

Jadi mereka jelas ada hubungannya dengan Pemasang Windows. Untuk menemukan executable, Anda selalu dapat menjalankannya dan menggunakan Process Explorer untuk mendapatkan path - dalam kasus saya C:\Program Files\Microsoft Office2K\Office\WINWORD.EXE,.

Hugh Allen
sumber
7
+1 dan berfungsi, tapi ini buruk untuk keamanan. Jika aplikasi yang mencurigakan membuat jalan pada komputer, dan Anda ingin tahu apa jalan pintas menunjuk tanpa benar-benar menjalankannya, Microsoft seharusnya membuat ini menjadi sangat sederhana. Tetapi dibiarkan sendiri perangkat kita melompat melalui lingkaran. Bagaimana kita bisa membimbing nenek tua kecil melalui telepon untuk melakukan ini.
Kata-
7

Saya memiliki masalah yang sama dan dapat menggunakan Task Manager ( Ctrl- Alt- DeleteMulai Task Manager ) untuk menemukan aplikasi (setelah openingit) di tab Aplikasi .

Klik kanan pada aplikasi yang diinginkan untuk membuka menu dan memilih Go To Process . Ini menunjukkan proses mana yang dikaitkan dengan aplikasi di tab Proses .

Kemudian, klik kanan pada proses untuk membuka menu dan pilih Properties atau Open File Location untuk mencari tahu lebih lanjut.

pengguna207224
sumber
6

Bagi mereka yang ingin melakukan ini di PowerShell tanpa menggunakan modul:

$lnk = "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Adobe\Adobe Acrobat X Pro.lnk"
$WindowsInstaller = New-Object -ComObject WindowsInstaller.Installer
$ShortcutTarget = $WindowsInstaller.GetType().InvokeMember("ShortcutTarget","GetProperty",$null,$WindowsInstaller,$lnk)
$StringData1 = $ShortcutTarget.GetType().InvokeMember("StringData","GetProperty",$null,$ShortcutTarget,1)
$StringData3 = $ShortcutTarget.GetType().InvokeMember("StringData","GetProperty",$null,$ShortcutTarget,3)
$WindowsInstaller.GetType().InvokeMember("ComponentPath","GetProperty",$null,$WindowsInstaller,@($StringData1,$StringData3))
pengguna334199
sumber
kita membutuhkan jawaban moar seperti ini ... WOO POWERSHELL
Nacht - Reinstate Monica
2

Coba salah satu dari yang berikut (dari Forum Tek-Tips ):

VbScript

' GetRealTarget.vbs
' This version needs to be run under wscript engine rather than cscript

' Pass the full path to an MSI "Advertised Shortcut" lnk file (including the extension) as a parameter
' e.g. assuming that we have a default install of Office 2003 for All Users:
' GetRealTarget "C:\Documents and Settings\All Users\Start Menu\Programs\Microsoft Office\Microsoft Office Excel 2003.lnk" 
' Displays fully resolved target for the MSI shortcut

Option Explicit
Dim MSITarget

On Error Resume Next ' just some simple error handling for purposes of this example
If wscript.arguments.count = 1 Then ' did actually pass an MSI advertised shortcut? Or, at least, a parameter that could be such a thing?
   With CreateObject("WindowsInstaller.Installer")
      Set MSITarget = .ShortcutTarget(wscript.arguments(0))
      If Err = 0 then
         MsgBox .ComponentPath(MSITarget.StringData(1), MSITarget.StringData(3))
      Else 
         MsgBox wscript.arguments(0) & vbcrlf & "is not a legitimate MSI shortcut file or could not be found"
      End If
   End With
End If
On Error Goto 0

PowerShell (dengan pemasangan Modul Pemasang Windows ini )

get-msiproductinfo | where { $_.ProductState -match "Installed" } | fl AdvertisedProductName, InstallLocation
user66001
sumber
2

Buka regeditdan cari nama program. Dibutuhkan beberapa "pencarian lagi" ( F3) tetapi akhirnya Anda akan menemukan foldernya.

Dalam kasus saya, itu di bawah HKEY_CLASSES_ROOT\Applications\<name of app>\shell\open\command

Marcelo Trejo
sumber
Juga dari jawaban SO ini - lihat diHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths
icc97
0

Jika Anda memiliki Kontrol Akun Pengguna aktif, maka ketika kotak UAC muncul meminta untuk Izinkan, Batal, Anda sering melihat panah dropdown lain (diabaikan oleh banyak) di bawahnya dengan judul "Detail". Jika Anda mengklik Rincian, Anda harus melihat lokasi sebenarnya dari target.

PS jika saya ingat masalah ini berjalan kembali melewati windows 7, bahkan melewati XP, untuk memenangkan 98 di mana mengklik kanan jalan pintas, memilih properti, sering tidak akan menunjukkan target. Kemudian kami harus memulai aplikasi, membuka task manager, aplikasi klik kanan dalam daftar, pilih proses pergi, proses klik kanan, pilih lokasi file terbuka (atau kadang-kadang properti). Sekarang UAC membuat langkah lebih sedikit.

pengguna503911
sumber
0

Trik yang mungkin berhasil adalah ini: Memulai CMD dan menjalankan:

dir C: \ iTunes / s / b

Ini akan melaporkan file atau direktori apa pun yang bernama persis "iTunes" (tidak peka huruf besar kecil). Jika Anda memiliki lebih dari satu drive tetap, mungkin perlu mengulangi untuk drive itu juga.

Atau, Anda dapat membuat file di "folder tidak dikenal" (di sini: iTunes), lalu mencari file itu di disk:

dir C: \ * testfilenumber1 * / s / b

TVC
sumber
-1

Cara paling sederhana untuk mengetahui tempat yang dapat dieksekusi:

  1. Temukan program pada menu Mulai dan pindahkan ke desktop menggunakan tombol kanan mouse. Ini menciptakan tautan.
  2. Letakkan pointer di atas tautan dan klik kanan mouse. Pilih "Properti"
  3. Pada layar itu Anda memiliki jalur lengkap ke executable. Salin ke buffer dan tempel kapan pun Anda butuhkan.
pengguna396877
sumber
Menemukan program di menu mulai mengalahkan tujuannya. Lebih jauh, menemukannya di menu mulai banyak kali akan menunjukkan kepada Anda "Pintasan Beriklan" alih-alih pintasan langsung. Pertanyaan aslinya adalah bagaimana cara mendapatkan shorctut langsung ke executable fisik dari tipe "Advertised Shortcut" khusus.
7wp
Untuk tujuan saya, ini adalah jawaban terbaik. Mengapa ia memiliki peringkat -2 (saat ini, 28 April 2018) saya tidak tahu. Informasi tentang tautan pengiklan menarik, dan sekarang saya tahu bahwa saya dapat menghapus spam itu, dan tidak lagi harus menemukan aplikasi karena itu tidak ada di hard drive saya. Ada saat-saat ketika saya hanya ingin dapat menavigasi ke file yang dapat dieksekusi. Tip ini (pindahkan pintasan ke desktop melalui klik kanan - dan periksa properti ITU) berguna dan saya memilih itu karena membantu saya.
Malcolm Anderson