S>Разумеется, нельзя присвоить массиву char значение типа string. Нужно либо объявить strPath как string, либо воспользоваться методом c_str(), который возвращает как раз указатель на char:
S>strPath = std::string(argv[2]).c_str();
что же вы такое пишете, любезный.
std::string::c_str()
всегда возвращала const char*