終於趕在軟件測試部前頭解決Access數據庫壓縮的問題。

   TCHAR   szDestSQL[100];  
  TCHAR   szSQL[100];  
    
 try
 { 
  ::CoInitialize(NULL);  
  sprintf(szSQL,"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Config.mdb;Jet OLEDB:DataBase Password=100100;");          
  IJetEnginePtr   jet(__uuidof(JetEngine));  
  sprintf(szDestSQL,"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=ConfigTemp.mdb;");  
  strcat(szDestSQL,"Jet OLEDB:Engine Type=5");  
  jet->CompactDatabase(szSQL,szDestSQL);  
  DeleteFile("Config.mdb");  
  rename("ConfigTemp.mdb","Config.mdb");  
  ::CoUninitialize();
 }
 catch(_com_error &e)
 {      
  ::MessageBox(NULL, (LPCTSTR)e.Description( ), "", MB_OK) ;
 }

這段代碼以前就有,但一直沒成功過,今天加了try,,,catch才發現,原來是密碼錯誤,以前沒有把Jet OLEDB:DataBase Password=100100

寫上,弄得苦惱了我很久。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章