Firefox автоматически удаляет xpi из папки «Профили» при загрузке

Я создал надстройку для Firefox.

Теперь, когда я помещаю его в текущую папку «Профили» вручную и загружаю браузер, он предлагает установить. Но когда я копирую файл .xpi в текущую папку Profiles с помощью исполняемого файла VC++, а затем перезагружаю браузер, он автоматически удаляет файл .xpi.

Пожалуйста, укажите, где это происходит не так. Я считаю, что копирование через исполняемый файл VC++ вызывает некоторые проблемы.

Вот код для того же:

FILE* pnReadFile = fopen(spnDirPtr->d_name, "r");

if (pnReadFile)
{
    char strDestFileName[MAX] = { 0 };                                  
    sprintf(strDestFileName, "%s\%s", arDestPath, xpi);

    FILE* pnWriteFile = fopen(strDestFileName, "w");    /*File Pointer to write in file*/

    if (pnWriteFile)
    {
        char buffer[MAX] = { 0 };    /*Buffer to store files content*/

        while (fgets(buffer, MAX, pnReadFile))
        {
            fputs(buffer, pnWriteFile);
        }
        fclose(pnWriteFile);
    }
    else
    {
        printf("\n Unable to open file %s", strDestFileName);
    }
    fclose(pnReadFile);
}

person zeetit    schedule 13.07.2015    source источник


Ответы (1)


я смог понять то же самое. Методы файлового ввода-вывода не полностью копировали xpi, из-за чего xpi был поврежден и, таким образом, автоматически удалялся при загрузке Firefox. Я использовал команду копирования system() и смог успешно выполнить то же самое.

person zeetit    schedule 13.07.2015
comment
Спасибо за этот обмен знаниями! - person Noitidart; 14.07.2015