Appel d'une Dll en C avec ASP

carlos - 30 sept. 2001 à 12:20
meech Messages postés 209 Date d'inscription vendredi 11 avril 2003 Statut Membre Dernière intervention 14 août 2007 - 11 avril 2003 à 10:31
Salut,

j'ai une dll en C de +/- 15.000 lignes donc trop long à réecrire.
Je voudrais pouvoir l'appeler à partir d'une Asp.
..en plus, pour etre portable sur netscape et msie que faut-il utilser vbscript, ou jscript ou ...??

merci

exemple d'une function : (j'ai pris une des plus petites)
en fait au départ ce projet vient du dos.

UINT32 UaValidateCountry(COUNTRY_RECORD *rec,
char *country,
UINT32 *UrsaSoftError)
{
char C4[URSA_LN_COUNTRY_STRING + 1] ;
UaPuertoRicoAdjust(country, rec);

#ifdef AS400
ASCIItoEBCDIC(rec->Country, URSA_LN_COUNTRY_STRING);
#endif
strncpy(C4,"C4",URSA_LN_COUNTRY_STRING + 1);

if (!(memcmp(C4, country, URSA_LN_COUNTRY_STRING)))
{
memcpy(country,"CA",URSA_LN_COUNTRY_STRING);
}

if (memcmp(country, rec->Country, URSA_LN_COUNTRY_STRING))
{
UaSoftError(UrsaSoftError, URSA_LOCATION_COUNTRY_MISMATCH);
}
return(OK);
} :question)

4 réponses

Salut,
Quand tu veut faire un appell a une dll en asp, que cette dll soit programmer en C ou n'importe quel autre language, il faut:
1 - rajouter la dll au system, donc: regsvr32 (ou regsvr, je suis plus sur si il y a un 32 ou pas) nom_de_la_dll.dll
2 - Pour faire un appel a celle -ci:

Set mavar = Server.CreateObject("nom_de_la_dll")
'puis pour l'utiliser
mavar.nom_de_function_contenu_dans_la_dll
0
-------------------------------
Réponse au message :
-------------------------------

Salut,

j'ai une dll en C de +/- 15.000 lignes donc trop long à réecrire.
Je voudrais pouvoir l'appeler à partir d'une Asp.
..en plus, pour etre portable sur netscape et msie que faut-il utilser vbscript, ou jscript ou ...??

merci

exemple d'une function : (j'ai pris une des plus petites)
en fait au départ ce projet vient du dos.

UINT32 UaValidateCountry(COUNTRY_RECORD *rec,
char *country,
UINT32 *UrsaSoftError)
{
char C4[URSA_LN_COUNTRY_STRING + 1] ;
UaPuertoRicoAdjust(country, rec);

#ifdef AS400
ASCIItoEBCDIC(rec->Country, URSA_LN_COUNTRY_STRING);
#endif
strncpy(C4,"C4",URSA_LN_COUNTRY_STRING + 1);

if (!(memcmp(C4, country, URSA_LN_COUNTRY_STRING)))
{
memcpy(country,"CA",URSA_LN_COUNTRY_STRING);
}

if (memcmp(country, rec->Country, URSA_LN_COUNTRY_STRING))
{
UaSoftError(UrsaSoftError, URSA_LOCATION_COUNTRY_MISMATCH);
}
return(OK);
} :question)
0
-------------------------------
Réponse au message :
-------------------------------

Salut,

j'ai une dll en C de +/- 15.000 lignes donc trop long à réecrire.
Je voudrais pouvoir l'appeler à partir d'une Asp.
..en plus, pour etre portable sur netscape et msie que faut-il utilser vbscript, ou jscript ou ...??

merci

exemple d'une function : (j'ai pris une des plus petites)
en fait au départ ce projet vient du dos.

UINT32 UaValidateCountry(COUNTRY_RECORD *rec,
char *country,
UINT32 *UrsaSoftError)
{
char C4[URSA_LN_COUNTRY_STRING + 1] ;
UaPuertoRicoAdjust(country, rec);

#ifdef AS400
ASCIItoEBCDIC(rec->Country, URSA_LN_COUNTRY_STRING);
#endif
strncpy(C4,"C4",URSA_LN_COUNTRY_STRING + 1);

if (!(memcmp(C4, country, URSA_LN_COUNTRY_STRING)))
{
memcpy(country,"CA",URSA_LN_COUNTRY_STRING);
}

if (memcmp(country, rec->Country, URSA_LN_COUNTRY_STRING))
{
UaSoftError(UrsaSoftError, URSA_LOCATION_COUNTRY_MISMATCH);
}
return(OK);
} :question)
0
meech Messages postés 209 Date d'inscription vendredi 11 avril 2003 Statut Membre Dernière intervention 14 août 2007
11 avril 2003 à 10:31
S'lut,

Il faut néanmoins, me semble-t-il, que tu aies défini, au sein du code de ta dll, une fonction permettant l'enregistrement (DllRegisterServer).
0
Rejoignez-nous