Làm thế nào để bắt đầu một chương trình khi một chương trình khác được bắt đầu


14

Tôi muốn một chương trình bắt đầu mỗi khi một chương trình khác bắt đầu.

Đây là một ví dụ: Mỗi lần tôi khởi động Google Chrome, tôi muốn iTunes bắt đầu cùng một lúc.

Ngoài ra, tôi muốn nó bắt đầu khi tôi nhấp vào một liên kết trong trình duyệt của tôi để khởi động một chương trình (như "xem trong iTunes trên trang web iTune).

Tôi không muốn phải làm với một tập tin .bat.

Tôi đang chạy trên Windows 7


Bạn có thể làm rõ. Tùy chọn đầu tiên là nếu bạn mở Chrome, itunes cũng bắt đầu. Nhưng tùy chọn thứ hai - khi bạn nhấp vào một liên kết mở itunes, bạn có muốn mở cái gì khác không?
Paul

Đó chỉ là những ví dụ, về cơ bản tôi muốn bắt đầu các chương trình đa dạng khi tôi muốn bắt đầu một hoặc một chương trình khác muốn bắt đầu nó
TheBird956

Câu trả lời:


19

Bạn có thể có thể thiết lập các cặp ứng dụng cụ thể để chạy bằng cách sử dụng sổ đăng ký và thay đổi những gì liên quan đến mimetypes. Tuy nhiên, một cách khác chung chung hơn và phức tạp hơn nhiều là sử dụng Trình lập lịch tác vụ. Bộ lập lịch tác vụ có thể khởi động một ứng dụng dựa trên nhiều loại kích hoạt khác nhau, bao gồm các mục Nhật ký Sự kiện.

Vì vậy, tất cả những gì chúng ta cần là đảm bảo một sự kiện được tạo bất cứ khi nào một ứng dụng bắt đầu và sau đó tạo một tác vụ theo lịch trình để bắt đầu bất cứ khi nào sự kiện được ghi lại.

Bật ghi nhật ký 'bắt đầu ứng dụng'

  1. Bắt đầu và nhập secpol.mscvào hộp Run
  2. Điều hướng đến Chính sách địa phương / Chính sách kiểm toán
  3. Double Click Kiểm tra theo dõi quá trình và kích hoạtSuccess

Bây giờ, nếu bạn khởi động bất kỳ ứng dụng nào, nếu bạn xem trong Nhật ký sự kiện / Nhật ký bảo mật, bạn sẽ thấy một sự kiện Tạo quy trình4688 mỗi khi ứng dụng được khởi động.

Tạo tác vụ theo lịch trình dựa trên kích hoạt

  1. Mở Trình lập lịch tác vụ và tạo một tác vụ mới
  2. Trên tab chung , đặt tên cho tác vụ
  3. Trên tab Kích hoạt , tạo trình kích hoạt mới và chọn Bật sự kiện làm trình kích hoạt
  4. Chọn tùy chỉnh và nhấp vào Chỉnh sửa bộ lọc sự kiện
  5. Thay đổi cài đặt Bộ lọc như sau:

Bộ lọc tác vụ

Bây giờ Chuyển sang tab XML và cho phép chỉnh sửa truy vấn theo cách thủ công

Bạn sẽ thấy như sau

<QueryList>
  <Query Id="0" Path="Security">
    <Select Path="Security">
      *[System[Provider[@Name='Microsoft-Windows-Security-Auditing'] and Task = 13312 and (band(Keywords,9007199254740992)) and (EventID=4688)]] 
    </Select>
  </Query>
</QueryList>

Bây giờ bạn chỉ cần thêm ứng dụng bạn muốn gây ra kích hoạt. Ví dụ: cái này sử dụng notepad.exelàm kích hoạt:

<QueryList>
  <Query Id="0" Path="Security">
    <Select Path="Security">
     *[System[Provider[@Name='Microsoft-Windows-Security-Auditing'] and Task = 13312 and (band(Keywords,9007199254740992)) and (EventID=4688)]] 
   and 
     *[EventData[Data[@Name='NewProcessName'] and (Data='C:\Windows\System32\notepad.exe')]]
    </Select>
  </Query>
</QueryList>

Nhấn vào Okđây, sau đó Okđể đóng hộp thoại kích hoạt.

Bây giờ, chọn tab Hành động và tạo một hành động mới, nghĩa là Start a Programvà duyệt đến ứng dụng bạn muốn bắt đầu cùng với ứng dụng kích hoạt.


Tôi không có bất cứ thứ gì có tên secpol.msc. Tôi đã thực hiện một reserach nhỏ và tôi nghĩ rằng vì nó không có sẵn trong Windows 7 Home Premium. Có cách nào khác không?
TheBird956

Chính sách kiểm toán cần được thay đổi để điều này hoạt động và không có trong W7HP. Có một vài hướng dẫn để cài đặt gpedit.msc trên W7HP mà bạn có thể muốn thử. Bạn cũng có thể chỉnh sửa chính sách kiểm toán này, trongComputer Configuration/Windows Settings/Security Settings/Audit Policy
Paul

@ TheBird956 Bạn có quản lý để làm cho nó hoạt động không?
Paul

Tôi không có phiên bản windows chính xác. Tôi nghĩ rằng tôi cần Pro để làm điều đó, nhưng tôi đã thử trên máy tính của anh tôi đã cài đặt Pro và nó hoạt động.
TheBird956

1
Để đặt trình kích hoạt thành chương trình / xử lý thoát / chấm dứt / đóng thay vì bắt đầu / tạo, XML này cho bộ lọc sự kiện đã làm việc với tôi: <QueryList> <Query Id="0" Path="Security"> <Select Path="Security"> *[System[Provider[@Name='Microsoft-Windows-Security-Auditing'] and (band(Keywords,9007199254740992)) and (EventID=4689)]] and *[EventData[(Data='PATH TO THE DESIRED EXE')]] </Select> </Query> </QueryList>
V. Rubinetti

0

Tôi chắc chắn rằng câu trả lời của Paul ở trên có thể có hiệu quả với hầu hết mọi người, tuy nhiên vì một số lý do tôi không thể làm cho nó hoạt động với chương trình của mình.

Khi chỉ định đường dẫn cho Notepad.exe, Tác vụ đã được tạo thành công; Khi tôi thay đổi đường dẫn đến một trong những chương trình tôi dự định sử dụng, tôi luôn gặp An event filter for a trigger is not validlỗi khi nhấn OK khi kết thúc quá trình tạo tác vụ. Hãy xem xét rằng bộ lọc sự kiện trông giống hệt như Paul (tôi đã tự tạo nó theo quy trình của anh ấy) ngoại trừ chương trình của tôi được gửi trong thư mục Tệp chương trình (x86).

Cuối cùng tôi đã giải quyết vấn đề của mình bằng cách cài đặt một phần mềm bên ngoài, Trình quản lý quy trình của Bill . Kudos cho câu trả lời StackExchange cho nó.

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.