Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
000
28.10.2002, 17:39
CorDharel



Hi All und Kriz! :)

Ich mache gerade sein Tutorial "Erstellung einer DLL mit VC++ 6" und habe nun bei Punkt 7 ein Problem, und zwar gebe ich zwar alles so ein wie es steht, doch kommen noch einige Fehlermeldungen, aus denen ich nicht schlau werde:

dlltest.cpp:

Quellcode:
#include "dlltest.h"

//funktion #1 implementieren
__declspec(dllexport) int Get(STRUKTUR s)
{
    return s.wert;
}

//funktion #2 implementieren
__declspec(dllexport) void Set(STRUKTUR& ref_s, int wert)
{
    ref_s. = wert;
}

dlltest.h:

Quellcode:
#define __declspec(dllexport) __declspec(dllexport
#ifndef DLLTEST_H
#define DLLTEST_H

//Struktur deklarieren

__declspec(dllexport) struct STRUKTUR
{
    int wert;
};

__declspec(dllexport) int Get(STRUKTUR s);

//Funktion #2 deklarieren
__declspec(dllexport) void Set(STRUKTUR& ref_s, int wert);

#endif // DLLTEST_H

Quellcode:Errors:

--------------------Configuration: dlltest - Win32 Debug--------------------
Compiling...
dlltest.cpp
h:\private\ccoding\dlltest\dlltest.h(9) : error C2059: syntax error : 'struct'
h:\private\ccoding\dlltest\dlltest.h(11) : warning C4091: '__declspec(dllexport ) ' : ignored on left of 'int' when no variable is declared
h:\private\ccoding\dlltest\dlltest.h(12) : error C2143: syntax error : missing ';' before '}'
h:\private\ccoding\dlltest\dlltest.h(12) : error C2143: syntax error : missing ';' before '}'
h:\private\ccoding\dlltest\dlltest.h(12) : error C2143: syntax error : missing ';' before '}'
h:\private\ccoding\dlltest\dlltest.h(14) : error C2059: syntax error : 'int'
h:\private\ccoding\dlltest\dlltest.h(14) : warning C4091: '__declspec(dllexport ) ' : ignored on left of 'int' when no variable is declared
h:\private\ccoding\dlltest\dlltest.h(17) : error C2059: syntax error : 'void'
h:\private\ccoding\dlltest\dlltest.h(17) : warning C4091: '__declspec(dllexport ) ' : ignored on left of 'int' when no variable is declared
h:\private\ccoding\dlltest\dlltest.cpp(6) : error C2059: syntax error : 'int'
h:\private\ccoding\dlltest\dlltest.cpp(8) : warning C4091: '__declspec(dllexport ) ' : ignored on left of 'int' when no variable is declared
h:\private\ccoding\dlltest\dlltest.cpp(9) : error C2143: syntax error : missing ';' before '}'
h:\private\ccoding\dlltest\dlltest.cpp(9) : error C2143: syntax error : missing ';' before '}'
h:\private\ccoding\dlltest\dlltest.cpp(9) : error C2143: syntax error : missing ';' before '}'
h:\private\ccoding\dlltest\dlltest.cpp(13) : error C2059: syntax error : 'void'
h:\private\ccoding\dlltest\dlltest.cpp(16) : error C2143: syntax error : missing ';' before '}'
h:\private\ccoding\dlltest\dlltest.cpp(16) : error C2143: syntax error : missing ';' before '}'
h:\private\ccoding\dlltest\dlltest.cpp(16) : error C2143: syntax error : missing ';' before '}'
Error executing cl.exe.

dlltest.dll - 14 error(s), 4 warning(s)

hoffe jemand kann mir weiterhelfen :)

--

Greetz CorDharel

Leader der HolyShitBastards

zum Seitenanfang zum Seitenende Profil || Suche
001
28.10.2002, 18:02
Kriz



Hm, wieso definierst du den Ausdruck __declspec(dllexport) mit __declspec(dllexport ? Darüberhinaus hast die abschließende Klammer ) vergessen. Ich habe im Tutorial geschrieben:

#define DLL_EXPORT __declspec(dllexport)

und nicht

#define __declspec(dllexport) __declspec(dllexport

Demnach werden also alle __declspec(dllexport) Anweisungen in deinem Code mit dem falschen "__declspec(dllexport" (ohne die abschließende Klammer) ersetzt, was natürlich zu Fehlern führt.

=)

--

K:R-I)Z++
"CSS ist cascading style sheets. Und nicht so'n Ranzspiel." - dp
In memory of Voice († 2005/03/30)


Dieser Beitrag wurde am 28.10.2002 um 18:02 von Kriz bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
002
28.10.2002, 23:47
CorDharel



Oh... 8-|

*ut auspack und frust wegzock* ;D

--

Greetz CorDharel

Leader der HolyShitBastards

zum Seitenanfang zum Seitenende Profil || Suche
003
30.10.2002, 12:42
CorDharel



Noch eine Frage:

Quellcode:
Test::Test() : m_iWert(0) {}

Kommentar: Konstruktor, initialisiert m_iWert in der Initialisierungsliste

Wie genau wird hier m_iWert initialisiert und was ist eine Initialisierungsliste?

Ps: Gleiches Tut, Kapitle 8, implementierung der C++Quelltextdatei

--

Greetz CorDharel

Leader der HolyShitBastards


Dieser Beitrag wurde am 30.10.2002 um 12:42 von CorDharel bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche