JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=236d6961e27e8e698ab69c49a53d2b6fMedaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Von Visual Studio zu Code::Blocks
Gehe zu Seite 1, 2  Weiter
 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Otscho
Super JLI'ler


Alter: 35
Anmeldedatum: 31.08.2006
Beiträge: 338
Wohnort: Gummibären-Gasse
Medaillen: Keine

BeitragVerfasst am: 21.03.2007, 19:34    Titel: Von Visual Studio zu Code::Blocks Antworten mit Zitat

Viele Beispiele von Microsoft werden ja für Visual Studio abgespeichert. Wenn man das jetzt versucht in Code::Blocks einzufügen kommen immer sämmtliche Comliler-Fehler bezüglich des Unicodes.
z.B.
Code:
DXUT.cpp(704) : error C2664: 'StringCchCopyA' : cannot convert parameter 1 from 'WCHAR [260]' to 'char *'


Das wär nur ein Fehler von Hunderten wenn man das "EmptyProject" von den DirectX-Samples mt all seinen Headers in Code::Blocks einfügt.
Kann mir da jemand weiterhelfen ?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Maxim
Senior JLI'ler



Anmeldedatum: 28.03.2004
Beiträge: 249

Medaillen: Keine

BeitragVerfasst am: 21.03.2007, 19:41    Titel: Antworten mit Zitat

Das Beispiel ist in Unicode geschrieben. Du musst bei Blocks auf Unicode umstellen. K.A. wo bzw. ob das überhaupt geht, hab das nie verwendet.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
foreach
ehem. hanse



Anmeldedatum: 08.05.2004
Beiträge: 183

Medaillen: Keine

BeitragVerfasst am: 21.03.2007, 20:07    Titel: Antworten mit Zitat

afaik kann Code::Blocks Unicode. Du solltest auf jeden Fall die Nightly Snapshots verwenden und nicht den RC1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Otscho
Super JLI'ler


Alter: 35
Anmeldedatum: 31.08.2006
Beiträge: 338
Wohnort: Gummibären-Gasse
Medaillen: Keine

BeitragVerfasst am: 21.03.2007, 20:22    Titel: Antworten mit Zitat

hanse hat Folgendes geschrieben:
afaik kann Code::Blocks Unicode. Du solltest auf jeden Fall die Nightly Snapshots verwenden und nicht den RC1.


Ich glaube es gibt nur ein Wort das meinen derzeitigen Gemütszustand ausdrücken kann : Bahnhof

Ich hoffe schon, dass Code::Blocks Unicode unterstützt. Weiß das vielleicht jemand ?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Jonathan_Klein
Living Legend


Alter: 36
Anmeldedatum: 17.02.2003
Beiträge: 3433
Wohnort: Siegerland
Medaillen: Keine

BeitragVerfasst am: 21.03.2007, 20:56    Titel: Antworten mit Zitat

probier mal:
CPP:
#define UNICODE

Das sollte eigentlich auch gar keine Sache der IDE sein, sondern nur vom Compiler. Man kann ja bei Codeblocks verschiedene benutzen.
_________________
https://jonathank.de/games/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Otscho
Super JLI'ler


Alter: 35
Anmeldedatum: 31.08.2006
Beiträge: 338
Wohnort: Gummibären-Gasse
Medaillen: Keine

BeitragVerfasst am: 22.03.2007, 15:16    Titel: Antworten mit Zitat

Jonathan_Klein hat Folgendes geschrieben:
probier mal:
CPP:
#define UNICODE

Das sollte eigentlich auch gar keine Sache der IDE sein, sondern nur vom Compiler. Man kann ja bei Codeblocks verschiedene benutzen.

Genau bei dem Makro kam die Fehlermeldung. Ohne dem tritt die Fehlerkontrolle ein :
CPP:
#ifndef UNICODE
#error "DXUT requires a Unicode build. See the nearby comments for details"
//
// If you are using Microsoft Visual C++ .NET, under the General tab of the project
// properties change the Character Set to 'Use Unicode Character Set'.
//
// Windows XP and later are native Unicode so Unicode applications will perform better.
// For Windows 98 and Windows Me support, consider using the Microsoft Layer for Unicode (MSLU).
//
// To use MSLU, link against a set of libraries similar to this
//      /nod:kernel32.lib /nod:advapi32.lib /nod:user32.lib /nod:gdi32.lib /n
od:shell32.lib /nod:comdlg32.lib /nod:version.lib /nod:mpr.lib /nod:rasapi3
2.lib /nod:winmm.lib /nod:winspool.lib /nod:vfw32.lib /nod:secur32.lib /no
d:oleacc.lib /nod:oledlg.lib /nod:sensapi.lib UnicoWS.lib kernel32.lib
advapi32.lib user32.lib gdi32.lib shell32.lib comdlg32.lib version.lib mpr.lib
 rasapi32.lib winmm.lib winspool.lib vfw32.lib secur32.lib oleacc.lib
oledlg.lib sensapi.lib dxerr9.lib dxguid.lib d3dx9d.lib d3d9.lib comctl32.lib
// and put the unicows.dll (available for download from msdn.microsoft.com) in the exe's folder.
//
// For more details see the MSDN article titled:
// "MSLU: Develop Unicode Applications for Windows 9x Platforms with the Microsoft Layer for Unicode"
// at http://msdn.microsoft.com/msdnmag/issues/01/10/MSLU/default.aspx
//
#endif

Da muss es noch irgend etwas anderes geben .
Habt ihr eigentlich noch nie versucht die DirectX Sampels mit Code::Blocks zu compilieren ?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Jonathan_Klein
Living Legend


Alter: 36
Anmeldedatum: 17.02.2003
Beiträge: 3433
Wohnort: Siegerland
Medaillen: Keine

BeitragVerfasst am: 22.03.2007, 16:14    Titel: Antworten mit Zitat

Very Happy
SORRY!!!
Jetzt seh ich was das Problem ist. Du übergibts einen normalen String statt einen UNICODE string.
Schreib einfach:
CPP:
"blabla"//normaer string
L"balbla"//Unicode string (das L vor dem ersten " ist wichtig)
TEXT("blabla") //makro, dass entweder einen normalen oder einen unicodestring zurückgibt

Am besten benutzt du das TEXT Makro, dann kann man schnell switchen (wenn UNICODE definiert ist, erzeugt das einen Unicodestirng, sonst einen normalen)
_________________
https://jonathank.de/games/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Maxim
Senior JLI'ler



Anmeldedatum: 28.03.2004
Beiträge: 249

Medaillen: Keine

BeitragVerfasst am: 22.03.2007, 16:25    Titel: Antworten mit Zitat

@Jonathan_Klein bist du dir da ganz sicher? Wink
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
DirectXer
Dark JLI'ler



Anmeldedatum: 05.02.2005
Beiträge: 1201
Wohnort: Köln
Medaillen: Keine

BeitragVerfasst am: 22.03.2007, 16:51    Titel: Antworten mit Zitat

Jonathan_Klein hat Folgendes geschrieben:
Very Happy
SORRY!!!
Jetzt seh ich was das Problem ist. Du übergibts einen normalen String statt einen UNICODE string.

nicht wirklich^^ wenn eher andersrum, aber es liegt wie die anderen auch schon gesagt haben an UNICODE. Das Bsp. wurde von MS mit Unicode-Strings erstellt, während Code::Blocks noch ANSI Strings erwartet. Du müsstest das eigentlich in den Projekteinstellungen ändern können...

Gruß DXer
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Otscho
Super JLI'ler


Alter: 35
Anmeldedatum: 31.08.2006
Beiträge: 338
Wohnort: Gummibären-Gasse
Medaillen: Keine

BeitragVerfasst am: 22.03.2007, 16:57    Titel: Antworten mit Zitat

DirectXer hat Folgendes geschrieben:
Das Bsp. wurde von MS mit Unicode-Strings erstellt, während Code::Blocks noch ANSI Strings erwartet. Du müsstest das eigentlich in den Projekteinstellungen ändern können...

Gruß DXer


So ein Häkchen hab ich schon lange gesucht, aber keines gefunden. Hoffentlich gibt es das überhaupt. . .
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Maxim
Senior JLI'ler



Anmeldedatum: 28.03.2004
Beiträge: 249

Medaillen: Keine

BeitragVerfasst am: 22.03.2007, 17:46    Titel: Antworten mit Zitat

welches compiler benutzt du?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jonathan_Klein
Living Legend


Alter: 36
Anmeldedatum: 17.02.2003
Beiträge: 3433
Wohnort: Siegerland
Medaillen: Keine

BeitragVerfasst am: 22.03.2007, 18:50    Titel: Antworten mit Zitat

Maxim hat Folgendes geschrieben:
@Jonathan_Klein bist du dir da ganz sicher? Wink

Ach mann, jetzt bin ich verwirrt.
Aber müsste ein #define UNICODE nicht trotzdem helfen? Die Funktion hat am Ende ein 'A' dann müsste es doch auch eine mit 'W' geben.
vielleicht in der Datei das einfach mal definieren. Also quasi das gesamte Projekt in Unicode kompilieren.
_________________
https://jonathank.de/games/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Fallen
JLI MVP
JLI MVP


Alter: 40
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 22.03.2007, 19:00    Titel: Antworten mit Zitat

Code::Blocks gibts doch offiziell nur noch mit unicode und ohne aNSI support oder?

Zitat:
As of February 2006, the official default build for Code::Blocks is Unicode (see above). Although ANSI builds are technically possible, we discourage their use unless there is a good reason.
Support for ANSI builds is likely to be dropped after Version 1.0 is out.

There is hardly any good argument against using a Unicode build if your OS supports Unicode, even if you do not understand any other language than English, as a Unicode version guarantees that it will be able to work with whatever languages you may possibly encounter in the future -- at a very reasonable cost.

However, if you absolutely don't care about Unicode or if you are bound to use Windows 95, then you may want to build an ANSI version nevertheless.

_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Otscho
Super JLI'ler


Alter: 35
Anmeldedatum: 31.08.2006
Beiträge: 338
Wohnort: Gummibären-Gasse
Medaillen: Keine

BeitragVerfasst am: 22.03.2007, 19:20    Titel: Antworten mit Zitat

Ich benutze den von Christian empfohlenen Microsoft Visual C++ Toolkit 2003 Compiler.

@Fallen
Kann es sein, dass Code::Blocks v1.0 UNICODE noch nicht richtig unterstützt ?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Maxim
Senior JLI'ler



Anmeldedatum: 28.03.2004
Beiträge: 249

Medaillen: Keine

BeitragVerfasst am: 22.03.2007, 19:20    Titel: Antworten mit Zitat

es hat ja nichts mit IDE zu tun, sondern mit dem compiler.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT
Gehe zu Seite 1, 2  Weiter
Seite 1 von 2

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum