Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

11

29.04.2007, 15:58

Wie oft muss man egtl noch sagen: Bleibt doch einfach Kompatibel zu Unicode UND Ansi, dann gibts auch keinen Stress beim Compilieren.
@D13_Dreinig

12

01.05.2007, 18:28

oder entscheidet euch konsequent für eins von beiden unter Windows braucht man kein ANSI Code unterstützung nur wenns Unabhängig sein soll!
Das Böse ist des Menschensbeste Kraft - Friedrich Nietzsche

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

13

01.05.2007, 18:40

Ich würde eher sagen man braucht keine Unicode Unterstützung. Nur wenn man international sein will! :P Ansi reicht voll aus falls es nicht um irgendwelche kryptischen Zeichen geht.

Hier nochmal der beidseitig kompatible Code:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <windows.h>
#include <sstream>
#include <string>

using namespace std;

#ifdef UNICODE
    #define cout wcout
#else
    #define cout cout
#endif

#define ARRAY_SIZE( x ) \
    ( sizeof( x ) / sizeof( 0[( x )] ) )

int main()
{   
    DWORD nSize; 

    TCHAR computer_name[255]; 
    nSize = ARRAY_SIZE( computer_name );
    GetComputerName( computer_name, &nSize ); 
    cout << TEXT( "Computer name: " ) << computer_name << endl; 

    TCHAR user_name[255]; 
    nSize = ARRAY_SIZE( user_name );
    GetUserName( user_name, &nSize ); 
    cout << TEXT( "User name: " ) << user_name << endl; 

    TCHAR windir_name[MAX_PATH]; 
    GetWindowsDirectory( windir_name, ARRAY_SIZE( windir_name ) ); 
    cout << TEXT( "Windows-Directory: " ) << windir_name << endl; 

    cout << endl;
    cin.get();
}
@D13_Dreinig

14

01.05.2007, 20:09

und wenn jemand Russisch mit kyrillischen Buchstaben schreiben will?
Das Böse ist des Menschensbeste Kraft - Friedrich Nietzsche

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

15

01.05.2007, 20:12

Zitat von »"Theprogrammer"«

und wenn jemand Russisch mit kyrillischen Buchstaben schreiben will?


Wieviel Programme hast du schon entwickelt die in russische oder kyrillische Schriftzeichen unterstützen müssen?

Außerdem hab ich diese Ausnahme ja oben genannt. Nur bin ich mir ziemlich sicher das dies bei 99% aller Hobbyanwendungen nicht eintrifft. Also reicht auch ANSI! :-P
@D13_Dreinig

16

01.05.2007, 20:37

Zitat

Außerdem hab ich diese Ausnahme ja oben genannt. Nur bin ich mir ziemlich sicher das dies bei 99% aller Hobbyanwendungen nicht eintrifft. Also reicht auch ANSI! :-P


Wieso sollte man. In einer durchschnittlichen Anwendungen macht das allerdhöchstens 2mb aus. Aber nur wenn man wirlich viele Strings hat und in 99% aller Hobbyanwendungen macht das keinen Unterschied, außerdem nervt es wenn man keine Ä,Ü,Ö und so schreiben kann!
Das Böse ist des Menschensbeste Kraft - Friedrich Nietzsche

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

17

01.05.2007, 20:41

Es geht, wie gesagt um die Aussage das Ansi unnötig sei. Solan Unicode den Ansi-Standard nicht zu 100% ersetzt hat ist dies aber nicht der Fall.
@D13_Dreinig

grek40

Alter Hase

Beiträge: 1 491

Wohnort: Dresden

  • Private Nachricht senden

18

01.05.2007, 21:27

Zitat von »"Theprogrammer"«


Wieso sollte man. In einer durchschnittlichen Anwendungen macht das allerdhöchstens 2mb aus. Aber nur wenn man wirlich viele Strings hat und in 99% aller Hobbyanwendungen macht das keinen Unterschied, außerdem nervt es wenn man keine Ä,Ü,Ö und so schreiben kann!


ÄÖÜ schriben kann man, nur muss man dafür entweder kryptische Zahlenfolgen in ein char konvertieren oder den Streams eine deutsche CodePage einstellen.

19

12.05.2012, 02:16

Erstmal ein Hallo an Alle, Ich bin Neu hier und auch Neuling was C++ angeht.Wenn ich hier Falsch bin Bitte Verschieben.

Meine Frage: Wie kann ich in meinem Programm (http://lu-rlm-modding.bplaced.net/index.…ead&threadID=11),

In Dieser Pfad-Angabe: (System.IO.Directory.CreateDirectory("C:\Benutzer\[Benutzername]\Dokumente\My Games\Map1")
bzw wenn ich (C:\Users\[Benutzername]\Documents....) angebe stürtzt es ab da es laut Fehlermeldung Schreibgeschützt sei.

Wie kann ich nu den Benutzernahmen auslesen lassen, das er im Dokumenten Ordner(Win 7) einen Ordner Anlegen kann.

Da dieses Programm Für Alle Gamer der Landwirdschafts-Simulators zur Verfügung stehen soll,kann ich meinen ja nicht angeben!

Wer mir Helfen kann,oder mich dabei unterstützen möchte,bitte Melden.

MFG teiger

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

20

12.05.2012, 07:58

Ich würde da an Deiner Stelle auch lieber das verwenden:
http://technet.microsoft.com/en-us/libra…28WS.10%29.aspx -> CSIDL_MYDOCUMENTS

Alles andere sind nämlich Pfadangaben, die von Dir in's Blaue geraten wären.

Edit:
Arbeitest Du mit C++/CLI? Denn Dein Namespace sieht eher nach .Net aus, das wäre wieder was ganz anderes, nämlich das hier:
String PersonalFolder = Environment.GetFolderPath(Environment.SpecialFolder.Personal);


PS:
Google ist wirklich eine sinnvolle Quelle!
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

Werbeanzeige