各位,帮忙看看错误在哪里?(100分)

J

joyzw

Unregistered / Unconfirmed
GUEST, unregistred user!
[8D]
麻烦帮忙看看我的这段程序,为什么运行时总提示“ACCESS不能打开这个数据库,因为它已丢失或以被其它用户以独占方式打开。”?实际上,该数据库绝对存在,而且没有任何程序正在使用它。我把打开方式设为非独占方式,仍出同样的提示。
void CHumbleDlg::Onhumble()
{
COleVariant vTrue((short)TRUE),
vFlase((short)FALSE),
vOpt((long)DISP_E_PARAMNOTFOUND,VT_ERROR);
_Application accapp;
if(!accapp.CreateDispatch ("Access.Application",NULL))
{
AfxMessageBox("CreateDispatch failed",MB_OK|MB_SETFOREGROUND);
return;
}


_CurrentProject proj;
_CurrentData accdata;
accapp.OpenCurrentDatabase ("c:/mydo
cuments/db1.mdb",1);
proj=accapp.GetCurrentProject ();
AfxMessageBox(proj.GetName (),MB_OK|MB_SETFOREGROUND);

Forms frms;
_Form frm;
frms=proj.GetAllForms();

int i;
long j;
j=frms.GetCount();
for (i=0;i<j i++)
{
frm=frms.GetItem((COleVariant)(short)i);
AfxMessageBox(frm.GetName (),MB_OK|MB_SETFOREGROUND);
}

}
 
试试将语句改为
accapp.OpenCurrentDatabase ("c://mydo
cuments//db1.mdb",1);
看看如何。
 
看看以前打开后,自动生成的一个临时文件还在不在??
如果在,就手动删掉它。
 
多人接受答案了。
 
顶部