Red de conocimiento informático - Problemas con los teléfonos móviles - vb lee/escribe el valor hexadecimal en la ruta especificada en el registro

vb lee/escribe el valor hexadecimal en la ruta especificada en el registro

El siguiente es un programa de lectura/escritura que crea una asociación de archivos en el registro:

Opción explícita

Opción Comparar texto 'Las comparaciones de cadenas que declaran "AAA" igual a "aaa" son Indistinguibles mayúsculas y minúsculas.

Función de declaración privada RegCreateKeyamp; Lib "advapi32.DLL" Alias ​​​​"RegCreateKeyA" (ByVal hKeyamp;, ByVal lpszSubKey$, lphKeyamp;)

Función de declaración privada RegSetValueamp " advapi32 "alias "RegSetValueA" (ByVal hKeyamp;, ByVal lpszSubKey$, ByVal fdwTypeamp;, ByVal fdwTypeamp;, ByVal fdwTypeamp;, ByVal fdwTypeamp;, ByVal fdwTypeamp;).

ByVal lpszValue$, ByVal dwLengthamp;)

Const privada ERROR_SUCCESS = 0 amperios;

Const privada ERROR_BADDB = 1 amperio;

Const privada ERROR_BADKEY = 2 amperios;

Const privada ERROR_CANTWRITE = 3 amperios;

Const privada ERROR_CANTREAD = 4 amperios;

Const privada ERROR_CANTWRITE = 5 amperios;

Const privada ERROR_OUTOFMEMORY = 6 amperios; /p>

Const privada ERROR_INVALID_PARAMETER = 7&

Const privada ERROR_ACCESS_DENIED = 8& = 256amp;

Const privada REG_SZ = 1

NumParas privados como Entero

'Este ejemplo es cortesía de VB Programming Land

' Por VBEden

'------- ------------------------- - ----

'Subrutina: Configurar archivos (*.EDN) relacionados con tu programa

'------------- -----------------------

Private Sub Mod_Related_EDNFile()

En caso de error, Ir a RelatedFail

'Declarar variables

Dim sKeyName As String, sKeyValue As String, sKeyValueIcon As String

Dim Ret como entero, lphKey como largo

sKeyName = "ednFiles "

sKeyValue = "Mis programas"

Ret = RegCreateKeyamp; HKEY_CLASSES_ROOT, sKeyName, lphKey)

Ret = RegSetValueamp; (lphKeyamp;, "", REG_SZ, sKeyValue, 0amp;)

sKeyName = ".EDN"

sKeyValue = "ednFiles"

Ret = RegCreateKeyamp; (HKEY_CLASSES_ROOT, sKeyName, lphKey)

Ret = RegCreateKeyamp; (HKEY_CLASSES_ROOT, sKeyName) & (HKEY_CL

ASSES_ROOT, sKeyName, lphKey)

Ret = RegSetValueamp; (lphKeyamp;, "", REG_SZ, sKeyValue, 0amp;)

sKeyName = " ednFiles"

sKeyValue = """" amp; App.Path amp; IIf(Len(App.Path) gt; 3, "\" amp; "ednFiles.exe", "ednFiles.Path) gt; 3, "\" amp; "ednFiles.exe", "ednFiles.exe") amp ", 1"

Ret = RegCreateKeyamp (HKEY_CLASSES_ROOT, sKeyName, lphKey)

Ret = RegSetValueamp; , "DefaultIcon", REG_SZ, sKeyValueIcon, MAX_PATH)

Ret = RegSetValueamp; (lphKeyamp;, "Shell\Open\Command", REG_SZ, sKeyValue, MAX_PATH)

MsgBox "Configuración ¡Archivo asociado (*.EDN) exitoso! Archivo EDN", vbInformation

Salir de Sub

RelatedFail:

MsgBox Err.Description, vbCritical: End

End Sub

Subcomando privado1_Click()

Mod_Related_EDNFile

Fin Sub

'---------------- --

'Función: Leer línea de comando

'------------------'

Público Function_GetCommandLine(MaxArgs opcional)

Dim C, CmdLine como cadena

Dim CmdLnLen como entero, iNum como entero, Dim CmdLnLen como entero, iNum como entero, NumArgs como entero

Dim InArg As Boolean

Si IsMissing(MaxArgs) Entonces MaxArgs = 10

ReDim ArgArray(MaxArgs)

NumArgs= 0

InArg = False

CmdLine = Command()

CmdLnLen = Len(CmdLine)

Para iNum = 1 a CmdLnLen

C = Mid(CmdLine, iNum, 1)

Si (C lt; gt. "" And C lt; gt; vbTab) Entonces

Si no es InArg Entonces

Si NumArgs =

MaxArgs luego sale para

NumArgs = NumArgs 1

InArg = True

Fin

ArgArray(NumArgs) = ArgArray(NumArgs) C

Else

InArg = False

Finalizar si

Siguiente iNum

ReDim Preserve ArgArray(NumArgs)

Fun_GetCommandLine = ArgArray()

NumParas = NumArgs

Función final

'---------- - ------------

'Función: Leer la ruta del archivo o los parámetros

'------------ --- ----------

Función pública Fun_GetEDNFile() As String

'

'Usar parámetros de línea de comando

''

Dim iNum As Integer

Dim Para_Name

'****************** *** *************

'Función: Leer cadena de línea de comando

Para_Name = Fun_ GetCommandLine()

'** ********************************

Para iNum = 1 Para NumParas

Si Para_Name(iNum) = "/?"Entonces

MsgBox "Opciones de línea de comando:" amp; Chr(13) amp; /?Ayuda de opción de línea de comando." amp; Chr(13) amp; "/relate establece el archivo URL favorito que se asociará (*.EDN)". , vbInformation

Fin

ElseIf Para_Name(iNum) = "/relate" Entonces

'************** *******************

'Subrutina: Establecer archivos asociados (*.edn).

Mod_Related_EDNFile

'******************************

Finalizar si

'************************************

'Función: Archivo de parámetros(*.

Fun_GetEDNFile = Para_Name(iNum)

'*************** *** *******************

'

'

'Si el archivo existe, muestra la ruta del archivo EDN

'<

If Dir(Fun_GetEDNFile, vbHidden) lt vacía Entonces

Label2.Caption = Fun_GetEDNFile

Finalizar si

Siguiente iNum

Función final

Sub privado Form_Load()

Fun_GetEDNFile

Fin del subtítulo