Reg Export (reg key met spaties) vb.net

Status
Niet open voor verdere reacties.

afridbeertje

Gebruiker
Lid geworden
24 okt 2008
Berichten
60
Hallo allemaal,

Ik ben bezig met een programma waarbij het mogelijk moet zijn om registery key's automatisch te exporteren.
Bij registery key's zonder spatie erin werkt het perfect. Alleen zodra er een spatie in voor komt gaat het mis.
Dit werkt dus wel:
Shell("reg export HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run\ C:\Users\afridbeertje\Desktop\test.reg", AppWinStyle.Hide)
Maar dit niet:
Shell("reg export HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Shell Extensions\ C:\Users\afridbeertje\Desktop\test.reg", AppWinStyle.Hide)
De volgende codes heb ik al geprobeerd zonder resultaat:
Shell("reg export " & Chr(34) & "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Shell Extensions" & Chr(34) & "C:\Users\afridbeertje\Desktop\test.reg", AppWinStyle.Hide)
Shell("reg export " & Chr(34) & "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Shell Extensions" & Chr(34) & " " & Chr(34) & "C:\Users\afridbeertje\Desktop\test.reg" & Chr(34), AppWinStyle.Hide)
Ook heb ik al verschillende mogelijkheden met meerdere double qoute's geprobeerd, maar niks lijkt te werken.

Ik zou het super fijn vinden als iemand mij hiermee kan helpen,

Met vriendelijke groet,

afridbeertje
 
Laatst bewerkt:
Werkt een single quote misschien?
Code:
Shell("reg export '....\CurrentVersion\Shell Extensions\....'")
of eerst in een variabele zetten (syntax nog goed zetten)
Code:
var myReg = "reg export ........"
Shell(myReg)
 
Laatst bewerkt:
Bedankt voor jou reactie.

De Chr(34) was voor aanhalingstekens. Als je dit in command prompt doet wil dit nog wel eens werken.
Verder heb ik het ook nog met Chr(32) op de plek van de spatie geprobeerd maar zonder succes.
Ook de enkele quotes en eerst in een variable zetten geeft jammer genoeg niet het gewenste resultaat.

Heb je nog meer suggesties die ik kan proberen?
 
Totaal geen verstand van maar ik vond deze. Kijk er even naar en sorry als die er niets mee te maken heeft.
 
Het lijkt erop dat permissies hier niet het probleem is omdat het wel lukt met reg keys zonder spatie.
Heb je dit geprobeerd (dubbele quote is een enkele quote binnen een string)
Code:
Shell("reg export ""....\CurrentVersion\Shell Extensions\....""")
 
Beste bron,
Ik heb de volgende regels geprobeerd:
Shell("reg export ""HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Shell Extensions"" C:\Users\afridbeertje\Desktop\test.reg", AppWinStyle.Hide)
Shell("reg export ""HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Shell Extensions\ C:\Users\afridbeertje\Desktop\test.reg""", AppWinStyle.Hide)
Maar beide regels werken niet..
 
Zie mijn vorige bericht die tegelijk met jouw laatste werd geplaatst.
 
Beste Edmoor,
Hier had ik inderdaad al naar gekeken, alleen wil ik dit een stuk of 15 keer uitvoeren.
Bij het gebruiken van regedit.exe wordt er een UAC melding gegeven.
Deze UAC melding krijg ik dan dus 15 keer. Dat wil ik eigenlijk voorkomen.
 
Als ik /? opvraag in cmd dan zie ik dat daar een voorbeeld staat waarin HKLM als afkorting staat. Het volgende werkt in cmd:
Code:
reg export "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" testbestand.txt
De bewerking is voltooid.
Zoiets als dit
Code:
Shell('reg export "HKCU\Software\Microsoft\Windows\CurrentVersion\Shell Extensions" C:\Users\afridbeertje\Desktop\test.reg', AppWinStyle.Hide)
 
Laatst bewerkt:
@bron jij bent de held van de dag!
Ik moet inderdaad HKCU doen in plaats van HKEY_CURRENT_USER\.
Dit gaat blijkbaar alleen fout als er een spatie in staat.
Ik heb nu dit:

Dim shell As String = " " & Chr(34) & "HKCU\Software\Microsoft\Windows\CurrentVersion\Shell Extensions" & Chr(34) & " C:\Users\afridbeertje\Desktop\test.reg"
Shell("reg export" & shell, AppWinStyle.Hide)

En het werkt!
 
Top :thumb: Het is zo te zien een combinatie geworden van alle berichtjes hierboven.
Succes. Have fun.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan