Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

DLL Schnittstelle mit String


3 replies to this topic

Jan Becker

Jan Becker
  • Members
  • 285 posts

Posted 09 February 2001 - 12:38

(von Roland Trutmann)
Problem:
Error Number: 0x80040704 Dll function call resulted in back stack Possible incorrect prototyping

Schnittstelle MVC 6.0:
extern "C" SERVER_TOOLS_EXPORT BOOL InitInstanceS (INT32U processID, char * processName);

BOOL initInstanceS (INT32U processID, char * processName) {
 CString procName; procName = processName;
 return Cm_ServerLock::get_Instance ().initInstance (processID, procName);
}

Schnittstelle bei IS 6.22:
prototype BOOL HteServerTools.initInstanceS(NUMBER, BYREF STRING);

Frage: Wie kann ich einen String an eine DLL übergeben?


PS:IS 5.5 hat die Schnittstelle keine Fehler gegeben.

Besten Dank fuer die Hinweise!!!!!


Jan Becker

Jan Becker
  • Members
  • 285 posts

Posted 09 February 2001 - 12:44

es sieht danach aus, dass du vergessen hast, die "calling convention" der funktion im prototypen zu definieren. da deine funktion in der dll nachdruecklich nach "C"-konventionen verlangt, solltest du auch in IS die funktion mit
prototype CDECL BOOL dllname.function(a,b) definieren.

jan

(Edited by Jan Becker at 2:37 pm on Feb. 9, 2001)

(Edited by Jan Becker at 2:38 pm on Feb. 9, 2001)


MarkoK

MarkoK
  • Full Members
  • 48 posts

Posted 13 February 2001 - 18:44

evtl. mal die DLL-Funktionen als
extern "C" {
typ WINAPI funktion(...)
...
}
deklarieren...dann muss man im IS6 Skript kein cdecl oder stdcall einfügen....

Marko