"Null reference exception"? no, grazie, prendo un "unexpected T_VARIABLE"... Questo è il forum per imparare l'arte della programmazione o per chiedere un parere su una sessione di debug particolarmente ostica.
Regole del forum Ricorda di indicare chiaramente nell'oggetto il linguaggio ([C#] oppure [PHP], [Java], [HTML], ...), se la discussione ne riguarda uno in particolare!
Ho finalmente ripreso questo progetto (iniziato su MLI ed in seguito sospeso temporaneamentre per mancanza di tempo).
Di cosa si tratta:
Di uno script in batch che permette di incrementare la sicurezza di Windows disabilitando i servizi inutili o potenzialmente nocivi (migliora anche le prestazioni). Inoltre, per precauzione, durante le operazioni automatiche, lo script invita l'utente ad effettuare un backup che permette di ripristinare lo stato dei servizi alla situazione originaria.
Da questa versione (aggiornata) in poi è possibile disabilitare servizi specificati dall'utente, controllare lo stato delle funzionalità di Windows ed eventualmente abilitarne / disabilitarne alcune (a discrezione dell'utente).
Changelog:
Implementata auto-elevazione dei privilegi (tramite richiesta UAC), necessari per il corretto funzionamento dello script
Implementata procedura di alterazione (Attiva / Disattiva, imposta esecuzione manuale) dei servizi specificati dall'utente
Implementata procedura di Abilitazione / Disabilitazione delle "Funzionalità di Windows"
Aggiunta funzionalità: visualizza l'elenco e lo stato delle "Funzionalità di Windows"
Messaggi di dialogo completamente rivisti
Corretto un potenziale bug nella procedura di backup dei servizi (si verificava solo in condizioni particolari)
Aggiunti e migliorati i commenti del codice (le nuove procedure non sono ancora commentate)
Alcune correzioni minori
Su quali servizi agisce lo script (65 servizi **obsoleta, da aggiornare**):
Apple Mobile Device (Apple Mobile Device): Manuale
Windows Biometric Service (WbioSrvc): Disabilitato
Windows CardSpace (idsvc): Disabilitato
Windows Connect Now - Registro configurazioni (wcncsvc): Disabilitato
Windows Defender (WinDefend): Disabilitato
Windows Media Center Receiver Service (ehRecvr): Disabilitato
Windows Media Center Scheduler Service (ehSched): Disabilitato
Windows Media Player Network Sharing Service (WMPNetworkSvc): Disabilitato
Windows Remote Management (WinRM): Disabilitato
Windows Search (WSearch): Disabilitato
Compatibilità:
Lo script è progettato per essere ampiamente compatibile (da Windows 2000 fino a 8.1).
Le liste specifiche di servizi sono però, al momento, disponibili solo per Windows XP, Windows Vista / Windows 7, Windows 8 (quest'ultima andrà aggiornata in seguito).
"To Do List":
Difficoltà 0: Correggere un piccolo refuso nel menu iniziale
Difficoltà 0: Commentare le procedure prive di commenti
Difficoltà 1: Implementare una procedura che mostri lo stato di tutti i servizi presenti sul computer ((non solo quelli alterati dallo script) generando, a discrezione dell'utente, un relativo report)
Difficoltà 2: Ricontrollare ed aggiornare la lista dei servizi alterati (con particolare attenzione a Windows 8)
Difficoltà 3: Funzionalità report diagnostico / "Ricognizione" (memorizzare in un file 7z cifrato un report che contiene: la lista di tutti i servizi presenti + informazioni sul computer (SO, versione, etc.) + log di errore dello script e me lo invia in qualche modo (al momento brancolo nel buio)).
Difficoltà 3: Rendere lo script ufficialmente compatibile con Windows 95 e Windows 98.
Zane ha scritto:Ottimo progettino davvero! Però, mi chiedo: disabilitare bthserv non crea effetti collaterali?
Protrebbe: la lista di Windows 8 era stata creata l'anno scorso e deve ancora essere consolidata (comunque non apporta modifiche critiche). Probabilmente avrò modo di farlo nei prossimi giorni (al momento sono su Windows 8).
Del resto il backup che viene effettuato (a discrezione dell'utente) prima delle modifiche serve anche a fronteggiare problemi di questo genere. Inoltre, in caso di problemi, l'utente può, sempre dallo script, abilitare manualmente quel servizio.
Implementata procedura di controllo di compatibilità relativo alle operazioni sulle funzionalità di Windows (questa carattaristica è presente solo su Vista e superiori).
In caso di sistema operativo non compatibile (XP), mostra un avviso e rimanda al menu iniziale.
Corretto un bug nella procedura di registrazione errori (in Funzionalità di Windows)
Correzioni minori (messaggi di dialogo)
Rivisti i commenti al codice
Il numero di versione non cambia (i link nel primo post sono aggiornati).
"To Do List":
Difficoltà 2: Implementare una procedura che mostri lo stato di tutti i servizi presenti sul computer ((non solo quelli alterati dallo script) generando, a discrezione dell'utente, un relativo report)
Difficoltà 2: Ricontrollare ed aggiornare la lista dei servizi alterati (con particolare attenzione a Windows 8)
Difficoltà 3: Funzionalità report diagnostico / "Ricognizione" (memorizzare in un file 7z cifrato un report che contiene: la lista di tutti i servizi presenti + informazioni sul computer (SO, versione, etc.) + log di errore dello script e me lo invia in qualche modo (al momento brancolo nel buio))
Difficoltà 3: Rendere lo script ufficialmente compatibile con Windows 95 e Windows 98.
E' ora possibile consultare la lista (e generare un relativo report) dello stato di tutti i servizi presenti sul computer.
Aggiornata la lista dei servizi alterati in Windows 8 (quella aggiornata dovrebbe essere "rock solid").
Versione aggiornata: l'ultima è la 0.4 Beta (i link nel primo post sono aggiornati (eccetto le immagini)).
"To Do List":
Difficoltà 2: Rendere definitiva la lista dei servizi alterati su Windows 8 (credo sia possibile aggiungerne qualcuno).
Difficoltà 2: Creare una lista dei servizi da alterare specifica per Windows 8.1 (lo script è già compatibile con tale sistema operativo).
Difficoltà 3: Funzionalità report diagnostico / "Ricognizione" (memorizzare in un file 7z cifrato un report che contiene: la lista di tutti i servizi presenti + informazioni sul computer (SO, versione, etc.) + log di errore dello script e me lo invia in qualche modo (al momento brancolo nel buio)).
hash,
ora che il tutto è più maturo, lo portiamo sul sito sottoforma di articolo?
hashcat ha scritto:
Difficoltà 3: Funzionalità report diagnostico / "Ricognizione" (memorizzare in un file 7z cifrato un report che contiene: la lista di tutti i servizi presenti + informazioni sul computer (SO, versione, etc.) + log di errore dello script e me lo invia in qualche modo (al momento brancolo nel buio)).
Se te la vedi brutta, fammi sapere e cerco di capire se posso predisporti una pagina web sul server che, chiamata con gli opportuni parametri (tramite wget, ad esempio) salva tutto nel DB poi ti crea un rapportino via mail
Difficoltà 3: Rendere lo script ufficialmente compatibile con Windows 95 e Windows 98.
Zane ha scritto:hash,
ora che il tutto è più maturo, lo portiamo sul sito sottoforma di articolo?
Non lo reputo ancora pronto per un articolo (non manca molto).
Ciò che mi preoccupa maggiormente è l'eventualità che, in futuro, non abbia piú la possibilità di curare eventuali aggiornamenti dello script (dovendolo abbandonare per mancanza di tempo e/o voglia).
Zane ha scritto:Se te la vedi brutta, fammi sapere e cerco di capire se posso predisporti una pagina web sul server che, chiamata con gli opportuni parametri (tramite wget, ad esempio) salva tutto nel DB poi ti crea un rapportino via mail
Grazie mille, avevo considerato una possibilità simile. Appena possibile cercheró di definire una provvisoria implementazione della funzionalità .
Zane ha scritto:Stai scherzando, vero?
Nell'intenzione, no. Se questa compatibilitá estesa complicherà eccessivamente lo sviluppo dello script, la sopprimeró.
sulla piattaforma win9x non esistono servizi, gira tutto in user-mode e esattamente come Zane, trovo superfluo prevederne il supporto
fossi in te mi rispamierei la fatica
magopenguin ha scritto:In breve,se scrivi come fare il tutto nel migliore dei modi sarebbe molto gradito
Non è necessario eseguire come amministratore (anche se è possibile farlo senza problemi) lo script: all'esecuzione dello stesso, una procedura si occupa di richiedere i diritti d'amministratore (necessari al corretto funzionamento dello script).
Rispondendo affermativamente alla richiesta di backup, al termine dell'operazione, lo script apre il percorso dove è memorizzato il salvataggio. Quest'ultimo consiste in un file del registro di sistema di Windows (.REG) che contiene la configurazione dei servizi antecedente alle modifiche apportate dallo script. Per ripristinarlo è sufficiente eseguire il file .REG (confermando le modifiche al registro di sistema).
La directory dove vengono memorizzati i backup è comunque sempre raggiungibile digitando il seguente percorso nella barra di Explorer:
..Doppio clic e alla domanda vuoi esegiuire il backup ho risposto si.
....lo script dopo il backup si chiude 'costringendomi' a rieseguirlo (insomma,non continua. Fa il backup e poi non prosegue)
...rilancio lo script ed eseguo il tweack dei servizi.
..alla domanda vuoi riavviare rispondo si e il PC si riavvia.
Al riavvio mi ritrovo tre cartelle sul Desktop con rispettive dicirure:
Document and setting
User
And
Il PC pare va un po meglio di prima,e visto che non ho tempo :il tutto è stato fatto con un occhio al PC ed un altro al lavoro (non fraintendiamo,non sono uno che a posta di lavorare fa altro,ma per il lavoro che faccio,e dove lo faccio diciamo semplicemente che posso permettermelo ) ) tra poco glielo consegno così com'è,sperando che non riserba sorprese,visto che non sapendo cosa fare di quelle tre cartelle,le ho cancellate ,svuotando poi anche il cestino.
Stavo proprio trovando un programma per ottimizzare i servizi, colgo la palla al balzo e provo il tuo, così migliorerò anche la sicurezza che non è mai male.
L'ho provato, ma ho un problema, ogni opzione non va a buon fine, si chiude la finestra.
Ho provato a fare il backup ma i file reg generati sono vuoti.
Lo sto usando sotto windows 7 64bit . Ho provato a impostare i diritti di amministratore manualmente ma non è cambiato nulla.
"notepad" non è riconosciuto come coman
un programma eseguibile o un file batc
Operazione completata!
Per maggiori informazioni consultare il
Premere un tasto per continuare . . .
viene generato il file "full_servstatus.txt", ma è vuoto.
7. chiude la finestra e basta.
@ Al3x
Ho provato a lanciarlo da terminale, ma si chiude lo stesso la finestra.
@hash non so quanto possa essere determinante ma proverei a fornirgli due file con estensioni diverse, uno *.bat e l'altro *.cmd, non vorrei avesse problemi di associazione con l'interprete dei comandi.
Inserendo un messaggio, dichiari di aver letto e accettato il regolamento di partecipazione.
Nello specifico, sei consapevole che ti stai assumendo personalmente la totale responsabilità delle tue affermazioni, anche in sede civile e/o penale,
manlevando i gestori di questo sito da ogni coinvolgimento e/o pretesa di rivalsa.
Dichiari inoltre di essere consapevole che il messaggio sarà visibile pubblicamente, accetti di diffonderlo con licenza
CC BY-NC-SA 3.0 (con attribuzione a "TurboLab.it") e rinunci ad ogni forma di compensazione (economica o altro).
Rinunci inoltre esplicitamente a qualsiasi pretesa di cancellazione del messaggio.