• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Открытие файла

  • Автор темы godspeed
  • Дата начала
G

godspeed

будьте так любезны, взгляните на код.. дело в том, что в этом куске:

[codebox]int Shyfr(char* FileName)
{
FILE *src,*dest;
char *f;
f=new char[strlen(FileName)+1];
strcpy(f,FileName);
src=fopen(f,"r");
if (src==NULL)
{
printf("File %s not found.\n",FileName);
getch();
fclose(src);
return 1;
}
*RName='\0';
strcpy(RName,FileName);
char* x=strchr(RName,(int)'.');[/codebox]

файл FileName ни за что не хочет открываться.. его имя FileName сформировано в отдельной строке с выделенной памятью.. и во время всех предыдущих обращений к файлу окончание работы сопровождалось его корректным закрытием.... в чем может быть дело? ;)
 

Вложения

  • my_huff.cpp
    5,3 КБ · Просмотры: 481
E

European

Вот я только не могу понять зачем создавать новую переменную для пути файла. Открывайте fopen(FileName,"r") и все
 
G

godspeed

это конечно хорошо... но суть не изменилась никак.. все в том же месте.. все та же "непонятка"..=((
 
E

European

Падает у меня Ваш метод Traverse при вызове из GenerateCodes(). Разбираться почему нет желания. Если его закоментировать, то файл в Shyfr открывается нормально.
Посмотрите errno на предмет нахождения ошибки.
 
G

godspeed

извините, а вы не подскажите, как пользоваться errno? :huh:
 
D

Dimmuborgir

Бегло просмотрев код, заметил утечки памяти. Ни одного опреатора delete, к примеру здесь:

Код:
int Shyfr(char* FileName)
{
FILE *src,*dest;
char *f;
f=new char[strlen(FileName)+1];
......
 
D

Dimmuborgir

Код:
Codes[((int)this->character)-1]=new char[strlen(sh)+1];
очень меня настораживает эта строка...)
сразу скажу, запускать не пробовал. но чем то внутренним чувствую что далеко тут не все впорядке:
Код:
static string Codes[SIZE];
)
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!