2

C で記述されたアプリケーションを Linux から Windows に移植しようとしています。

現時点では、不足しているposix機能などの「難しい」部分の修正が完了しています。

アプリケーションは現在、Windows でコンパイル、リンク、および動作します (後で Windows サービス コードに置き換えられる fork() を除く)。

私が今抱えている唯一の問題は、MSYS シェル内ですべてが機能することです (これにより、UNIX パスがマップされます)。

~ が利用できないため、MSYS シェルの外では機能しません。

#ifdef 内で Windows ユーザーのホームを設定する最良の方法を探しています。

私はどこかについて読みまし%USERPROFILE%たが、それはうまくいかないようです

4

2 に答える 2

2

SHGetFolderLocation API を使用する必要があると思います 。上記のドキュメントの場所から開始すると、必要なものがすべて揃っているはずです。これは、どの Windows バージョンでも機能するはずです。

于 2011-02-18T10:30:34.230 に答える
2

SHGetKnownFolderPath(Vista+) またはSHGetFolderPathWindows のバージョンに応じて使用します。

于 2011-02-18T10:37:58.807 に答える