Я пишу приложение, которое отслеживает добавление файлов в определенном каталоге и отправляет эти файлы в определенном порядке. Это работает отлично. Но я столкнулся с интересной проблемой - я написал этот проект для Windows XP, используя VS 2008, и мне нужно объединить мое решение с другим, расположенным на ПК с Windows 7 и VS 2010, но код, который я написал, просто не работает так же! А. к. а. Я рассматривал TCHAR * как char *, насколько я знаю, это не должно вызывать проблем, но на VS 2010 преобразование не происходит. Код размещен ниже.
int ftp_send(char* filename, TCHAR* path) {
FILE *fPtr,*fp;
char s[128],*loc=NULL;
char command1[1024];
char log[1024];
char systemcom[2048];
char name1[1024];
int success = 0;
sprintf_s(command1, 1024, "open 127.0.0.1\nbear\nitriv100\nbinary\nprompt\nmput %s\\rev%s*\n\nbye\n", path, filename);
sprintf_s(log, 1024, "%s\\log.txt", path);
sprintf_s(name1, 1024, "%s\\ftp.txt", path);
sprintf_s(systemcom, 2048, "ftp -s:%s -d | find\"226\" > %s", name1, log);
//printf("%s\n%s\n%s\n", systemcom, name1, log);
fopen_s(&fp, name1, "w+");
fprintf(fp,command1);
fclose(fp);
while(!success){
system(systemcom);
fopen_s(&fPtr, log, "r");
if (!fPtr) {
printf("open file failure...\n");
return -1;
}
while (fgets(s, 128, fPtr) != NULL) {
loc = strstr(s, "226");
if(loc != NULL) {
printf("File rev%s completely!!\n",filename);
success = 1;
return 0;
}
}
fclose(fPtr);
}
return -1;
}
Заранее спасибо.
Константин