Moin,
ich war grade dabei einen Pfad zu erstellen, indem ich zwei Teile verbinde.
Jetzt war die Frage, ob ich auf WinAPI zurückgreifen und
Beim 1. müsste ich halt sowas machen:
Ist jetzt aus dem Kopf, müsste jedoch so gehen, da
Außerdem muss ich so nicht direkt mit irgendwelchen Char-Arrays und Pointern arbeiten, die ich wieder freigeben muss usw., sondern lasse das intern regeln.
Jetzt die Fragen:
Ach ja, Boost verwende ich btw nicht. Würde mich interessieren.
Grüße
ich war grade dabei einen Pfad zu erstellen, indem ich zwei Teile verbinde.
Jetzt war die Frage, ob ich auf WinAPI zurückgreifen und
PathCombineW
nutzen sollte oder die Strings so zu verbinden.Beim 1. müsste ich halt sowas machen:
C-Quellcode
- #include "main.h"
- #include <iostream>
- #include "windows.h"
- // etc.
- using namespace std;
- class main
- {
- INT WINAPI WinMain(HINSTANCE hInstance, HINSTANCE, PSTR, INT iCmdShow) {
- wstring res_path;
- wstring path_part1 = L"C:\\Users\\Test";
- wstring path_part2 = L"file.txt";
- PathCombineW(res_path.c_str(), path_part1.c_str(), path_part2.c_str());
- if (res_path == NULL)
- {
- // Check why.
- }
- // CreateWindowEx, ShowWindow, WndProc for MessageLoop etc.
- }
- }
Ist jetzt aus dem Kopf, müsste jedoch so gehen, da
PathCombineW
ja LPCWSTR
annimmt, was ja wiederrum ein Typedef für const wchar_t*
ist, was wiederrum mit wstring
benutzt werden kann, da dies ja 'nen Typedef für basic_string<wchar_t>
ist.Außerdem muss ich so nicht direkt mit irgendwelchen Char-Arrays und Pointern arbeiten, die ich wieder freigeben muss usw., sondern lasse das intern regeln.
Jetzt die Fragen:
- Macht es hier Sinn die Methode zu verwenden oder sollte man hier auch lieber auf WinAPI verzichten? Ich denke, das sollte man, wo es geht, aber bin jetzt auch nicht sicher. Oder sollte ich hier doch direkt die aneinanderfügen, also manuell oder mit einem
sstream
evtl.? Problem ist halt, dass ein Pfad nicht hardcoded ist, sondern von_dupenv_s
kommt, daher. (Natürlich muss das noch konvertiert werden, da das ja nur 'nenchar*
als Puffer benutzt. - Auf MSDN steht, dass Directory, also der eine Parameter "C:", "D:"... "Z:" sein muss. Ich frage mich nun, wenn das so ist, was macht die Methode dann für einen Sinn? Oder geht das auch im Sinne meines Beispiels oben? Habe grade keine IDE.
Ach ja, Boost verwende ich btw nicht. Würde mich interessieren.
Grüße
#define for for(int z=0;z<2;++z)for // Have fun!
Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose!
Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da
Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose!
Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da