Italian Lettura del registry

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 :(
 

Attachments

Last edited:

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:

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:

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! :(
 

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:

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:

giannimaione

Well-Known Member
Licensed User
errore compilazione device

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