Saya telah menambahkan lokasi adb ke dalam PATH. Dalam proyek C saya, saya ingin menjalankan cmd yang mengalir:
char *broadcastStop = "adb shell am broadcast -a NotifyServiceStop";
char *forward = "adb forward tcp:12582 tcp:10086";
char *broadcastStart = "adb shell am broadcast -a NotifyServiceStart";
Saya dapat menjalankan hal di atas menggunakan system() dengan baik. Sekarang saya ingin menjalankan mereka yang menyembunyikan konsol. Saya telah menemukan banyak pertanyaan serupa, dan memberi tahu CreateProcess dapat melakukannya.
Ini kode saya:
void system_hide(char *cmd)
{
STARTUPINFOW si;
PROCESS_INFORMATION pi;
ZeroMemory(&si, sizeof(si));
si.cb = sizeof(si);
ZeroMemory(&pi, sizeof(pi));
if (CreateProcessW(NULL, cmd, NULL, NULL, FALSE, CREATE_NO_WINDOW, NULL, NULL, &si, &pi))
{
WaitForSingleObject(pi.hProcess, INFINITE);
CloseHandle(pi.hProcess);
CloseHandle(pi.hThread);
}
}
Itu tidak berjalan dengan benar,
Saya rasa parameter CreateProcess salah.
Berharap untuk versi yang benar. Terima kasih sebelumnya.