Hola
Necesito crear una variable de entorno (llamada blitzpath) y para ello he intentado utilizar un API. He declarado la funcion asi:
Public Declare Function SetEnvironmentVariable Lib "kernel32" ( _
lpName As String, lpValue As String) As Boolean
El caso es que hago una llamada a la funcion asi:
SetEnvironmentVariable "blitzpath", BBMainDirectory
Y me dice:
Error '453' en tiempo de ejecucion:
No se puede encontrar el punto de entrada de la DLL SetEnvironmentVariable en kernel32
Uso WindowsXP y la version de VB es la 6.0.
Si alguien me puede decir como solucionar esto o alguna manera alternativa de crear esa variable de entorno desde VB... se lo agradeceria enormemente.
Gracias de antemano. Un saludo!!!!
Bien, ya lo he arreglado (mira que soy tonto :P). La funcion esa la busque en el MSDN, por lo que al ser "tan antiguo" no esta actualizado, de modo que con un editor de recursos examine el kernel32.dll y vi que la funcion que exportaba no era SetEnvironmentVariable, sino SetEnvironmentVariableA, de modo que ya esta solucionado.
Perdon por este thread estupido :P
byes!!!
Una opción más cómoda cuando decidas importar funciones del API, es utilizar la herramienta "Visor de API" que viene con el Visual Studio. Puedes acceder a ella a través del acceso directo en el grupo de programas de Visual Studio o directamente en "Microsoft Visual StudioCommonToolsWinapiAPILOAD.EXE". Por ejemplo, el código que te generaría para esa función en concreto es:
Public Declare Function SetEnvironmentVariable Lib "kernel32" Alias "SetEnvironmentVariableA" (ByVal lpName As String, ByVal lpValue As String) As Long
Ves, no era tan inútil el mensaje :ojo:
Saludos.
Nunca te acostaras sin saber una cosa más :P .
Muchas gracias!!
Un saludo!!
Buenas, ahora me ha surgido otro problema. He creado un control CommonDialogs, y al intentar abrir el dialogo de las fuentes, me dice que no tengo fuentes instaladas!! (cosa que obviamente es mentira)
Si me podeis decir que puede ser...
Un saludo!!!