Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1

    [C#] Problema con FileSystemWatcher e evento cancellazione

    ciao!
    sto implementando un FileSystemWatcher con il nome del pc che ha eseguito l'operazione.
    il codice (abbreviato) è questo:
    codice:
    fw.NotifyFilter =
                    NotifyFilters.LastAccess |
                    NotifyFilters.LastWrite |
                    NotifyFilters.FileName |
                    NotifyFilters.DirectoryName;
    
            private void OnChanged(object source, FileSystemEventArgs e)
            {
                dt = DateTime.UtcNow;
                Console.WriteLine(
                    "PATH " + e.FullPath + " " +
                    e.ChangeType + " AT " +
                    dt.ToLocalTime() + " BY " +
                    new FileInfo(e.FullPath).GetAccessControl().GetOwner(typeof(System.Security.Principal.NTAccount))
                    );
            }
    mi sembra che funzioni bene, aggiungendo anche il nome del pc.
    l'unico problema ce l'ho quando eseguo la cancellazione (directory o file).
    in questo caso il programma va in crash.
    suppongo che il problema sia nella riga del new FileInfo, in quanto prima di metterla funzionava tutto.
    inoltre, penso giustamente, che dipenda dal fatto che creo un oggetto FileInfo quando in verità il file che gli passo lo cancello.

    se la mi analisi fosse giusta, come potrei risolvere?
    non mi viene in mente nulla!

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Semplicemente, in caso di evento "deleted", non devi accedere al file/cartella.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Semplicemente, in caso di evento "deleted", non devi accedere al file/cartella.
    ciao oregon.

    eh si, però così mi perderei chi ha eseguito quell'operazione.
    o intendevi altro??

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Ma l'owner non è chi ha eseguito l'operazione (tranne per la creazione del file).

    Chi ha eseguito l'operazione lo trovi negli eventi di sistema, se l'audit di sistema è attivato.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    mi spiego un attimo meglio.

    vorrei monitorare le directory che sono in un file server condiviso.
    il server, e tutti i vari client, hanno windows e sono nello stesso dominio.
    quello che mi interesserebbe è il nome del pc che ha eseguito una certa operazione.

    ieri ho testato quel codice, e mi è sembrato funzionasse.
    questo perchè il risultato era (per esempio):
    codice:
    il file FILE.TXT è stato creato da DOMINIO\PCUNO
    il file FILE.TXT è stato modificato da DOMINIO\PCDUE
    il file FILE.TXT è stato rinominato in FILE2.TXT da DOMINIO\PCTRE
    (e come detto va in crash in fase di cancellazione)
    non so se è un caso e io non ho capito nulla del codice che ho scritto, però sembrava funzionare (almeno in apparenza).

    da li la mia domanda su come fare la stessa cosa sulla cancellazione.

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Quelli non sono nomi di pc ma di utenti del dominio che sono star assegnati (in modo discutibile) con il nome del pc. Non so se esistono alte utenti per ogni pc ma comunque ottieni solo il proprietario.

    Chi cancella il file lo trovi solo nel registro degli eventi, dopo aver attivato l'audit.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Quelli non sono nomi di pc ma di utenti del dominio che sono star assegnati (in modo discutibile) con il nome del pc. Non so se esistono alte utenti per ogni pc ma comunque ottieni solo il proprietario.

    Chi cancella il file lo trovi solo nel registro degli eventi, dopo aver attivato l'audit.
    ti faccio solo un'ultima domanda per capire meglio.
    che intendi per "modo discutibile"?

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Gli utenti hanno dei nomi,

    paolorossi
    mariobianchi

    e non

    PCUNO
    PCDUE

    Con il nome sai chi ha operato, se usi il nome del PC non lo sai ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  9. #9
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Gli utenti hanno dei nomi,

    paolorossi
    mariobianchi

    e non

    PCUNO
    PCDUE

    Con il nome sai chi ha operato, se usi il nome del PC non lo sai ...
    ah ok ok.
    ma il mio era un esempio.
    probabilmente fuorviante avendoci messo PC in mezzo.
    sorry.
    i nomi sono del tipo:
    NOME_DOMINIO\Matteo
    NOME_DOMINIO\Marco
    ecc....

    scusa mi sa che allora mi sono spiegato male io (sti giorni tra nomi pc, nomi utente, domini, caselle email, sto facendo un casino ).

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Ah, quindi è tutta un'altra storia ...

    Quindi non avrai nessun nome di PC da quelle informazioni.

    Se posso consigliarti, attiva l'audit nel server e accedi remotamente al registro degli eventi di sicurezza per avere l'elenco di chi fa cosa, comprese le cancellazioni ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.