Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Pcassettari

[Resolvido] Receber parâmetro de evento ActiveX em javascript

Recommended Posts

Pessoal,

 

Desculpem se a pergunta for simples, mas não achei nada na net q resolvesse o meu problema e meu lance é mais Delphi... Javascript eu não tenho experiência.

Mas vamos lá...

Tenho uma aplicação ActiveX feita em Delphi. Atravás do javascript eu chamo o OCX, acesso os métodos e beleza. O problema é que quando um evento do ActiveX(OCX) é disparado o parâmetro deste evento não aparece no javascript.

 

Segue o código:

<html>
<head>
<script LANGUAGE=javascript>
function inicia(dados)
{ 
 MeuActiveX.Visivel = "true";
 MeuActiveX.MensagemErro = "true";
 MeuActiveX.Porta = "9035";
 MeuActiveX.IP = "192.168.202.143";
}
</SCRIPT>

<title></title>
</head>
<body>
<object     
id="MeuActiveX"
classid="CLSID:71DC598A-3CF1-40FE-9CAA-B38AD96969A6" 
codebase="MeuActiveX.ocx"
width=116
height=747>
</object>

<script LANGUAGE="JavaScript" FOR="MeuActiveX" EVENT="OnCTIRecebeuCampanhas(tenants)">
  alert(tenants);
</SCRIPT>

<script>
 inicia(""); 
</SCRIPT>

 

O parâmetro "tenants" é valorizado no ActiveX mas o alert aparece em branco.

O que estou fazendo errado?

 

Obrigado a todos!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera...

 

Descobri a solução.

 

O problema estava na assinatura do evento no ActiveX.

O evento OnCTIRecebeuCampanhas(tenants), foi declarado assim no ActiveX:

 procedure OnCTIRecebeuCampanhas(out campanhas: WideString); dispid 214;

Mas o correto é que o parâmetro seja de entrada e saída (var). Deste jeito:

 procedure OnCTIRecebeuCampanhas(var campanhas: WideString); dispid 214;

 

Assim o evento retorna o valor do parâmetro para o JavaScript.

 

Falow

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.