Du bist nicht angemeldet.

161

Freitag, 16. April 2010, 08:59

Hi Vison,

scheint so, als ob du vergessen hättest, die DX-Libraries im Release zu linken.
there's an app for that

162

Freitag, 16. April 2010, 09:07

Jo füg mal irgendwo im Code folgendes ein:

C-/C++-Quelltext

1
2
3
4
5
6
7
pragma comment (lib, "d3d9.lib") 
pragma comment (lib, "d3dx9.lib") 
pragma comment (lib, "dsound.lib") 
pragma comment (lib, "dinput8.lib ") 
pragma comment (lib, "dxguid.lib ") 
pragma comment (lib, "dxerr9.lib ") // Je nach SDK das oder das hier drunter 
pragma comment (lib, "dxerr.lib ")

Dann dürfte es gehen.
Ich weiß es dauert viel zu lange, aber ich habe echt nur Pech. Habe mir heute mal eben im Zeigefinger Nerv und Sehne durchtrennt. Dennoch kann es nicht mehr all zu lange dauern mit dem Tutorial. Außerdem kamen auch noch Prüfungen und dergleichen dazwischen.
Klatscht die Hopper an die Wand, Deutschland ist ein Raverland! :D

163

Freitag, 16. April 2010, 15:58

Hallo zusammen

Vielen dank erstmal für die schnellen antworten.
Aber leider ändert sich nichts.

Hier mal eine liste mit allen gelinkten libs
d3d9.lib
d3dx9.lib
dinput8.lib
dsound.lib
strmiids.lib
strmbase.lib
dxerr.lib
dxguid.lib
winmm.lib
kernel32.lib
user32.lib
gdi32.lib
winspool.lib
comctl32.lib
comdlg32.lib
advapi32.lib
shell32.lib
ole32.lib
oleaut32.lib
uuid.lib

ich verwende das DirectX SDk vom February 2010

mfg Vison


Ok also hat sich erledigt hab denn fehler gefunden. hatte von nem früheren projekt noch die x64 variante der libs in den projekt settings muss aber die x86 version sein für 32 bit systeme.

Falsche
D:\Program Files (x86)\Microsoft DirectX SDK (February 2010)\Lib\x64
Richtige
D:\Program Files (x86)\Microsoft DirectX SDK (February 2010)\Lib\x86

ps. vielen dank nochmal.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Vison« (16. April 2010, 16:09)


164

Sonntag, 25. April 2010, 01:52

Mein Problem hat sich auch endlich gelöst, lag nicht am Cuda-Code sondern an die Einstellungen des Projektes, das er halt von Standardprojekten die Libs erbt.
Ich finde diese Einstellung eh etwas fragwürdig.

oc1d

Neuzugang

Beiträge: 3

Wohnort: Hamburg

Beruf: Informatik Student

  • Private Nachricht senden

165

Montag, 26. April 2010, 21:31

Visual C++ 2010 Express

Hey,

ich versuche gerade die BaseClasses zu kompilieren bekomme aber folgende Fehlermeldung.

1> wxdebug.cpp
1>wxdebug.cpp(11): warning C4603: '_WINDLL' : macro is not defined or definition is different after precompiled header use
1> Add macro to precompiled header instead of defining here
1> wxdebug.cpp(13) : use of precompiled header
1> wxlist.cpp
1> wxutil.cpp
1>D:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(1151,5): warning MSB8012: TargetPath(C:\DEV\TriBase_VS_2010\Include\DShowBaseClasses\.\Release\BaseClasses.lib) does not match the Library's OutputFile property value (C:\DEV\TriBase_VS_2010\Include\DShowBaseClasses\Release\STRMBASE.lib). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Lib.OutputFile).
1>D:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(1153,5): warning MSB8012: TargetName(BaseClasses) does not match the Library's OutputFile property value (STRMBASE). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Lib.OutputFile).
1> BaseClasses 2005.vcxproj -> C:\DEV\TriBase_VS_2010\Include\DShowBaseClasses\.\Release\BaseClasses.lib
1> The system cannot find the file specified.
1>D:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(113,5): error MSB3073: The command "COPY .\Release\BaseClasses.lib ..\..\Lib\StrmBase.lib
1>D:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(113,5): error MSB3073: :VCEnd" exited with code 1.
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

hat jemand eine Idee woran das liegen könnte?

Grüße,
oc1d

166

Montag, 26. April 2010, 22:22

Da scheinen Build-Event-Befehle veraltet zu sein. Dazu schau bei den Projekteigenschaften mal unter Build Events -> Post-Build Event
Könnte sein, dass sich das bereits löst wenn du "COPY" mit "copy" ersetzt. Hier hab ich noch was gefunden, was womöglich von belang sein könnte.
Im Zweifelsfall deaktivierst du die Build-Events und führst das was sie machen manuell durch.

oc1d

Neuzugang

Beiträge: 3

Wohnort: Hamburg

Beruf: Informatik Student

  • Private Nachricht senden

167

Dienstag, 27. April 2010, 08:26

Hey! Danke für die schnelle Antwort.

Denke aber, dass es wohl an den Warnings zuvor liegt. Das erstzen hat nichts gebracht.

168

Samstag, 5. Juni 2010, 19:09

Notlösung entdeckt

Also falls man den bei Postbuildereignisse zu COPY $(OutDir)strmbasd.lib ..\..\Lib\StrmBaseD.lib ändert, geht das ganze. Es kommen aber noch mehr Warnungen.

PS: Falls man bei den Eigenschaften: C++ -> Allgemein -> Kompillierung mit mehreren Prozessoren auf Ja stellt, geht es bei den Modernen Mehrkern-Prozessoren schneller.
PS2: Postbuildereignisse vom Tribase Engine sollten nicht unbedingt die dll in System32 kopieren, falls man nur als Benutzer arbeitet. Besser manuell rüberkopieren und die Zeile entfernen. [Habe inzwischen herausgefunden, dass das egal ist, VS 2010 merkt das und bringt nur eine Warnung]

Edit3:
habe eine bessere Lösung gefunden. Falls man im Bibliothekar unter Allgemein bei der Ausgabedatei folgendes eingibt, klappt alles ohne Warnungen:
debug\$(TargetFileName)
Wäre froh, falls das mal einer Testen würde, da ich bei mir in der Zwischenzeit sehr viele Einstellungen geändert habe. (Habe eben lange rumprobiert.)
Für Release muss man das ganze entsprechend schreiben.
Als ich vorkompillierte Header benutzt habe, kamen einige Warnungen, deshalb habe ich die momentan auch ausgeschaltet.

Beim Kompilieren von Tribase tritt aber noch folgender Fehler auf, obwohl das Includeverzeichnis angegeben ist beim Resourcencompiler
Res\Resource.rc(11): fatal error RC1015: cannot open include file 'mfc/afxres.h'.
Mit dem ProcessMonitor fand ich heraus, dass die Datei gar nicht an der Stelle gesucht wird, die ich angegeben habe.

Eine kleine Lösung habe ich auch hier nun gefunden:
In den Projekteigenschaften unter VC++-Verzeichnisse bei Includeverzeichnissen einfach noch den Pfad zum Includeverzeichnis des Platform SDK's eintragen, danach findet er auch in der Resource die Datei.

Dieser Beitrag wurde bereits 6 mal editiert, zuletzt von »ChrisvA« (8. Juni 2010, 21:41)


169

Sonntag, 25. Juli 2010, 23:35

@ChrisvA ich denke ich kann dir relativ bald sagen ob deine Lösung funktioniert, aber vorher hab ich noch ne Frage in eigener Sache.

hier:
Lösung: TriBase und Visual C++ 2005/2008 Express
wird beschrieben, dass man diese libs:
kernel32.lib user32.lib gdi32.lib winspool.lib comctl32.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib
hinzufügen soll.

Wo mach ich das denn im VS2010?

Gruß Cy

E333

Alter Hase

Beiträge: 1 108

Wohnort: Kaff im Zollernalbkreis

Beruf: Schüler

  • Private Nachricht senden

170

Montag, 26. Juli 2010, 14:01

Projekteigenschaften: -> Konfigurationseigenschaften -> Linker -> Eingabe -> Zusätzliche abhängigkeiten.
_______________________________________
MfG E333



http://mxdev.wordpress.com/ meine Homepage.

171

Samstag, 31. Juli 2010, 07:10

hm...

moin moin!

Dann hab ich ja eigentlich an der richtigen Stelle gesucht...
Aber schau mal, bei mir ist da nichts!?


Servus

NachoMan

Alter Hase

Beiträge: 1 228

Wohnort: Berlin

Beruf: Schüler

  • Private Nachricht senden

172

Samstag, 31. Juli 2010, 09:11

ja... diese übersetzungswut ist schrecklich. es wird einfach alles übersetzt was geht xD
der bibliothekar dürfte der linker sein^^

ein wunder dass die nicht debuger übersetzt haben(entkäferer? XD)
Ein Mitglied der VEGeiCoUndGraSonMaWiGeS Bewegung.
nächstes projekt: sowas wie hello world, nur viel besser!

173

Samstag, 31. Juli 2010, 09:25

-_- fast schon zu einfach...

Hätte es mir von dein Feldern her eigentlich denken sollen.

Dank dir! :thumbup: