Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    [vb.net] - recupero dell'orario di avvio pc

    Salve vorrei chiedere se è possibile recuperare l'orario di accenzione del pc tramite il codice vb.net express 2008.

    grazie.

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Dovresti cercare, nel registro degli eventi, l'evento ID 6009.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    io sinceramente utilizzerei Environment.TickCount piuttosto che la lettura nel registro.

    restituisce i millisecondi trascorsi dall'avvio del pc...

    il calcolo dell'ora non dovrebbe essere complicato, no?
    Bombardare per la pace, è come trombare per la verginità.

    C'è qualcuno al mondo che tromba troppo secondo me...

    Andrea Medici

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    A parte il discorso del calcolo, quel valore e' memorizzato su 32 bit, quindi si azzera ogni (circa) 25 giorni ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    oregon, non per farti incacchiare, ma non penso che un utente medio-alto sia tanto stupido da tenere acceso un pc 60 giorni. tra l'altro molti aggiornamenti di sistema oggi chiedono un riavvio del pc per essere installati.

    nel caso specifico, basterebbe salvarsi in una variabile di tipo long il tickcount, sommandolo al precedente...
    Bombardare per la pace, è come trombare per la verginità.

    C'è qualcuno al mondo che tromba troppo secondo me...

    Andrea Medici

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da andreaciao_22
    oregon, non per farti incacchiare,
    E perche' mai ... si puo' sempre discutere senza incacchiarsi ...

    ma non penso che un utente medio-alto sia tanto stupido da tenere acceso un pc 60 giorni.
    Questo non e' detto e non c'entra la stupidita' dell'utente.

    Dipende tanto da cosa fa un PC acceso (potrebbe avere funzionalita' di server e dovere restare acceso tanto tempo) ...

    tra l'altro molti aggiornamenti di sistema oggi chiedono un riavvio del pc per essere installati.
    Anche questo non vuol dire molto ... si possono benissimo installare ogni mese.

    nel caso specifico, basterebbe salvarsi in una variabile di tipo long il tickcount, sommandolo al precedente...
    No ... non funzionerebbe (a meno di imporre condizioni particolari) ... devi avere il dato del tickcount long, non una tua variabile ...

    In ogni caso, la mia era una osservazione "generale" e "cautelativa".

    A me, per i miei sistemi (non da casa, intendiamoci ...), non andrebbe bene. Ma non so cosa "esattamente" ci debba fare raamino73. Se e' soltanto per sapere l'orario allora la TickCount andra' piu' che bene e l'adottera', ma ne conoscera' comunque i limiti.

    Questa informazione, in ogni caso, servira' a chiunque legga questo thread per valutare opportunamente la TickCount per un suo eventuale problema simile a quello di chi ha aperto il thread ...

    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Grazie per i vostri suggerimenti, ma ho risolto il problema e inserisco il codice che ho utilizzato.
    '''''''''''''''''''''''''''''''''''''''''''''''
    Imports System
    Imports System.Diagnostics

    Class MyEventlogClass

    Public Shared Sub Main()
    Dim myEventType As String = Nothing

    Dim ora As String
    Dim min As String

    Dim myEventLog As New EventLog("System", ".")
    Console.WriteLine("1:Information")

    Console.WriteLine("Select the Event Type")
    Dim myOption As Integer = Convert.ToInt32(Console.ReadLine())

    Select Case myOption
    Case 1
    myEventType = "Information"
    Case Else
    End Select

    Dim myLogEntryCollection As EventLogEntryCollection = myEventLog.Entries
    Dim myCount As Integer = myLogEntryCollection.Count

    Dim i As Integer
    For i = myCount - 1 To -1 Step -1
    Dim myLogEntry As EventLogEntry = myLogEntryCollection(i)

    Dim str As Long
    Dim dent As String
    str = myLogEntry.InstanceId


    If str = 2147489653 Then

    dent = myLogEntry.TimeWritten.Date

    If Dataorario = dent Then

    ora = myLogEntry.TimeWritten.Hour()

    If Len(ora) = 1 Then
    ora = "0" & ora
    End If

    min = myLogEntry.TimeWritten.Minute
    If Len(min) = 1 Then
    min = "0" & min
    End If


    horario = ora & ":" & min
    Exit Sub
    End If

    End If
    Next i

    End Sub
    End Class


    Ciao a tutti

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.