chore: sync from fn-registry agent
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
#pragma once
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include <cstdint>
|
||||
|
||||
namespace navegator {
|
||||
|
||||
// Una instancia de chrome.exe detectada con --remote-debugging-port.
|
||||
struct ChromeInstance {
|
||||
uint32_t pid = 0;
|
||||
int port = 0; // valor de --remote-debugging-port, 0 si no se pudo parsear
|
||||
std::string user_data_dir; // valor de --user-data-dir (Windows path), vacio si no aplica
|
||||
std::string profile_name; // basename de user_data_dir, util como label
|
||||
bool headless = false; // si tiene --headless o --headless=new
|
||||
std::string command_line; // crudo, para diagnostico
|
||||
};
|
||||
|
||||
// Escanea procesos chrome.exe del sistema y devuelve solo los que tienen
|
||||
// --remote-debugging-port. Implementacion v0: invoca PowerShell con
|
||||
// Get-CimInstance. Es lenta (~500ms) — el panel debe llamar en thread aparte.
|
||||
//
|
||||
// Si la consulta falla, retorna lista vacia (no lanza). Linux: stub vacio.
|
||||
std::vector<ChromeInstance> scan_chrome_instances();
|
||||
|
||||
// Mata todos los chrome.exe cuya commandline contenga 'user_data_dir_substr'
|
||||
// como substring. Util para cerrar perfiles aislados sin afectar al Chrome
|
||||
// normal del usuario. Devuelve numero de procesos matados o -1 en error.
|
||||
int kill_chromes_by_userdata(const std::string& user_data_dir_substr);
|
||||
|
||||
} // namespace navegator
|
||||
Reference in New Issue
Block a user