Clique abaixo para nos ajudar
Login

Esqueci minha senha

Estamos no Facebook
Buscar
 
 

Resultados por:
 


Rechercher Busca avançada

Quem está conectado
11 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 11 Visitantes :: 2 Motores de busca

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 468 em 1/3/2012, 10:43
Como preencher campos vazios

9/2/2017, 11:55 por Linghston

Pessoal boa tarde,

É o seguinte, eu preciso preencher os campos de uma coluna da tabela DBF que …

Comentários: 2

Enviar msg para WhatsAPP via VFP

7/2/2017, 10:31 por Eliana

Olá Pessoal!

Alguém sabe se é possível enviar mensagem para o WhatsAPP via VFP?


Grata


Comentários: 0

Tudo dá errado

3/2/2017, 16:50 por Douglas Pascini

Troquei de maquina, achei que seria uma boa, [Você precisa estar registrado e conectado para ver esta imagem.]  pois passei para uma maquina melhor.

Instalei o …

Comentários: 1

URGENTE - Instalação do aplicativo

24/1/2017, 08:51 por Douglas Pascini

Bom dia. Estou com um problema, ao fazer a instalação (colocar os arquivo) do aplicativo na …

Comentários: 0

USAR REPORT FORM

30/12/2016, 09:06 por AJC

Pessoal bom dia,
Estou com um grande problema, já pesquisei muita coisa sobre report form, mas o …

Comentários: 3

Estatísticas
Temos 7021 usuários registrados
O último usuário registrado atende pelo nome de diegopeixoto

Os nossos membros postaram um total de 21 mensagens em 12 assuntos

Busca na Rede

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Em curso Busca na Rede

Mensagem por wms em 1/6/2010, 15:40

Alguém conhece algum comando ou rotina que identifique os computadores da rede, que eu possa acoplar em um sistema em Visual Fox.

Abraços!

wms
Participante Regular
Participante Regular


Voltar ao Topo Ir em baixo

Em curso Re: Busca na Rede

Mensagem por hugo em 1/6/2010, 15:51

W

nao entendi muito bem a pergunta, desculpe, to comentando pois achei interessante, disserta um pouco mais no enunciado? talvez eu nao possa ajudar, mais vou conseguir aprender, com certeza

abraco amigao


Última edição por hugo em 1/6/2010, 19:33, editado 1 vez(es)

_________________
"A tristeza é a falta de alegria, mais sem ela eu não poderia entender a alegria do fato de que a felicidade existe!"
Helio Leites - [Você precisa estar registrado e conectado para ver este link.]

hugo
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Em curso Busca na rede

Mensagem por wms em 1/6/2010, 16:07

Hugo,

É o seguinte: Tenho um sistema rodando em uma rede com 50 usuários, o que eu precisava saber é se consigo pela rede identificar quais são as configurações destes computadores que estão utilizando o sistema, por exemplo: saber qual é a memória que esta sendo utilizada, ou o espaço livre em HD.
Mas isso tem de ser de todas, tipo jogando em uma tabela, view ou cursor.

Consegui explicar?

Grande abraço!

wms
Participante Regular
Participante Regular


Voltar ao Topo Ir em baixo

Em curso Re: Busca na Rede

Mensagem por hugo em 1/6/2010, 19:34

sim, explicacao bem sucedida

vamos por os neuronios para esquentar!

hehehehe

_________________
"A tristeza é a falta de alegria, mais sem ela eu não poderia entender a alegria do fato de que a felicidade existe!"
Helio Leites - [Você precisa estar registrado e conectado para ver este link.]

hugo
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Em curso Re: Busca na Rede

Mensagem por hugo em 1/6/2010, 19:40

se voce usar software cliente na estacao, no momento do login voce pode fazer a leitura dos dados e mandar pro banco

lembro-me de que existem comandos do fox que buscavam informacoes do hardware.

bom, estes comandos, .... peco ajuda as cartas.....

marcossss

_________________
"A tristeza é a falta de alegria, mais sem ela eu não poderia entender a alegria do fato de que a felicidade existe!"
Helio Leites - [Você precisa estar registrado e conectado para ver este link.]

hugo
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Em curso Re: Busca na Rede

Mensagem por Marcos Guedes em 1/6/2010, 20:58

Acho que tenho isto, mas não tenho certeza.
Daqui para amanhã (02/06/2010) tentarei encontrar uma solução, caso alguém não tenha.

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Em curso Re: Busca na Rede

Mensagem por wms em 2/6/2010, 10:40

Muito obrigado amigos.
Fico no aguardo!

Abraços.

wms
Participante Regular
Participante Regular


Voltar ao Topo Ir em baixo

Em curso Re: Busca na Rede

Mensagem por Marcos Guedes em 2/6/2010, 11:49

Código:
DO DECLARE

*| typedef struct _WKSTA_USER_INFO_1 {
*|  LPWSTR    wkui1_username;
*|  LPWSTR    wkui1_logon_domain;
*|  LPWSTR    wkui1_oth_domains;
*|  LPWSTR    wkui1_logon_server;  16 bytes
*| }WKSTA_USER_INFO_1, *PWKSTA_USER_INFO_1, *LPWKSTA_USER_INFO_1;

#DEFINE userinfo_1_size  16
#DEFINE max_preferred_length -1

LOCAL lnresult, lnbuffer, lnentriesread, lntotalentries, lnresumehandle
STORE 0 TO lnbuffer, lnentriesread, lntotalentries, lnresumehandle

lnresult = netwkstauserenum(0, 1, @lnbuffer, max_preferred_length,;
   @lnentriesread, @lntotalentries, @lnresumehandle)

IF lnresult <> 0
   * 53 = The network path was not found
   ? "Error code:", lnresult
ELSE
   LOCAL lnentry, lnbuflen, lcbuffer, lpwstrusername,;
      lpwstrlogon_domain, lpwstroth_domains, lpwstrlogon_server,;
      lcusername, lclogon_domain, lcoth_domains, lclogon_server

   lnbuflen = lnentriesread * userinfo_1_size
   lcbuffer = REPLI(CHR(0), lnbuflen)
   = heap2string(@lcbuffer, lnbuffer, lnbuflen)

   * resulting cursor
   CREATE CURSOR csresult (username c(30), logon_domain c(30),;
      oth_domains c(30), logon_server c(30))

   * scannig returned entries - UserInfo structures
   FOR lnentry = 1 TO lnentriesread
      * copying the UserInfo structure to a VFP string
      lcuserinfo = SUBSTR(lcbuffer,;
         (lnentry-1)*userinfo_1_size+1, userinfo_1_size)

      * retrieving pointers to Unicode strings
      lpwstrusername    = buf2dword(SUBSTR(lcuserinfo,  1,4))
      lpwstrlogon_domain = buf2dword(SUBSTR(lcuserinfo,  5,4))
      lpwstroth_domains  = buf2dword(SUBSTR(lcuserinfo,  9,4))
      lpwstrlogon_server = buf2dword(SUBSTR(lcuserinfo, 13,4))

      * copying data from pointers to VFP strings
      lcusername    = getstrfrommem(lpwstrusername)
      lclogon_domain = getstrfrommem(lpwstrlogon_domain)
      lcoth_domains  = getstrfrommem(lpwstroth_domains)
      lclogon_server = getstrfrommem(lpwstrlogon_server)

      INSERT INTO csresult VALUES (;
         lcusername, lclogon_domain, lcoth_domains, lclogon_server)
   ENDFOR
ENDIF

* this buffer is allocated by the system and must be freed
= netapibufferfree(lnbuffer)

IF USED("csResult")
   SELECT csresult
   GO TOP
   BROWSE NORMAL NOWAIT
ENDIF

FUNCTION getstrfrommem(lnmemblock)
   * converting allocated in memory Unicode string to a VFP string
   #DEFINE strbufferlength 250
   LOCAL lcbuffer
   lcbuffer = SPACE(strbufferlength)
   = heap2string(@lcbuffer, lnmemblock, strbufferlength)
   lcbuffer = SUBSTR(lcbuffer, 1, AT(CHR(0)+CHR(0),lcbuffer)-1)
   RETURN  STRTRAN(lcbuffer, CHR(0),"")
ENDFUNC

PROCEDURE DECLARE
   DECLARE INTEGER NetWkstaUserEnum IN netapi32;
      INTEGER SERVERNAME, INTEGER LEVEL, INTEGER @ bufptr,;
      INTEGER prefmaxlen, INTEGER @entriesread,;
      INTEGER @totalentries, INTEGER @resumehandle

   DECLARE INTEGER NetApiBufferFree IN netapi32 INTEGER BUFFER

   DECLARE RtlMoveMemory IN kernel32 AS Heap2String;
      STRING @ Destination, INTEGER SOURCE, INTEGER nLength
ENDPROC

FUNCTION buf2dword(lcbuffer)
   RETURN ASC(SUBSTR(lcbuffer, 1,1)) + ;
      ASC(SUBSTR(lcbuffer, 2,1)) * 256 +;
      ASC(SUBSTR(lcbuffer, 3,1)) * 65536 +;
      ASC(SUBSTR(lcbuffer, 4,1)) * 16777216
ENDFUNC
Fonte:
- news2news

Código:
DO DECLARE

*| typedef struct _MIB_UDPTABLE {
*|  DWORD      dwNumEntries;    // number of entries in the table
*|  MIB_UDPROW  table[ANY_SIZE]; // table of MIB_UDPROW structs
*| } MIB_UDPTABLE, *PMIB_UDPTABLE; total bytes = 4 + undef

*| typedef struct _MIB_UDPROW {
*|  DWORD  dwLocalAddr;    // IP address on local computer
*|  DWORD  dwLocalPort;    // port number on local computer
*| } MIB_UDPROW, *PMIB_UDPROW; total bytes = 8

#DEFINE mib_udprow_size  8

LOCAL cbuffer, nbufsize, nentries, nindex, centry

* call GetUdpTable with null buffer to get required size
nbufsize=0
= getudptable(NULL, @nbufsize, 1)

cbuffer = REPLI(CHR(0), nbufsize)
= getudptable(@cbuffer, @nbufsize, 1)

* get number of entries in the table
nentries = buf2dword(SUBSTR(cbuffer, 1,4))

* create resulting cursor
CREATE CURSOR cs (ipaddr c(15), port N(12))

* parse entries and save results in cursor
FOR nindex = 1 TO nentries

   centry = SUBSTR(cbuffer,;
      5 + (nindex-1) * mib_udprow_size,;
      mib_udprow_size)

   = addentry(centry)
ENDFOR

GO TOP
BROW NORMAL NOWAIT
* end of main

PROCEDURE addentry(centry)
   LOCAL lcipaddr, lnport

   * local IP address and the host name
   lcipaddr = inet_ntoa(buf2dword(SUBSTR(centry, 1,4)))

   * local port
   lnport = ntohs(buf2dword(SUBSTR(centry, 5,4)))

   INSERT INTO cs VALUES (lcipaddr, lnport)
   RETURN
ENDPROC

FUNCTION buf2dword(cbuffer)
   RETURN ASC(SUBSTR(cbuffer, 1,1)) + ;
      ASC(SUBSTR(cbuffer, 2,1)) * 256 +;
      ASC(SUBSTR(cbuffer, 3,1)) * 65536 +;
      ASC(SUBSTR(cbuffer, 4,1)) * 16777216
ENDFUNC

PROCEDURE DECLARE
   DECLARE STRING inet_ntoa IN ws2_32 INTEGER in_addr
   DECLARE INTEGER ntohs IN ws2_32 INTEGER netshort

   DECLARE INTEGER GetUdpTable IN iphlpapi;
      STRING @pUdpTable, INTEGER @pdwSize, INTEGER BORDER
ENDPROC
Fonte:
- news2news

Código:
DO DECL

cserver = ""  && empty value means local computer
*cServer = "\\MYSERVER"
cuser = getusrname()  && current user

= listgroups(cserver, cuser)  && local groups
= listgroups(cserver, cuser, .T.)  && global groups
* end of main

PROCEDURE listgroups(cserver, cuser, lglobal)
   #DEFINE max_preferred_length -1

   LOCAL hbuffer, nbufsize, nreadcount, ntotalcount, nresult,;
      cbuffer, nindex, nptr, noffs, nlen, cgroup

   STORE 0 TO nreadcount, ntotalcount, hbuffer

   cserver = STRCONV(cserver+CHR(0), 5)
   cuser = STRCONV(cuser+CHR(0), 5)

   IF lglobal
      nresult = netusergetgroups(cserver, cuser, 0,;
         @hbuffer, max_preferred_length, @nreadcount, @ntotalcount)
   ELSE
      nresult = netusergetlocalgroups(cserver, cuser, 0,0,;
         @hbuffer, max_preferred_length, @nreadcount, @ntotalcount)
   ENDIF

   IF nresult <> 0 OR hbuffer=0
      = netapibufferfree(hbuffer)
      ? "Error code:", nresult
      RETURN
   ENDIF

   * size of the buffer allocated by the system
   * GlobalSize on Windows XP returns same result
   nbufsize = 0
   = netapibuffersize(hbuffer, @nbufsize)

   * copying data from memory buffer to FoxPro string
   cbuffer = REPLI(CHR(0), nbufsize)
   copymemory(@cbuffer, hbuffer, nbufsize)

   * scanning group names
   FOR nindex=1 TO ntotalcount
      * retrieving 4-byte (DWORD) address of Unicode string
      * that specifies the group name
      nptr = buf2dword(SUBSTR(cbuffer, (nindex-1)*4+1,4))

      * matching memory addresses to cBuffer string
      noffs = nptr - hbuffer + 1
      cgroup = SUBSTR(cbuffer, noffs)+CHR(0)+CHR(0)
      nlen = AT(CHR(0)+CHR(0), cgroup)
      cgroup = SUBSTR(cgroup, 1, nlen)
      
      ? nindex, STRCONV(cgroup, 6)
   ENDFOR
   = netapibufferfree(hbuffer)
ENDPROC

FUNCTION getusrname
   * actually SYS(0) is Ok too :)
   LOCAL cbuffer, nbufsize
   nbufsize = 32
   cbuffer = REPLI(CHR(0), nbufsize)
   = getusername(@cbuffer, @nbufsize)
   
   RETURN STRTRAN(cbuffer, CHR(0), "")
ENDFUNC

PROCEDURE DECL
   DECLARE INTEGER NetUserGetGroups IN netapi32;
      STRING SERVERNAME, STRING username, INTEGER lvl,;
      INTEGER @bufptr, INTEGER prefmaxlen,;
      INTEGER @entriesread, INTEGER @totalentries

   DECLARE INTEGER NetUserGetLocalGroups IN netapi32;
      STRING SERVERNAME, STRING username, INTEGER lvl,;
      INTEGER flgs, INTEGER @bufptr, INTEGER prefmaxlen,;
      INTEGER @entriesread, INTEGER @totalentries

   DECLARE INTEGER GetUserName IN advapi32;
      STRING  @lpBuffer, INTEGER @nSize

   DECLARE RtlMoveMemory IN kernel32 AS CopyMemory;
      STRING @dst, INTEGER src, INTEGER bufsize

   DECLARE INTEGER NetApiBufferFree IN netapi32 INTEGER BUFFER

   DECLARE INTEGER NetApiBufferSize IN netapi32;
      INTEGER BUFFER, INTEGER @ByteCount
ENDPROC

FUNCTION buf2dword(lcbuffer)
   RETURN ASC(SUBSTR(lcbuffer, 1,1)) + ;
      BITLSHIFT(ASC(SUBSTR(lcbuffer, 2,1)),  8) +;
      BITLSHIFT(ASC(SUBSTR(lcbuffer, 3,1)), 16) +;
      BITLSHIFT(ASC(SUBSTR(lcbuffer, 4,1)), 24)
ENDFUNC
Fonte:
- news2news

Resolve?

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Em curso Re: Busca na Rede

Mensagem por wms em 2/6/2010, 14:10

Vou testar Marcos.

Muito Obrigado!

wms
Participante Regular
Participante Regular


Voltar ao Topo Ir em baixo

Em curso Testes efetuados

Mensagem por wms em 8/6/2010, 09:39

Amigos,

Fiz os testes com o código que me foi disponibilizado, funcionou mas é muito restrito e acaba não trazendo todas as informações pertinentes.

Tem um Script em VB que faz exatamente o que eu preciso em VFP:

- Clqiue aqui para baixar o Script

Alguém conhece bem o VB?

Este script é muito interessante e faz exatamente o que estou precisando neste momento.

Abraço a todos!

wms
Participante Regular
Participante Regular


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum