Clique abaixo para nos ajudar
Conectar-se

Esqueci minha senha

Estamos no Facebook
Buscar
 
 

Resultados por:
 


Rechercher Busca avançada

Quem está conectado
17 usuários online :: 1 usuário cadastrado, Nenhum Invisível e 16 Visitantes :: 2 Motores de busca

marcos de boni

[ Ver toda a lista ]


O recorde de usuários online foi de 468 em 1/3/2012, 10:43
Espessura do cursor intermitente

7/3/2017, 09:08 por Jefferson Matakas

Bom dia a todos !!

Existe uma opcao no windows que pode ser acessada atraves da 'central da …

Comentários: 0

DESENVOLVIMENTO EM REDES

4/3/2017, 18:45 por AJC

Pessoal tem ou conhece livros ou material para programação em
redes usando banco de dados nativo …

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: 4

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

Estatísticas
Temos 7035 usuários registrados
O último usuário registrado atende pelo nome de marcos de boni

Os nossos membros postaram um total de 31 mensagens em 17 assuntos

invocar Dll em Xbase

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

Em curso invocar Dll em Xbase

Mensagem por csmnf em 22/3/2012, 08:39

Bom dia,
criei uma dll exemplo chamada Matematica.dll e gostaria de a testar dentro do xbase, alguém consegue dizer-me qual o código para a invocar no xbase?

Desde já muito obrigada
Carla

csmnf
Participa Pouco
Participa Pouco


Voltar ao Topo Ir em baixo

Em curso Re: invocar Dll em Xbase

Mensagem por alceu11 em 22/3/2012, 09:15

Vc criou esta dll no VFP, ?
PARA CHAMAR UMA DLL VC PRECISARA REGISTRAR NO WINDOWS
Aki como chamar a dll exemplo....
LOCAL ozip as molezip.zipfile
oZip = CreateObject("molezip.zipfile")

Depois vc precisa saber quais os parametros, metodos ke vc precisa ser chamados
Código:
 *  BACKUP EM ZIP, Com a dll molezip.dll

**Criando um Ole via cod. e REGISTRANDO UMA DLL MOLEZIP.DLL
Close Databases
SET DEFAULT TO SYS(5)+CURDIR()
Set Safety Off

*Criando 1 dbf para teste do zip,,, aki é ilustrativo
Create Table teste1( codigo c(10) , descricao c(40), preco N(10,2))
Select teste1
INDEX on codigo TAG codigo
For i = 1 To 15
Insert Into teste1 (codigo,descricao,preco) Values ( Alltrim(Str(i,6)), 'Produto '+Str(i), i)
NEXT
Close Database All
*REGISTRANDO no windows A DLL MOLEZIP.DLL
DECLARE LONG DllRegisterServer IN molezip.dll
IF DllRegisterServer() = 0
 Messagebox('REGISTRADO a Dll Molezip ',0+0,'Aviso',500)
ELSE
  Messagebox('NÃO REGISTRADO !',0+0,'Aviso',500)
RETURN .f.
ENDIF
gcDirBackup = SYS(5)+CURDIR()
SET defa TO SYS(5)+CURDIR()

Local cArquivo, x


cArquivo = 'Backup' && aki o nome do zip,
cArquivo = AllTrim(gcDirBackup)+cArquivo
cArquivo = AllTrim(cArquivo) + '.Zip'

LOCAL ozip as molezip.zipfile
oZip = CreateObject("molezip.zipfile")
oZip.Create(cArquivo)
?? chr(7)
*Aqui adiciono todos os dbf ao arquivo criado pelo molezip chamado oZip

nArquivos = Adir(aArquivos,"*.DBF" ) && *.dbf
For x = 1 To nArquivos
Inkey(0.01,'H')
oZip.PackInplace(aArquivos(x,1),aArquivos(x,1),1)  && usando 1 metodo da dll
EndFor
***aki arquivo cdx
nArquivos = Adir(aArquivos,'*.CDX') && *.CDX
For x = 1 To nArquivos
Inkey(0.01,'H')
oZip.PackInplace(aArquivos(x,1),aArquivos(x,1),1)
EndFor
***arquivo bak
if File('teste.bak')
nArquivos = Adir(aArquivos,'TESTE.BAK')
For x = 1 To nArquivos
Inkey(0.01,'H')
oZip.PackInplace(aArquivos(x,1),aArquivos(x,1),1)
ENDFOR
endif
OZip.Close && fecho

WAIT clear

***


Link da dll

Aki no forum exemplos de usar funcoes criados pelo usuario...

mais com exemplos simples

Converter numero em caracter sem perder o valor
wr=43170557096
y=Ferrari(wr)
WAIT WINDOW AT 25,35 y +1 TIMEOUT 2

FUNCTION Ferrari
parameters onumero
alltrim(str(onumero,100))
return(onumero)

*** com fazer uma funcao
Funciton nomedela
Parameters nomeretorno
...Seu codigo
Return(nomeRetorno)
Endfunc

***Um exemplo
CLEAR
store 0 to A,B,C
DO PROCEDURE1 WITH A,B,C
? A+B+C

PROCEDURE PROCEDURE1
PARAMETERS A,B,C
A=90
B=90
C=90
avatar
alceu11
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Em curso Re: invocar Dll em Xbase

Mensagem por csmnf em 22/3/2012, 09:51

bom dia novamente, e obrigada pela rápida resposta.
Efectivamente o código que me disponibilizou era, mais ou menos, o código que estava a usar:

local Adi, Sub, Mult, Div
local Mat as Matematica.Operacoes
mat= createObject("matematica.operacoes")
Adi=Str(mat.somar(50,25))
MENSAGEM(adi,[DIRECTA]) && não ligue a este comando é uma funcao interna do sistema
mat.close && fechar
WAIT clear


No entanto continuo com erro:
1. não criei a Dll no VFP - usei a versão: Visual Studio 11 Beta -Projecto Visual Basic - Class Library - será aqui que está o erro? mas não tenho o VFP, como resolver?
2. o código da dll é o seguinte:
Public Class Operacoes
Function Somar(ByVal Valor1 As Double, ByVal Valor2 As Double) As Double
Return (Valor1 + Valor2)
End Function
Function Subtrair(ByVal Valor1 As Double, ByVal Valor2 As Double) As Double
Return (Valor1 - Valor2)
End Function
Function Multiplicar(ByVal Valor1 As Double, ByVal Valor2 As Double) As Double
Return (Valor1 * Valor2)
End Function
Function Dividir(ByVal Valor1 As Double, ByVal Valor2 As Double) As Double
Return (Valor1 / Valor2)
End Function
End Class

3. Não consigo registar a dll (?!) - SO Win7 64Bits ?!?!

Obrigada
Carla

csmnf
Participa Pouco
Participa Pouco


Voltar ao Topo Ir em baixo

Em curso mude o codigo e execute agora, veja se funciona

Mensagem por alceu11 em 22/3/2012, 10:03

**alteracao
local Adi, Sub, Mult, Div
local Mat as Matematica.Operacoes
mat= createObject("matematica.operacoes")
Adi=Str(mat.somar(50,25))
wait window adi
messagebox(adi,0+0,"AVISO SOMA",1500)
**MAT.MENSAGEM(adi,[DIRECTA]) && SERA QUE A TUA DLL TEM FUNCAO MENSAGEM?
mat.close && fechar
WAIT clear

Se conseguir agora avise.
pARA REGISTAR A DLL PROCURE AKI
[Você precisa estar registrado e conectado para ver este link.]
avatar
alceu11
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Em curso Re: invocar Dll em Xbase

Mensagem por alceu11 em 22/3/2012, 11:32

Aki uma outra forma agora com email
Código:
 SET SAFETY OFF
CLOSE DATABASES all
CREATE TABLE tabela (codigo c(6))
CLOSE DATABASES
**verifique se a dll jmail esta na pasta
*** mude os dados do email senha de ke envia, e mude o destinario e teste
IF FILE('jmail.dll')
 DECLARE LONG DllRegisterServer IN jmail.dll 
  IF DllRegisterServer() = 0
    WAIT WINDOW 'REGISTREI a jmail  dll' TIMEOUT 1
  ELSE
    WAIT WINDOW 'NAO REGISTREI a dll jmail' TIMEOUT 1
    RETURN 0
  ENDIF
ELSE
  WAIT WINDOW 'nao encontrei a dll' TIMEOUT 1
RETURN 0
endif

******
WAIT WINDOW 'Enviando Email com jmail ' NOWAIT noclear

LOCAL oMsg AS Object
oMsg = CREATEOBJECT("JMail.Message")
oMsg.Silent = .T.
*oMsg.From = ALLTRIM("quem_manda@terra.com.br")
oMsg.From = ALLTRIM("alceu11@yahoo.com.br")
*quem recebe
*oMsg.AddRecipient("quem_recebe@terra.com.br")
oMsg.AddRecipient("joao51@yahoo.com.br") && email kem recebe
oMsg.Subject = "Relatório Controle de Caixa" && o titulo da mensagem
oMsg.Body = "Segue o arquivo contrle de caixa número 123"+ ;
CHR(13)+CHR(10)+"Atenciosamente, "+;
CHR(13)+CHR(10)+" "+;
CHR(13)+CHR(10)+"Nome da minha Empresa Ltda. "+;
CHR(13)+"E-mail: [Você precisa estar registrado e conectado para ver este link.]"


oMsg.AddAttachment("tabela.dbf")
oMsg.ReturnReceipt = .F.
oMsg.MailServerUserName = ALLTRIM("alceu11@yahoo.com.br") &&email kem manda
oMsg.MailServerPassWord = ALLTRIM("454545") && bote a tua senha
***smtp.cas.terra.com.br && informe a smtp do teu provedor.
IF oMsg.Send("smtp.mail.yahoo.com.br") THEN
MESSAGEBOX("Mensagem enviada!",0+0,"Aviso",1500)

ELSE
MESSAGEBOX("Ocorreu um erro no envio:"+;
CHR(13)+STR(oMsg.ErrorCode) + ;
CHR(13)+oMsg.ErrorMessage,0+16,;
"Erro no envio")
ENDIF
wait clear
oMsg.close
oMsg = NULL

link da dll
avatar
alceu11
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Em curso Re: invocar Dll em Xbase

Mensagem por lardecristo em 7/5/2012, 01:18

[Você precisa estar registrado e conectado para ver este link.] escreveu:
Public Class Operacoes
Function Somar(ByVal Valor1 As Double, ByVal Valor2 As Double) As Double
Return (Valor1 + Valor2)
End Function


Experimente declarar da maneira abaixo no seu codigo XBase e veja o que ocorre.

Código:

DECLARE INTEGER Somar IN "nome_da_sua_dll" LONG lnValor1, LONG lnValor2

O "nome_da_sua_dll", se quiser coloque o local aonde esta, por exemplo "C:\Desenvolvimento\Dll\nome_da_sua_dll.dll".

Abraços.
avatar
lardecristo
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Em curso Re: invocar Dll em Xbase

Mensagem por csmnf em 18/7/2012, 14:43

Obrigada a todos os que responderam, ainda não tive oportunidade de voltar a este tópico. logo que tenha respostas (ou mais dúvidas) Wink volto.

Obrigada
Carla

csmnf
Participa Pouco
Participa Pouco


Voltar ao Topo Ir em baixo

Em curso Re: invocar Dll em Xbase

Mensagem por Marcos Guedes em 19/7/2012, 11:52

Carla, veja este tópico se ajuda em alguma coisa:

[Você precisa estar registrado e conectado para ver este link.]

_________________
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