Power Builder - Mr.

 
Vista:

Mr.

Publicado por Jaime A. Arvizu (6 intervenciones) el 24/02/2003 22:54:49
Que onda señores.-..

Tengo una duda espero alguno de ustedes pueda ayudarme con esto...

Basicamente lo que necesito es como obtener la ip de l apc en la que estoy corriendo mi aplicacion..

Lo he hecho con un alectura directa al registry, pero funciona solo para plataforma winodws 9x..
necesito hacelro por otro medio para asegurarme que la infor que envio es la correcta.

de antemano agradezco la ayuda que puedan brindarme..

Un saludo.

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Mr.

Publicado por Jorge Luis (91 intervenciones) el 25/02/2003 15:39:09
Que tal,
la forma que lo puedes hacer es con una función externa referenciando al wsock32.dll para máquinas de 32 bits y al wsock.dll en maquinas de 16 bits, es facil pero no es suficiente el espacio en estos mensajes para describirlo, te lo envio por email el ejemplo y estará disponible en la sección de código fuente.
Saludos desde Ecuador
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Mr. (Problema similar)

Publicado por David (23 intervenciones) el 25/02/2003 15:50:54
Jorge Luis, mucho te agradecere que tambien me envies una copia del codigo a mi correo. Considero que sería una alternativa para un problema que tengo.
Gracias
David
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Mr. parte 1

Publicado por Ricardo (1957 intervenciones) el 25/02/2003 15:52:19
Hola que tal:

1. Define la siguiente estructura

Structure: str_wsadata
unsignedinteger version
unsignedinteger highversion
character description[257]
character systemstatus[129]
nsignedinteger maxsockets
unsignedinteger maxupddg
string vendorinfo

continua....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Mr. parte 1

Publicado por Ricardo (1957 intervenciones) el 25/02/2003 15:53:00
2. Declara las siguientes funciones externas

function int WSAStartup (uint UIVerionrequested, ref str_wsadata lpWSAdata)library "wsock32.DLL"
function int WSACleanup() library "wsock32.DLL"
function int WSAGetLastError() library "wsock32.DLL"
function int gethostname(ref string name, int namelen) library "wsock32.DLL"
function string GetHost(string lpszhost,ref blob lpszaddress) library "pbws32.dll"

continua...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Mr. parte 3

Publicado por Ricardo (1957 intervenciones) el 25/02/2003 15:53:51
3. Utiliza el siguiente script:

String ls_ipaddress, ls_hostname
Blob{4} lb_hostadress
Integer li_version, li_rc
str_wsadata lstr_wsadata

ls_hostname = Space(128)
li_version = 257
If WSAStartup(li_version, lstr_wsadata) = 0 Then
If GetHostName(ls_hostname, Len(ls_hostname)) < 0 Then
li_rc = WSAGetLastError()
Else
GetHost(ls_hostname, lb_hostadress)
ls_ipaddress = String(Asc(String(BlobMid(lb_hostadress, 1, 1)))) + "."
ls_ipaddress += String(Asc(String(BlobMid(lb_hostadress, 2, 1)))) + "."
ls_ipaddress += String(Asc(String(BlobMid(lb_hostadress, 3, 1)))) + "."
ls_ipaddress += String(Asc(String(BlobMid(lb_hostadress, 4, 1))))
li_rc = 0
End If
Else
li_rc = WSAGetLastError()
End If

WSACleanup()

Esto es por medio de las API de windows.

Espero les sea de utilidad. Saludos!

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

gracias

Publicado por Jaime A. Arvizu (6 intervenciones) el 27/02/2003 20:01:32
Muchisimas gracias Jorge... estamos en contacto..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar