Clique abaixo para nos ajudar
Login

Esqueci minha senha

Estamos no Facebook
Buscar
 
 

Resultados por:
 


Rechercher Busca avançada

Quem está conectado
23 usuários online :: 1 usuário cadastrado, Nenhum Invisível e 22 Visitantes :: 1 Motor de busca

ACSR

[ 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

Utilizar comando createobjectex

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

Em curso Utilizar comando createobjectex

Mensagem por Nelson Arcas em 12/11/2010, 07:14

Pessoal, boa bom dia

Estou tentando utilizar um componete "DLL criada pelo Visual Fox 9.0" que está registrado em outra máquina "DESENV01" e configurada como componente, quando tento criar um objeto pelo função "Createobjectex" por uma outra maquina é retornada uma mensagem de acesso negado. Estou utilizando nessa maquina 2 da seguinte maneira.

Estou tentando chamar pela maquina "DESENV02"
Código:
objteste=createobjectex("{86135D4E-C842-46B6-BA64-FADD9DCE056C}","DESENV01")

Retorna o erro abaixo.
OLE error code 0x800700005: Acesso Negado.

A máquina "DESENV01" é Win7 - Ultimate igual a maquina "DESENV02", ambas fiz o logon como Administrador e o erro continua, alguem poderia passar alguma dica ou falar se estou fazendo algo errado.

Nelson Arcas
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Em curso Re: Utilizar comando createobjectex

Mensagem por Marcos Guedes em 12/11/2010, 11:06

Como você criou a DLL em VFP?
Utilizando a seguinte sintaxe?

Código:
DEFINE CLASS nomeClasseDll AS CUSTOM OLEPUBLIC
*!* Seu código
ENDDEFINE

_________________
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: Utilizar comando createobjectex

Mensagem por Nelson Arcas em 12/11/2010, 12:24

Olá Marcos
Segue abaixo o codigo como é um teste ainda pra projetos futuros estou realizando um teste antes.
Código:

DEFINE CLASS teste AS CUSTOM OLEPUBLIC
   PROCEDURE cria_arq AS void
      PARAMETERS larquivo
      LOCAL lret
      lret=.F.
      IF !EMPTY(larquivo)
         CREATE TABLE c:\lixo\testedll (codigo N(5), descricao c(50))
         CLOSE DATABASES
         IF FILE ("c:\LIXO\testedll.DBF")
            lret=.T.
         ENDIF
      ENDIF
      RETURN (lret)
   ENDPROC
ENDDEFINE
Grato

Nelson Arcas
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Em curso Re: Utilizar comando createobjectex

Mensagem por Marcos Guedes em 12/11/2010, 14:19

então substitua:
Código:
objteste=createobjectex("{86135D4E-C842-46B6-BA64-FADD9DCE056C}","DESENV01")

Para o seguinte modelo:
Código:
objteste = NEWOBJECT('NOME_CLASSE',SYS(5)+CURDIR()+'nomeDll.dll')

Obs.: Coloque a DLL na pasta raíz de sua aplicação.

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: Utilizar comando createobjectex

Mensagem por Nelson Arcas em 12/11/2010, 15:35

Marcos
A ideia que a outra maquina realize o processo, se eu colocar da maneira abaixo vai ser executado todo o processo na maquina local.
Código:

objteste = NEWOBJECT('NOME_CLASSE',SYS(5)+CURDIR()+'nomeDll.dll')
Seria possivel acessar um exe de uma outra estação onde eu consiga passar somente parametros e ele faça o processamento e devolva uma resposta?

Nelson Arcas
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Em curso Re: Utilizar comando createobjectex

Mensagem por Nelson Arcas em 13/12/2010, 13:38

Pessoal, será que alguém teria uma ideia de como faço para executar um arquivo exe que está em outra estação esperar esses fazer o processamento e receber uma resposta

Nelson Arcas
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Em curso tenta ai

Mensagem por m@r<3|o em 13/12/2010, 15:03

Código:
=CreateProcess(GETENV("WINDIR")+"\NOTEPAD.EXE","",1,.T.,GETENV("WINDIR"))
=MESSAGEBOX("VOLTOU!!!")
RETU
*
FUNCTION
Createprocess(lcExe,lcCommandLine,lnShowWindow,llWaitForCompletion,diretorio)
LOCAL hProcess, cProcessInfo, cStartupInfo
DECLARE INTEGER CreateProcess IN kernel32 as _CreateProcess;
    STRING  lpApplicationName,;
    STRING  lpCommandLine,;
    INTEGER  lpProcessAttributes,;
    INTEGER  lpThreadAttributes,;
    INTEGER  bInheritHandles,;
    INTEGER  dwCreationFlags,;
    INTEGER  lpEnvironment,;
    STRING  lpCurrentDirectory,;
    STRING  lpStartupInfo,;
    STRING @ lpProcessInformation
cProcessinfo = REPLICATE(CHR(0),128)
cStartupInfo = GetStartupInfo(lnShowWindow)
IF !EMPTY(lcCommandLine)
  lcCommandLine = ["] + lcExe + [" ]+ lcCommandLine
ELSE
  lcCommandLine = ""
ENDIF
lnResult =  _CreateProcess(lcExe,lcCommandLine,0,0,1,0,0,;
                         
diretorio,cStartupInfo,@cProcessInfo)
lhProcess = CHARTOBIN( SUBSTR(cProcessInfo,1,4) )
IF llWaitForCompletion
  #DEFINE WAIT_TIMEOUT 0x00000102
  DECLARE INTEGER WaitForSingleObject IN kernel32.DLL ;
        INTEGER hHandle, INTEGER dwMilliseconds
  DO WHILE .T.
      *** Update every 100 milliseconds
      IF WaitForSingleObject(lhProcess, 100) != WAIT_TIMEOUT
          EXIT
        ELSE
          DOEVENTS
        ENDIF
  ENDDO
ENDIF
DECLARE INTEGER CloseHandle IN kernel32.DLL ;
        INTEGER hObject
CloseHandle(lhProcess)
RETU(IIF(lnResult=1,.t.,.f.))
*
FUNCTION getStartupInfo(lnShowWindow)
LOCAL lnFlags
* creates the STARTUP structure to specify main window
* properties if a new window is created for a new process
IF EMPTY(lnShowWindow)
  lnShowWindow = 1
ENDIF
*| typedef struct _STARTUPINFO {
*| DWORD cb; 4
*| LPTSTR lpReserved; 4
*| LPTSTR lpDesktop; 4
*| LPTSTR lpTitle; 4
*| DWORD dwX; 4
*| DWORD dwY; 4
*| DWORD dwXSize; 4
*| DWORD dwYSize; 4
*| DWORD dwXCountChars; 4
*| DWORD dwYCountChars; 4
*| DWORD dwFillAttribute; 4
*| DWORD dwFlags; 4
*| WORD wShowWindow; 2
*| WORD cbReserved2; 2
*| LPBYTE lpReserved2; 4
*| HANDLE hStdInput; 4
*| HANDLE hStdOutput; 4
*| HANDLE hStdError; 4
*| } STARTUPINFO, *LPSTARTUPINFO; total: 68 bytes
#DEFINE STARTF_USESTDHANDLES 0x0100
#DEFINE STARTF_USESHOWWINDOW 1
#DEFINE SW_HIDE 0
#DEFINE SW_SHOWMAXIMIZED 3
#DEFINE SW_SHOWNORMAL 1
lnFlags = STARTF_USESHOWWINDOW
RETURN binToChar(80) +;
    binToChar(0) + binToChar(0) + binToChar(0) +;
    binToChar(0) + binToChar(0) + binToChar(0) + binToChar(0) +;
    binToChar(0) + binToChar(0) + binToChar(0) +;
    binToChar(lnFlags) +;
    binToWordChar(lnShowWindow) +;
    binToWordChar(0) + binToChar(0) +;
    binToChar(0) + binToChar(0) + binToChar(0) + REPLICATE(CHR(0),30)
*
FUNCTION BinToChar(lnValue)
****************************************
***  Function: Creates a DWORD value from a number
***      Pass: lnValue - VFP numeric integer (unsigned)
***    Return: binary string
************************************************************************
Local byte(4)
If lnValue < 0
    lnValue = lnValue + 4294967296
EndIf
byte(1) = lnValue % 256
byte(2) = BitRShift(lnValue, 8) % 256
byte(3) = BitRShift(lnValue, 16) % 256
byte(4) = BitRShift(lnValue, 24) % 256
RETURN Chr(byte(1))+Chr(byte(2))+Chr(byte(3))+Chr(byte(4))
*
FUNCTION BinToWordChar(lnValue)
****************************************
***  Function: Creates a DWORD value from a number
***      Pass: lnValue - VFP numeric integer (unsigned)
***    Return: binary string
************************************************************************
RETU(Chr(MOD(m.lnValue,256)) + CHR(INT(m.lnValue/256)))
*
FUNCTION CharToBin(lcBinString,llSigned)
***  Function: Binary Numeric conversion routine.
***            Converts DWORD or Unsigned Integer string
***            to Fox numeric integer value.
***      Pass: lcBinString -  String that contains the binary data
***            llSigned    -  if .T. uses signed conversion
***                          otherwise value is
unsigned (DWORD)
***    Return: Fox number
************************************************************************
LOCAL m.i, lnWord
lnWord = 0
FOR m.i = 1 TO LEN(lcBinString)
 lnWord = lnWord + (ASC(SUBSTR(lcBinString, m.i, 1)) * (2 ^ (8 * (m.i - 1))))
ENDFOR
IF llSigned AND lnWord > 0x80000000
  lnWord = lnWord - 1 - 0xFFFFFFFF
ENDIF
RETU(lnWord)

m@r<3|o
Participante Assíduo
Participante Assíduo


Voltar ao Topo Ir em baixo

Em curso Re: Utilizar comando createobjectex

Mensagem por Nelson Arcas em 14/12/2010, 18:54

Obrigado, voi realizar alguns teste e verificar se atende o que estou precisando


Nelson Arcas
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Em curso Re: Utilizar comando createobjectex

Mensagem por Marcos Guedes em 1/1/2011, 15:18

up!

_________________
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

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