- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
This is really two questions.
1) NLSGetLocaleInfo -- I typically say not to use the Powerstation portability libraries -- but if I turn them off, I get an unsatisfied external for the NLSGetLocaleInfo.
2) I have a DLL that I would like to get working with IVF -- it has long been in CVF. It's called from a VB program.
It seems to work fine in "debug" mode but if I compile release, when it gets to call the DLL (I think), I'm getting an "out of stack space" error from the VB app. (Run time error 28).
I guess I can run the VB app from the IDE and try to figure out what is happening but it seems odd?
And, of course, would like to get question 1 answered.
1) NLSGetLocaleInfo -- I typically say not to use the Powerstation portability libraries -- but if I turn them off, I get an unsatisfied external for the NLSGetLocaleInfo.
2) I have a DLL that I would like to get working with IVF -- it has long been in CVF. It's called from a VB program.
It seems to work fine in "debug" mode but if I compile release, when it gets to call the DLL (I think), I'm getting an "out of stack space" error from the VB app. (Run time error 28).
I guess I can run the VB app from the IDE and try to figure out what is happening but it seems odd?
And, of course, would like to get question 1 answered.
Link kopiert
4 Antworten
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
You need the portability library - it's sort of a misnomer nowadays to call it PowerStation compatibility. The NLS routines are in libifport.lib
For 2, you need to make sure that the DLL routines have the STDCALL calling convention. You may find that compiling with /iface:cvf (default if you convert a CVF project) is the easiest solution. Otherwise you are corrupting the stack.
For 2, you need to make sure that the DLL routines have the STDCALL calling convention. You may find that compiling with /iface:cvf (default if you convert a CVF project) is the easiest solution. Otherwise you are corrupting the stack.
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
Figured out 1. As you say...
2 -- what's weird(?) is that the debug version (even compiled with optimization and essentially the same size as the release version) works. the release still doesn't.
I'll try to see if somehow the debug version have /iface:cvf on.
2 -- what's weird(?) is that the debug version (even compiled with optimization and essentially the same size as the release version) works. the release still doesn't.
I'll try to see if somehow the debug version have /iface:cvf on.
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
2) you're right (of course -- why would we ever doubt you?). The debug version has /iface:cvf and the release didn't (I just made the release today -- thinking about making all these dlls be IVF).
At least it's explanable.
At least it's explanable.
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
FYI, tried "std call" on this (iface/cvf works fine) and got ICE. This is just a baby project compared to my other one so will submit to premier support.

Antworten
Themen-Optionen
- RSS-Feed abonnieren
- Thema als neu kennzeichnen
- Thema als gelesen kennzeichnen
- Diesen Thema für aktuellen Benutzer floaten
- Lesezeichen
- Abonnieren
- Drucker-Anzeigeseite