できたといっているが一応。
#include <iostream>
#include <string>
#include <vector>
#include <windows.h>
using namespace std;
int main(int argc, char *argv[]) {
  int i = 0;
  WIN32_FIND_DATA FindData;
  vector<string> FileName; //本当はvector<basic_string<TCHAR> > FileName;の方が良い。
  HANDLE Handle = FindFirstFile(argv[1], &FindData);
  if (Handle == INVALID_HANDLE_VALUE) {
    cout << "can't" << endl;
  } else {
    do {
      FileName.push_back(FindData.cFileName);
      cout << Filename[i] << endl;
      i++;
      cout << i << FindData.cFileName << endl;
    } while (FindNextFile(Handle, &FindData));
  }
  return 0;
}