質問するログイン新規登録

回答編集履歴

1

文言

2021/05/11 02:41

投稿

int32_t
int32_t

スコア22019

answer CHANGED
@@ -19,4 +19,5 @@
19
19
 
20
20
  `pathsize` がポインタのサイズ(4 か 8 でしょう)になっています。そのため高い確率でバッファオーバーランしています。これも `wcslen(dirpath) + wcslen(win32fd.cFileName) + 2` のようにすべきです。
21
21
 
22
- Cで文字列操作するのは間違いやすいので、C++で`std::wstring`を活用するのをおすすめします。
22
+ * Cで文字列操作するのは間違いやすいので、C++で`std::wstring`を活用するのをおすすめします。
23
+ * 極端に長い・深いパスを扱わなくてもよいなら、ファイル名用バッファのサイズを `FILENAME_MAX` などでの固定長にして、この長さを超えそうなら処理しない、というのも手です。