проблема в том, что запись CSV-файла, который уже был открыт
среда Visual 6.0 C ++ (MFC)
переменная времени выполняет время
int time = 1 ;
BOOL blNewXls = FALSE;
_Application objApp;
_Workbook objBook;
Workbooks objBooks;
Worksheets objSheets;
_Worksheet objSheet;
Range objRange;
LPDISPATCH lpDisp;
BOOL TestView::SaveTrxGeneration1ExcelFile(CString destFileName, MYSQL_ROW row, int num_fields)
{
COleVariant VOptional((long)DISP_E_PARAMNOTFOUND, VT_ERROR);
if( !objApp.CreateDispatch("Excel.Application") ){AfxMessageBox("XLS ERROR"); return FALSE;}
objApp.SetVisible(TRUE);
objApp.SetUserControl(TRUE);
lpDisp = objApp.GetWorkbooks();
objBooks.AttachDispatch(lpDisp);
lpDisp = objBooks.Open(destFileName, VOptional, VOptional, VOptional,VOptional, VOptional, VOptional, VOptional, VOptional, VOptional, VOptional, VOptional, VOptional);
lpDisp2 = lpDisp;
objBook.AttachDispatch(lpDisp);
lpDisp = objBook.GetSheets();
objSheets.AttachDispatch(lpDisp);
if(time == 2)
{
if( blNewXls )
objBook.SaveAs(COleVariant(destFileName),VOptional, VOptional, VOptional, VOptional,VOptional, FALSE, VOptional, VOptional,VOptional, VOptional);
else
objBook.Save();
objBooks.Close();
objApp.Quit();
objBooks.ReleaseDispatch(); // Release the object-IDispatch binding.
objApp.ReleaseDispatch();
objBooks = NULL; // Destroy the object references.
objApp = NULL;
time = 1;
}
else
time = 2 ;
return TRUE;
}
ожидаемый результат: написать 2 раза
фактический результат: нарушение прав доступа при выполнении функции open ()