' MarineMaintenance — Inicia servidor en segundo plano (sin ventana) Option Explicit Dim oShell, sDir, sPython, sLog sDir = "C:\MarineMaintenance" sPython = "C:\Users\aerom\AppData\Local\Python\pythoncore-3.14-64\pythonw.exe" sLog = sDir & "\logs\server.log" Set oShell = CreateObject("WScript.Shell") ' Verificar si ya está corriendo en puerto 5500 Dim oExec, sOut Set oExec = oShell.Exec("cmd /c netstat -aon | findstr :5500 | findstr LISTENING") sOut = oExec.StdOut.ReadAll() If Len(Trim(sOut)) > 0 Then MsgBox "MarineMaintenance ya está corriendo en el puerto 5500.", 64, "MarineMaintenance" WScript.Quit End If ' Iniciar servidor oculto — redirige salida al log oShell.Run "cmd /c cd /d """ & sDir & """ && """ & sPython & """ app.py >> """ & sLog & """ 2>&1", 0, False WScript.Sleep 1500 ' Confirmar que arrancó Set oExec = oShell.Exec("cmd /c netstat -aon | findstr :5500 | findstr LISTENING") sOut = oExec.StdOut.ReadAll() If Len(Trim(sOut)) > 0 Then MsgBox "MarineMaintenance iniciado correctamente." & vbCrLf & vbCrLf & _ "URL: http://localhost:5500" & vbCrLf & _ "Tailscale: http://100.96.43.86:5500", 64, "MarineMaintenance" Else MsgBox "El servidor tardó en iniciar. Revisa logs\server.log si hay errores.", 48, "MarineMaintenance" End If