- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
I would like to know if it possible to link in my main program libraries which must be called with different calling conventions.
For instance, I have subroutines I need to call from library A with these conventions: CVF / Upper Case / After Individual String Argument. Subroutines from library B must be called with the default IVF 10.1 settings.
Is it possible? If so, how can I do this, since the project properties (for External Procedures)apply to all external subroutines?
Thanks in advance,
Olivier
Link kopiert
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
You do this by declaring an explicit interface for the routine you want to call and, if necessary, adding attributes to change the conventions. In your situation, I would suggest that the CVF-convention routines be declared with an ATTRIBUTES line like this:
!DEC$ ATTRIBUTES STDCALL, REFERENCE, MIXED_STR_LEN_ARG, DECORATE, ALIAS:"FUNCNAME" :: funcname
This would go inside an INTERFACE block declaring function funcname. In the ALIAS attribute, spell the name in uppercase. You would then need to make this interface visible to the caller - creating a module with the declarations and USEing the module is the easiest way.
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
Thanks Steve! It does wonders.
Olivier
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
- RSS-Feed abonnieren
- Thema als neu kennzeichnen
- Thema als gelesen kennzeichnen
- Diesen Thema für aktuellen Benutzer floaten
- Lesezeichen
- Abonnieren
- Drucker-Anzeigeseite