IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Firebird Discussion :

Problème de création d'udf


Sujet :

SQL Firebird

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Benevole
    Inscrit en
    Mai 2004
    Messages
    1 717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Benevole
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 717
    Par défaut Problème de création d'udf
    Bonjour à tous

    j'ai hésité un peu avant de poster ici, mais dans les cas je serai redirigé en fonction de vos conseils:
    voici le code delphi de l'udf (code emprunter dans la faq):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    library Madll;
    uses
      SysUtils,
      windows,
      Classes;
    {$R *.res}
    function ib_util_malloc(l: integer): pointer; cdecl; external 'ib_util.dll';
    function ChangeMyString(const p: PChar): PChar; cdecl;
    var
    s: string;
    begin
    s := extractfilename(string(p));
    Result := ib_util_malloc(Length(s) + 1);
    StrPCopy(Result, s);
    end;
    begin
    end.
    Voici la déclaration dans firebird :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    DECLARE EXTERNAL FUNCTION CHANGEMYSTRING
      CSTRING(255) CHARACTER SET ISO8859_1
    RETURNS CSTRING(255) CHARACTER SET ISO8859_1 FREE_IT
    ENTRY_POINT 'ChangeMyString' MODULE_NAME 'Madll.dll';
    voici ma requête d'appel à l'UDF :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT CHANGEMYSTRING(champ15) FROM MESINFORMATIONS
    voici mon code d'erreur :
    Invalid token.
    Invalid request BLR at offset 63.
    Function CHANGEMYSTRING is not defined.
    Module name or entrypoint could not be found.
    j'ai mis ma dll dans le dossier UDF de firebird et j'ai rédémarer mon serveur !

    ou ai je péché ?

    Merci à tous

  2. #2
    Membre chevronné Avatar de JustMe
    Inscrit en
    Juillet 2002
    Messages
    479
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 479
    Par défaut
    il te manque :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    exports 
      ChangeMyString;
    begin
    end.

    pour que ta fonction soit utilisable par les programmes appelant, sinon elle est local.

  3. #3
    Membre éprouvé
    Homme Profil pro
    Benevole
    Inscrit en
    Mai 2004
    Messages
    1 717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Benevole
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 717
    Par défaut
    Effectivement ! merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème de création d'udf
    Par devalender dans le forum Débuter
    Réponses: 3
    Dernier message: 06/02/2012, 14h31
  2. Réponses: 7
    Dernier message: 16/06/2004, 15h02
  3. Problème de création de table sous MySql
    Par ducamba dans le forum Requêtes
    Réponses: 2
    Dernier message: 21/06/2003, 09h59
  4. Problème de création de fenêtre
    Par tomateauketchup dans le forum DirectX
    Réponses: 1
    Dernier message: 08/06/2003, 19h42
  5. [Rave Report] problème de création dynamique
    Par Nivux dans le forum Rave
    Réponses: 2
    Dernier message: 24/05/2003, 00h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo