Cara memulai program ketika program lain dimulai

14

Saya ingin program untuk memulai setiap kali yang lain mulai.

Berikut ini sebuah contoh: Setiap kali saya memulai Google Chrome, saya ingin iTunes memulai pada saat yang sama.

Juga, saya ingin memulai ketika saya mengklik tautan di browser saya yang memulai program (seperti tampilan "di iTunes di situs web iTune).

Saya tidak mau harus berurusan dengan file .bat.

Saya menjalankan pada Windows 7

TheBird956
sumber
Bisakah Anda mengklarifikasi. Opsi pertama adalah jika Anda membuka Chrome, iTunes juga dimulai. Tetapi opsi kedua - ketika Anda mengklik tautan yang membuka itunes, Anda ingin sesuatu yang lain juga terbuka?
Paul
Itu hanya contoh, pada dasarnya saya ingin memulai program mutiple ketika saya ingin memulai satu atau program lain ingin memulainya
TheBird956

Jawaban:

19

Anda mungkin dapat mengatur pasangan aplikasi tertentu untuk dijalankan menggunakan registri, dan mengubah apa yang berhubungan dengan mimetype. Namun cara lain yang lebih umum, dan jauh lebih kompleks, adalah dengan menggunakan Penjadwal Tugas. Penjadwal tugas dapat memulai aplikasi berdasarkan berbagai jenis pemicu, termasuk entri Log Kejadian.

Jadi yang kita butuhkan adalah memastikan acara dibuat setiap kali aplikasi dimulai, dan kemudian membuat tugas yang dijadwalkan untuk memulai setiap kali acara dicatat.

Aktifkan pencatatan 'aplikasi mulai'

  1. Mulai dan masuk secpol.mscke kotak Jalankan
  2. Arahkan ke Kebijakan Lokal / Kebijakan Audit
  3. Klik dua kali pelacakan proses Audit dan aktifkanSuccess

Sekarang, jika Anda mulai aplikasi apapun, jika Anda melihat di Event Viewer / Security Log Anda akan melihat Proses Penciptaan acara 4688setiap kali aplikasi dimulai.

Buat tugas terjadwal berdasarkan pemicu

  1. Buka Penjadwal Tugas dan buat tugas baru
  2. Di Tab Umum , beri nama tugas
  3. Pada tab Pemicu , buat pemicu baru, dan pilih Di acara sebagai pemicu
  4. Pilih Kustom , dan klik Edit Filter Acara
  5. Ubah pengaturan Filter sebagai berikut:

Filter tugas

Sekarang Beralih ke tab XML , dan aktifkan edit permintaan secara manual

Anda akan melihat yang berikut ini

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

Sekarang Anda hanya perlu menambahkan aplikasi yang Anda inginkan untuk memicu. Misalnya, ini digunakan notepad.exesebagai pemicu:

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

Klik Okuntuk ini, lalu Okuntuk menutup kotak dialog pemicu.

Sekarang pilih tab Action , dan buat tindakan baru, yaitu Start a Program, dan browse ke aplikasi yang ingin Anda mulai bersama dengan aplikasi pemicu.

Paul
sumber
Saya tidak punya apa pun yang bernama secpol.msc. Saya membuat penelitian kecil dan saya pikir itu karena tidak tersedia di Windows 7 Home Premium. Apakah ada cara lain?
TheBird956
Kebijakan audit perlu diubah agar ini berfungsi, dan tidak ada pada W7HP. Ada beberapa panduan di luar sana untuk menginstal gpedit.msc di W7HP yang mungkin ingin Anda coba. Anda dapat mengedit kebijakan audit dengan ini juga, diComputer Configuration/Windows Settings/Security Settings/Audit Policy
Paul
@ TheBird956 Apakah Anda berhasil membuatnya berfungsi?
Paul
Saya tidak memiliki versi windows yang benar. Saya pikir saya perlu Pro untuk melakukan itu, tetapi saya mencoba di komputer saudara saya yang telah menginstal Pro dan berfungsi.
TheBird956
1
Untuk mengatur pemicu ke program / proses keluar / terminasi / tutup alih-alih mulai / buat, XML untuk filter acara ini berfungsi untuk saya: <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

Saya yakin bahwa jawaban Paul di atas mungkin bekerja untuk sebagian besar orang, namun untuk beberapa alasan saya tidak dapat membuatnya bekerja dengan program saya.

Saat menentukan lintasan untuk Notepad.exe, Tugas berhasil dibuat; ketika saya mengubah jalur ke salah satu program yang ingin saya gunakan, saya selalu mendapat An event filter for a trigger is not validkesalahan saat menekan OK di akhir pembuatan tugas. Pertimbangkan bahwa filter acara tampak persis seperti Paul (saya membuat sendiri mengikuti prosedurnya) dengan pengecualian bahwa program saya diletakkan di folder Program Files (x86).

Saya akhirnya memecahkan masalah saya dengan menginstal perangkat lunak eksternal, Manajer Proses Bill . Kudos untuk jawaban StackExchange ini untuk itu.

alexlomba87
sumber