elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  ayuda con sintaxis en un modulo
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ayuda con sintaxis en un modulo  (Leído 2,690 veces)
rapbyone

Desconectado Desconectado

Mensajes: 173


Ver Perfil
ayuda con sintaxis en un modulo
« en: 22 Septiembre 2014, 19:04 pm »

amigos. necesito que un modulo utilice una librería que no está en la ruta en donde se encuentra un exe, de esta forma funciona sin problemas llamando a la dll desde disco local C

Código:
Public Declare Function Wiz_SingleEntryUnzip Lib "C:\Unzip32.dll" (ByVal ifnc As Long, ByRef ifnv As ZIPnames, ByVal xfnc As Long, ByRef xfnv As ZIPnames, dcll As UNZIPOPTIONS, Userf As UNZIPUSERFUNCTION) As Long

Pero si lo hago con App.Path, de esta forma no funciona:

Código:
Public Declare Function Wiz_SingleEntryUnzip Lib App.Path & "\1\Unzip32.dll" (ByVal ifnc As Long, ByRef ifnv As ZIPnames, ByVal xfnc As Long, ByRef xfnv As ZIPnames, dcll As UNZIPOPTIONS, Userf As UNZIPUSERFUNCTION) As Long

me da error de compilación, ¿Cuál seria la forma correcta amigos?
Muchas gracias :laugh:


En línea

MCKSys Argentina
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.524


Diviértete crackeando, que para eso estamos!


Ver Perfil
Re: ayuda con sintaxis en un modulo
« Respuesta #1 en: 22 Septiembre 2014, 19:21 pm »

Hola!

Te doy algunas ideas de lo que puedes hacer:

1) Colocar el path de la dll en la variable de entorno PATH y definir la misma sólo con el nombre. De esta forma el SO la puede hallar. Osea:

Código
  1. Public Declare Function Wiz_SingleEntryUnzip Lib "Unzip32.dll" (ByVal ifnc As Long, ByRef ifnv As ZIPnames, ByVal xfnc As Long, ByRef xfnv As ZIPnames, dcll As UNZIPOPTIONS, Userf As UNZIPUSERFUNCTION) As Long

2) Copiar la dll en el path de la app.

3) Usar CallApiByName. o hacer tu propio hack con CallWindowProc.

Saludos!


En línea

MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."

rapbyone

Desconectado Desconectado

Mensajes: 173


Ver Perfil
Re: ayuda con sintaxis en un modulo
« Respuesta #2 en: 22 Septiembre 2014, 19:47 pm »

Hola!

Te doy algunas ideas de lo que puedes hacer:

1) Colocar el path de la dll en la variable de entorno PATH y definir la misma sólo con el nombre. De esta forma el SO la puede hallar. Osea:

Código
  1. Public Declare Function Wiz_SingleEntryUnzip Lib "Unzip32.dll" (ByVal ifnc As Long, ByRef ifnv As ZIPnames, ByVal xfnc As Long, ByRef xfnv As ZIPnames, dcll As UNZIPOPTIONS, Userf As UNZIPUSERFUNCTION) As Long

2) Copiar la dll en el path de la app.

3) Usar CallApiByName. o hacer tu propio hack con CallWindowProc.

Saludos!

gracias por tu respuesta amigo
la 2 la descarto, por que no quiero que la DLL este en la misma ruta
y para la 3era no tengo los conocimientos como para hacerlo.

a que te refieres con colocar la ruta de la dll en la variable de entorno PATH? que tendría que hacer, estoy empezando con vb6 y no logro entenderlo
gracias amigo
En línea

MCKSys Argentina
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.524


Diviértete crackeando, que para eso estamos!


Ver Perfil
Re: ayuda con sintaxis en un modulo
« Respuesta #3 en: 22 Septiembre 2014, 21:46 pm »

a que te refieres con colocar la ruta de la dll en la variable de entorno PATH? que tendría que hacer, estoy empezando con vb6 y no logro entenderlo
gracias amigo

A algo como esto:

Código
  1. Private Declare Function SetEnvironmentVariable Lib "kernel32" Alias "SetEnvironmentVariableA" (ByVal lpName As String, ByVal lpValue As String) As Long
  2. Private Declare Function GetEnvironmentVariable Lib "kernel32" Alias "GetEnvironmentVariableA" (ByVal lpName As String, ByVal lpBuffer As String, ByVal nSize As Long) As Long
  3.  
  4. Private Sub Command1_Click()
  5. Dim strBuffer As String
  6. Dim lngStatus As Long
  7.  
  8. strBuffer = Space$(1024)
  9.  
  10. lngStatus = GetEnvironmentVariable("Path", strBuffer, Len(strBuffer))
  11. If lngStatus > 0 Then
  12.    strBuffer = Left$(strBuffer, lngStatus)
  13.  
  14.    strBuffer = strBuffer & ";C:\DLLFiles"
  15.  
  16.    lngStatus = SetEnvironmentVariable("Path", strBuffer)
  17. End If
  18.  
  19. End Sub
  20.  

Fuente: click

Saludos!

PD: Por las dudas, lee esto.
En línea

MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."

rapbyone

Desconectado Desconectado

Mensajes: 173


Ver Perfil
Re:
« Respuesta #4 en: 23 Septiembre 2014, 09:15 am »

Prefecto amigo, lo logre, muchas gracias
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda con error de sintaxis en formulario PHP
PHP
oscarj24 2 2,970 Último mensaje 8 Junio 2010, 20:05 pm
por oscarj24
Ayuda con c, para final de SIntaxis !
Programación C/C++
mariaorlando0922 2 2,787 Último mensaje 14 Febrero 2013, 21:47 pm
por durasno
ayuda en la sintaxis Programas en Batch/bat
Scripting
XXXNEUROXXX 1 4,576 Último mensaje 9 Julio 2013, 23:28 pm
por Eleкtro
ayuda con sintaxis para ejecutar archivo Jar
Programación Visual Basic
rapbyone 0 2,211 Último mensaje 11 Julio 2014, 03:48 am
por rapbyone
Ayuda con sintaxis For
Programación C/C++
oq.JULIO.po 5 3,202 Último mensaje 27 Abril 2018, 22:58 pm
por dijsktra
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines