Fórum Erro no uso de dll externa #269426
21/02/2005
0
meu codigo
function encode(key, v_s :variant): variant; stdcall; external ´cast.dll´;
dá o seguinte erro ´Não foi possivel localizar o ponto de entrada do procedimento encode na biblioteca de vínculo dinâmico cast.dll´
Alquem sabe do que se trata ???
sei que esta dll tem o metodo ´encode´
a documentação da dll esta no link abaixo
http://download.paipai.net/texts/asp-cast128-1.1.htm#2.10
Luizcsantanajr
Curtir tópico
+ 0Posts
21/02/2005
Massuda
O procedimento correto seria instalar o controle no Windows (as instruções estão no próprio link que você passou) e, pelo que o exemplo em VB mostra, usar CreateOleObject da unit ComObj para criar uma instancia do controle. Entretanto, para isso dar certo acho que fica faltando montar uma unit com a definição da interface exporta pelo controle e isso, neste momento, eu não tenho idéia de como fazer de um jeito fácil.
Gostei + 0
21/02/2005
Luizcsantanajr
Obrigado mas :
Como eu vou criar uma unit com definição da interface ?
Você tem algum exemplo de como fazer isso ?
Gostei + 0
21/02/2005
Beppe
function encode(key, v_s :variant): variant; stdcall; external ´cast.dll´ name ´vb_encode´;
Fora isto, vc precisa observar o que o Massuda disse. Não sei o que estava em mente dos criadores sobre o uso da rotina.
Gostei + 0
21/02/2005
Massuda
Pesquisando um pouco mais no site, descobri que tem os fontes :wink: A interface COM é declarada no arquivo cast.odl:
// cast.odl : type library source for cast.dll
// This file will be processed by the MIDL compiler to produce the
// type library (cast.tlb).
[ uuid(B11567EB-EF87-4BDD-9070-581EAB099A08), version(1.0) ]
library Cast
{
importlib("stdole32.tlb");
importlib("stdole2.tlb");
// Primary dispatch interface for chipher
[ uuid(2121B8E7-E209-410D-AF86-20CBD9A96527) ]
dispinterface Ichipher
{
properties:
// NOTE - ClassWizard will maintain property information here.
// Use extreme caution when editing this section.
//{{AFX_ODL_PROP(chipher)
//}}AFX_ODL_PROP
methods:
// NOTE - ClassWizard will maintain method information here.
// Use extreme caution when editing this section.
//{{AFX_ODL_METHOD(chipher)
[id(1)] VARIANT encode(VARIANT key, VARIANT inData);
[id(2)] VARIANT decode(VARIANT key, VARIANT inData);
[id(3)] VARIANT test(VARIANT key, VARIANT inData);
[id(4)] VARIANT b64StrEnc(VARIANT inData);
[id(5)] VARIANT b64StrDec(VARIANT inData);
[id(6)] VARIANT b64ArrayEnc(VARIANT inArray);
[id(7)] VARIANT b64ArrayDec(VARIANT inData);
[id(8)] VARIANT cast128decode(VARIANT key, VARIANT inData);
[id(9)] VARIANT cast128encode(VARIANT key, VARIANT inData);
[id(10)] VARIANT cast128ArrayEnc(VARIANT key, VARIANT inArray);
[id(11)] VARIANT cast128ArrayDec(VARIANT key, VARIANT inArray);
//}}AFX_ODL_METHOD
};
// Class information for chipher
[ uuid(12BBFB97-0AEC-4837-8061-12CA8EAD166B) ]
coclass chipher
{
[default] dispinterface Ichipher;
};
//{}
//}}AFX_APPEND_ODL}}
};Gostei + 0
21/02/2005
Beppe
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)