Italian Lettura del registry

Discussion in 'Italian Forum' started by Raytracer, Apr 17, 2008.

  1. Raytracer

    Raytracer Member Licensed User

    Ho scritto queste righe:

    Sub Globals
    'Declare the global variables here.
    Dim number, name, files(0) As string, binary(0) As byte
    End Sub

    Sub App_Start
    reg.New1
    reg.RootKey(reg.rtLocalMachine)
    number = reg.GetValue("Software\OEM", "SysLang") 'Number Of Items is of type REG_DWORD
    name = reg.GetValue("Software\Comm", "AutoRun") 'User Name is of type REG_SZ
    files() = reg.GetValue("Software\Drivers\BuiltIn", "IClass") 'Recent file is of type REG_MULTI_SZ (multi - string)
    binary() = reg.GetValue("Software\AudioCompressionManager\DriverCache\msacm.msg711","aFormatTagCache") 'BinaryValue is of type REG_BINARY

    Msgbox(number, "DWORD")
    Msgbox(name, "STRING")
    Msgbox(files(), "MULTISTRING")
    Msgbox(binary(), "BINARY")

    End Sub


    Mi viene restituito l'errore di "chiave non trovata" sulla lettura della DWORD; se provo ad escludere la riga, stessa cosa per la STRING.
    La cosa più strana è che ho copiato pari pari l'esempio del Manuale; l'unica variazione è stata effettuata sui path delle variabili del registry da leggere.
    Premetto che ho usato una sintassi simile per leggere keys su HKCU (anzichè HKLM) senza problemi di sorta... sono di nuovo costretto a chiedervi aiuto :(
     

    Attached Files:

    • TEST.sbp
      File size:
      938 bytes
      Views:
      33
    Last edited: Apr 17, 2008
  2. maXim

    maXim Active Member Licensed User

    Ciao Raytracer,

    premetto che ho potuto effettuare i test solo sul desktop (l'altro ieri hanno "gattonato" il mio PPC) quindi non so se ti sarò di aiuto ma ecco cosa ho fatto:
    • ho generato delle nuove key con relativi path per effettuare i test
    • ho scaricato la tua procedura di test cambiando i path e le key con i miei nuovi riferimenti
    • ho continuato a avere il solito errore
    • ho verificato le librerie assegnate (da Tools -> Components) e ho scoperto che al desktop è stata assegnata la stessa DLL del device (RegistryDevice.dll invece di RegistryDesktop.dll)
    • ho sostituito la DLL per il desktop con quella appropriata (RegistryDesktop.dll)
    • FUNZIONA!
    Fammi sapere...

    Saluti,

    Massimo
     
    Last edited: Apr 18, 2008
  3. giannimaione

    giannimaione Well-Known Member Licensed User

    bada come parli ...

    Max che significa "gattonato" ? :)
     
  4. Filippo

    Filippo Expert Licensed User

    Gianni, ma è facile, il ppc è diventato un Gatto! ;)

    Ciao,
    Filippo
     
  5. Raytracer

    Raytracer Member Licensed User

    A parte l'errata assegnazione della stessa dll anche a desktop, confermo: non funziona...
    O quantomeno, non va su PPC: ho provato anche a leggere altre keys, stessi errori.
    Chiedo una cortesia a Gianni e/o a Filippo: potreste provare sul vostro PPC se va?
    Nel caso in cui anche a voi non dovesse andare, vedo di segnalarlo come possibile bug a Erel.

    P.S. - @ Massimo: grazie per il test, e mi dispiace che ti abbiano rubato il tuo PPC...
     
    Last edited: Apr 18, 2008
  6. maXim

    maXim Active Member Licensed User

    Ciao Raytracer,

    come ti avevo accennato non sono più in possesso del mio PPC e quindi non posso verificare quanto ti ho esposto in precedenza...


    Ma sei sicuro dei percorsi? Per quello che mi ricordo:
    reg.GetValue("Software\Comm", "AutoRun")

    dovrebbe essere:
    reg.GetValue("\Comm", "AutoRun")
    senza "Software\"


    E "IClass", per quale driver interroghi la chiave?
    reg.GetValue("Software\Drivers\BuiltIn", "IClass")

    dovrebbe essere:
    reg.GetValue("Drivers\BuiltIn\Battery", "IClass")
    Mi sono permesso di porre i suddetti quesiti perché, da quello che credo di aver capito, tutti e due si sta lavorando a dei progetti che prevedono una gestione del registro simile e, visto che mi sono ricordato di essere già passato da una esperienza simile, ho ritenuto opportuno di informarti...

    Fammi sapere,

    Massimo

    P.S. non vedo l'ora di procurarmi un nuovo PPC, mi manca e non solo per fare sperimentazione! :(
     
  7. Raytracer

    Raytracer Member Licensed User

    Ciao Massimo,
    ho provato anche come suggerivi a eliminare "Software dal codice, purtroppo senza nessun risultato.
    Lavorando su Keys sotto HKCU mi sembra comunque di ricordare di aver messo il path completo, verificherò e ti farò sapere. La cosa più strana, infatti, è che riscontro questo problema solo su HKLM... tanto da farmi venire il dubbio che possa trattarsi di una mia grossolana svista o di un bug. Nel dubbio, ho postato lo stesso interrogativo anche nella parte in Inglese del Forum in modo che anche altri possano rispondermi (e se si tratta davvero di un bug, che Erel possa verificarlo).

    [Edit]: Ti confermo di aver messo il path completo di "Software operando su keys sotto HKCU, senza riscontrare l'inconveniente.

    [OT]Hai trovato utile la segnalazione a proposito di come ottenere l'IMEI? Pensi sia possibile una portabilità del codice VB in codice nativo B4PPC? Ho letto nel Forum Principale molte persone che si interrogavano su come ottenerlo, ma stranamente nessuna risposta nel topic da me aperto...
    Capisco il tuo disagio nel non avere un PPC sottomano, una volta che ti abitui ad averli con te difficilmente ne riesci a fare a meno...[OT]
     
    Last edited: Apr 18, 2008
  8. Filippo

    Filippo Expert Licensed User

    Ciao Raytracer,

    ho modificato un poco il tuo esempio ma non perchè le funzioni siano sbagliate ma perchè quelle chiavi che tu cerchi non esistono, almeno sul mio ppc.

    Ciao,
    Filippo
     
    Last edited: Apr 18, 2008
  9. giannimaione

    giannimaione Well-Known Member Licensed User

    errore compilazione device

    :confused:
    Ragazzi non riesco a compilare test.sbp , il file postato da Filippo
     
  10. HTC

    HTC Member

    Hi Raytracer,

    maXim is right: Those paths do not exist!
     
Loading...