Avatar billede t0b1a5 Nybegynder
02. juli 2003 - 20:19 Der er 2 kommentarer og
1 løsning

ændre Registreringdatabase med vba

Jeg er en pænt skilled VBA progrmmør,
men jeg har et meget stor problem med at få visual basic til at ændre i Registreringdatabasen!

Hvis der er nogen der ved hvordan man gør, ka du så ikke fortælle mig hvordan man laver en string værdi på stien: HKEY_CURRENT_USER\Software\Microsoft\Windows\
CurrentVersion\Run\opstart
og giver opstart værdien "C:\et-eller-andet.exe"
Avatar billede driis Nybegynder
02. juli 2003 - 20:28 #1
Du skal bruge API kald. Jeg kan ikke huske, om VBA tillader dig at bruge disse, men du kan prøve. Hvis du blot skal sætte en værdi, og ikke læser værdier fra Reg DB'en, kan du klare dig med funktionen SHSetValue. Den deklareres sådan her:
Declare Function SHSetValue Lib "SHLWAPI.DLL" Alias "SHSetValueA" (ByVal hKey As Long, ByVal pszSubKey As String, ByVal pszValue As String, ByVal dwType As Long, pvData As String, ByVal cbData As Long) As Long

Hvor :

· hkey
Handle to the currently open key, or any of the following predefined values:
HKEY_CLASSES_ROOT
HKEY_CURRENT_CONFIG
HKEY_CURRENT_USER
HKEY_DYN_DATA (Windows 95 only)
HKEY_LOCAL_MACHINE
HKEY_PERFORMANCE_DATA (Windows NT only)
HKEY_USERS

· pszSubKey
Address of a null-terminated string that specifies the name of the subkey with which a value is associated. This can be NULL or a pointer to an empty string. In this case, the value will be added to the key identified by the hKey parameter.

· pszValue
Address of a null-terminated string that specifies the value.

· dwType
Type of data to be stored. This parameter must be the REG_SZ type. For more information, see Registry Data Types.

· pvData
Address of a null-terminated string that contains the value to set for the specified key.

· cbData
Length, in bytes, of the string pointed to by the pvData parameter, not including the terminating null character.


Funktionen returnerer 0, hvis ændringen udføres uden fejl.
Avatar billede t0b1a5 Nybegynder
02. juli 2003 - 20:31 #2
hva så hvis jeg vil slette noget i databasen!?
Avatar billede driis Nybegynder
02. juli 2003 - 23:00 #3
Så er der jo
Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As Long

Hvis du skal til at bruge API funktioner i VB, vil jeg anbefale dig at hente API - Guide fra www.allapi.net. Det er en fin lille database med Visual Basic specifik dokumentation til Windows API funktionerne. Du kan selvfølgelig også finde dokumentation for dem på MSDN Library, men dokumentationen der henvender sig primært til C++ udviklere.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

Seneste spørgsmål Seneste aktivitet
I går 10:21 Ny printer, men hvilken Af mort1 i Printere
13/0819:41 USB på Linux Af Uvanga i Linux
12/0818:26 Hvilken type mus Af mort1 i PC
11/0813:21 ms Forms Af leahcim i Andet software
10/0821:30 Blokeret på Snapchat? Af LineP i Chat & Messaging