Windows 7 tìm vị trí của chương trình đã cài đặt


26

Thông thường trên Windows XP, nếu tôi muốn biết vị trí của một chương trình đã cài đặt, tôi sẽ chỉ cần nhấp vào 'Thuộc tính' và nó sẽ hiển thị vị trí của tệp thực thi.

Trên Windows 7, tôi cũng làm điều tương tự và tôi nhận được điều này:

văn bản thay thế

Làm thế nào tôi có thể tìm ra nơi các chương trình được đặt dựa trên các phím tắt? Tuy nhiên, tôi đã nhận thấy rằng đối với một số chương trình, nó hiển thị một lối tắt bên dưới 'Target', nhưng không phải trong trường hợp với iTunes chẳng hạn.


Đối với những người đến đây, những người không có lối tắt - chỉ cần tìm kiếm trong sổ đăng ký như được trình bày bởi Marcelo Trejo bên dưới
icc97

Câu trả lời:


21

Những gì bạn đang thấy là các phím tắt đặc biệt được gọi là Phím tắt được quảng cáo. Các phím tắt thực sự liên kết đến msiexec.exeđó là Windows Installer thực thi. Các phím tắt được quảng cáo cho phép các tác giả trình cài đặt chỉ cài đặt các phần của ứng dụng của họ và sau đó cài đặt các phần bổ sung khi chúng được truy cập thông qua các phím tắt được quảng cáo. Windows Installer cũng tự động kiểm tra tính toàn vẹn của tất cả các tệp đã cài đặt mỗi khi ứng dụng được chạy để bạn có thể chắc chắn ứng dụng hợp lệ khi chạy.

Dưới đây là câu hỏi về Stack Overflow với một chút thông tin về các phím tắt được quảng cáo.

Tìm kiếm thực thi các phím tắt cuối cùng chạy không phải là một nhiệm vụ đơn giản và sẽ liên quan đến một số đào qua sổ đăng ký. Đề nghị của Hugh có thể đơn giản hơn nhiều.


Một chút chi tiết hỗ trợ có +1 từ tôi
Joe Taylor

Đây là một câu trả lời tuyệt vời cho ví dụ được sử dụng nhưng nó không trả lời cho câu hỏi ban đầu là "Windows 7 tìm vị trí của chương trình đã cài đặt" Bằng cách nào đó, nó trở thành "phím tắt được quảng cáo" Tôi chỉ muốn tìm ra vị trí của một chương trình để tôi có thể di chuyển nó từ ổ đĩa c: sang ổ đĩa khác có dung lượng (hoặc tôi muốn chạy chương trình từ dòng lệnh vì lý do chưa từng có) Tôi đã biết rằng MS chọn ẩn đường dẫn bên dưới vì nhiều lý do, MỘT trong số đó là điều "liên kết nhà quảng cáo" này theo nghĩa đen không phải là một con đường.
Malcolm Anderson

17

Tôi đã tự hỏi điều tương tự đối với một số phím tắt trong win XP. Tôi cố gắng Cygwin 's readshortcutnhưng nó không cho tôi biết mục tiêu thực tế:

$ 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.

Vì vậy, rõ ràng chúng là một cái gì đó để làm với Windows Installer. Để tìm tệp thực thi, bạn luôn có thể chạy nó và sử dụng Process Explorer để lấy đường dẫn - trong trường hợp của tôi , C:\Program Files\Microsoft Office2K\Office\WINWORD.EXE.


7
+1 và nó hoạt động, nhưng điều này là khủng khiếp cho bảo mật. Nếu một ứng dụng đáng ngờ xuất hiện trên máy tính và bạn muốn biết phím tắt trỏ đến cái gì mà không thực sự chạy nó, thì Microsoft đã làm cho việc này trở nên đơn giản. Nhưng còn lại để các thiết bị của chúng ta nhảy qua vòng. Làm thế nào chúng ta thậm chí có thể hướng dẫn bà ngoại nhỏ qua điện thoại để làm điều này. Rant over
7wp

7

Tôi gặp vấn đề tương tự và có thể sử dụng Trình quản lý tác vụ ( Ctrl- Alt- DeleteKhởi động Trình quản lý tác vụ ) để tìm ứng dụng (sau khi mở) trong tab Ứng dụng .

Nhấp chuột phải vào ứng dụng mong muốn để hiển thị menu và chọn Chuyển đến Quá trình . Điều này cho thấy quá trình nào được liên kết với ứng dụng trong tab Quy trình .

Sau đó, nhấp chuột phải vào quy trình để hiển thị menu và chọn Thuộc tính hoặc Vị trí tệp mở để tìm hiểu thêm.


6

Đối với những người muốn làm điều này trong PowerShell mà không cần sử dụng mô-đun:

$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))

chúng ta cần những câu trả lời rên rỉ như thế này ... WOO POWERSHELL
Nacht - Rebstate Monica

2

Hãy thử một trong những điều dưới đây (từ Diễn đàn 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 (với cài đặt Mô-đun cài đặt Windows này )

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

2

Mở regeditvà tìm kiếm tên chương trình. Sẽ mất vài lần "tìm kiếm lại" ( F3) nhưng cuối cùng bạn sẽ tìm thấy thư mục.

Trong trường hợp của tôi, nó là dưới HKEY_CLASSES_ROOT\Applications\<name of app>\shell\open\command


Cũng từ câu trả lời SO này - hãy tìm trongHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths
icc97

0

Nếu bạn có Kiểm soát tài khoản người dùng hoạt động, thì khi hộp UAC xuất hiện yêu cầu Cho phép, Hủy, bạn thường thấy một mũi tên thả xuống (bị bỏ qua bởi nhiều người) bên dưới nó với tiêu đề "Chi tiết". Nếu bạn nhấp vào Chi tiết, bạn sẽ thấy vị trí thực tế của mục tiêu.

PS nếu tôi nhớ lại vấn đề này đã đi ngược lại các cửa sổ 7, thậm chí qua XP, để giành chiến thắng 98 khi nhấp chuột phải vào phím tắt, chọn thuộc tính, thường sẽ không hiển thị mục tiêu. Sau đó, chúng tôi phải khởi động ứng dụng, mở trình quản lý tác vụ, nhấp chuột phải vào ứng dụng trong danh sách, chọn đi xử lý, xử lý nhấp chuột phải, chọn vị trí tệp mở (hoặc đôi khi thuộc tính). Bây giờ UAC làm cho ít bước hơn.


0

Một mẹo có thể hoạt động là: Khởi động CMD và chạy:

thư mục C: \ iTunes / s / b

Nó sẽ báo cáo bất kỳ tập tin hoặc thư mục có tên chính xác là "iTunes" (không phân biệt chữ hoa chữ thường). Nếu bạn có nhiều ổ đĩa cố định, có thể cần phải lặp lại cho ổ đĩa đó.

Hoặc, bạn có thể tạo một tệp trong "thư mục không xác định" (ở đây: iTunes), sau đó tìm tệp đó trên đĩa:

thư mục C: \ * testfilenumber1 * / s / b


-1

Cách đơn giản nhất để tìm ra nơi thực thi:

  1. Tìm chương trình trên menu Bắt đầu và di chuyển nó đến màn hình nền bằng nút chuột phải. Điều này tạo ra một liên kết.
  2. Đặt con trỏ qua liên kết và nhấp chuột phải. Chọn "Thuộc tính"
  3. Trên màn hình đó, bạn có đường dẫn đầy đủ để thực thi. Sao chép vào bộ đệm và dán bất cứ khi nào bạn cần.

Tìm chương trình trong menu bắt đầu đánh bại mục đích. Hơn nữa, tìm thấy nó trong menu bắt đầu rất nhiều lần sẽ hiển thị cho bạn một "Lối tắt được quảng cáo" thay vì lối tắt trực tiếp. Câu hỏi ban đầu là làm thế nào để đưa shorctut trực tiếp đến thực thi vật lý từ loại "Lối tắt quảng cáo" đặc biệt.
7wp

Đối với mục đích của tôi, đây là câu trả lời tốt nhất. Tại sao nó có thứ hạng -2 (tại thời điểm này, ngày 28 tháng 4 năm 2018) tôi không biết. Thông tin về các liên kết của nhà quảng cáo rất thú vị và bây giờ tôi biết rằng tôi có thể xóa thư rác đó và không còn phải tìm ứng dụng vì nó không nằm trong ổ cứng của tôi. Bởi có những lúc tôi chỉ muốn có thể điều hướng đến tập tin thực thi. Mẹo này (di chuyển ngắn đến máy tính để bàn thông qua nhấp chuột phải - và kiểm tra các thuộc tính của THAT) rất hữu ích và tôi sẽ bỏ phiếu vì nó giúp tôi.
Malcolm Anderson
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.