社区
进程/线程/DLL
帖子详情
关于EXCEL进程问题!
husband_ghy
2008-05-11 03:51:03
小弟编写的程序打开两个EXCEL后,把两个关闭了!但是进程里面还有一个EXCEL仍然还存在,要手动关闭。请各位大侠出点主意啊!!!!
...全文
107
6
打赏
收藏
关于EXCEL进程问题!
小弟编写的程序打开两个EXCEL后,把两个关闭了!但是进程里面还有一个EXCEL仍然还存在,要手动关闭。请各位大侠出点主意啊!!!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
husband_ghy
2008-05-16
打赏
举报
回复
zgl7903会提示出错:error C2039: 'ReleaseDispatch' : is not a member of '_com_ptr_t<class _com_IIID<struct EXCEL::Range,&struct __s_GUID _GUID_00020400_0000_0000_c000_000000000046> >'!貌似这个类里面没有定义这些函数!
zgl7903
2008-05-16
打赏
举报
回复
退出部分的操作顺序
Excel_App.Quit();
Excel_book.SetSaved(true);
Excel_books.Close();
Excel_range.ReleaseDispatch();
Excel_sheet.ReleaseDispatch();
Excel_sheets.ReleaseDispatch();
Excel_book.ReleaseDispatch();
Excel_books.ReleaseDispatch();
Excel_App.ReleaseDispatch();
buyong
2008-05-16
打赏
举报
回复
EXCEL类是哪里的?
husband_ghy
2008-05-16
打赏
举报
回复
自己 up一下!
请各位高手多出点主意啊~~~
husband_ghy
2008-05-13
打赏
举报
回复
不好意思,这两天地震啊!现在吧程序发上来请高手们指点一下:
void CHfreqListDlg::ProcessExcel(CString &strFileName)
{
//创建Excel对象
EXCEL::_ApplicationPtr pExcelApp = NULL;
EXCEL::WorkbooksPtr pWorkbooks = NULL;
EXCEL::_WorkbookPtr pWorkbook = NULL;
EXCEL::WorksheetsPtr pWorksheets = NULL;
EXCEL::_WorksheetPtr pWorksheet = NULL;
EXCEL::RangePtr pRange = NULL;
HRESULT hResult;
hResult = pExcelApp.CreateInstance("Excel.Application");//.10"); 不指定版本 wtq 06.02.23
if( FAILED( hResult ) )
{
AfxMessageBox("Excel:Can't create application,please check it.");
return;
}
pWorkbooks = pExcelApp->GetWorkbooks();
if( NULL == pWorkbooks )
{
AfxMessageBox("Excel:Get workbooks failed.");
pExcelApp.Release();
return;
}
//进度条显示
//生成数据结构的进度条显示
CCreateProcessDlg* pProgressDlg = new CCreateProcessDlg;
pProgressDlg->Create(IDD_DLG_CREATESTRUCT);
pProgressDlg->CenterWindow();
pProgressDlg->SetTitle("正在处理文件......");
pProgressDlg->ShowWindow(SW_SHOW);
//开始处理数据
UpdateData(true);
//缺省参数
try
{
VARIANT varDefaultOpt;
varDefaultOpt.vt = VT_EMPTY;
VARIANT varDefaultOpt2;
varDefaultOpt2.vt = VT_ERROR;
varDefaultOpt2.scode = DISP_E_PARAMNOTFOUND;
_bstr_t bstrFileName = _bstr_t( strFileName );
//打开已有xls
pWorkbook = pWorkbooks->Open( bstrFileName );
if( NULL == pWorkbook )
{
AfxMessageBox("Excel:Open document failed.");
goto lError;
}
pWorksheets = pWorkbook->GetWorksheets();
if( NULL == pWorksheets )
{
AfxMessageBox("Excel:Get worksheets failed.");
goto lError;
}
//打开使用频率高的无失效率器件信息列表模板
pWorksheet = pWorksheets->Item[(short)1];
if( NULL == pWorksheet )
{
AfxMessageBox("Excel:Get worksheet failed.");
goto lError;
}
int nTotal = m_ctrlHfreqList.GetItemCount();
//输出到Excel
UpdateData(TRUE);
CString strPos = _T("");
CString strVal = _T("");
int nStep = (int)(5000/(nTotal));
for (int i=0;i<nTotal;i++)
{
for (int k=0;k<4;k++)
{
switch(k)
{
case 0:
{
strPos.Format("A%d",i+2);
break;
}
case 1:
{
strPos.Format("B%d",i+2);
break;
}
case 2:
{
strPos.Format("C%d",i+2);
break;
}
case 3:
{
strPos.Format("D%d",i+2);
break;
}
default:{}
}
strVal = m_ctrlHfreqList.GetItemText(i,k);
SetCellInfo(pWorksheet,strPos,strVal);
}
pProgressDlg->m_ctrlProgress.SetPos(i*nStep);
}
pProgressDlg->m_ctrlProgress.SetPos(5000);
hResult = pWorkbook->Save();
if( FAILED( hResult ))
{
goto lError;
TRACE("Save failed.");
}
}
catch (...)
{
TRACE("\n *** Unhandled Errors *** \n");
}
lError:
if( NULL != pWorksheet )
{
pWorksheet.Release();
pWorksheet = NULL;
}
if( NULL != pWorksheets )
{
pWorksheets.Release();
pWorksheets = NULL;
}
if( NULL != pWorkbook )
{
pWorkbook->Close();
pWorkbook.Release();
pWorkbook = NULL;
}
if( NULL != pWorkbooks )
{
pWorkbooks.Release();
pWorkbooks = NULL;
}
if( NULL != pExcelApp )
{
pExcelApp.Release();
pExcelApp = NULL;
}
//删除进度条
delete pProgressDlg;
pProgressDlg = NULL;
}
an_bachelor
2008-05-11
打赏
举报
回复
你是如何關閉的代碼看看 也許你的代碼根據exe名字來判斷 而踫到第一個符合條件的exe執行完畢就返回了
2012,我的C#全能
Excel
操作(无需Office,不使用XML)
2012,我的C#全能
Excel
操作(无需Office,不使用XML) 有时候,
Excel
操作会成为我们程序员的痛处。 COM的方式处理?杀
进程
?需要安装Office? No,nononono!这些都不想了。 我只要OleDb就够用了。 读取内容产生DataSet? 没
问题
! 创建
Excel
文件? 没
问题
! 在
Excel
文件中创建Sheet? 没
问题
! 我要取出
Excel
文件中的所有表名? 没
问题
! 我要以索引来操作Sheet,不是名字行不? 没
问题
! 导出的数据太多,要分开多个Sheet放,行不? 没
问题
! 我要再扩展,可不可以? 代码都给你了,你说呢?
解决双击
excel
文件打开多个
excel
.exe
进程
的
问题
解决双击
excel
文件打开多个
excel
.exe
进程
的
问题
有些时候,双击两个
excel
文件,会打开多个
excel
进程
,不同
进程
之间不能复制粘贴公式,只能粘贴数值,很不方便。怎么样双击多个
excel
文件只打开一个
excel
进程
呢?1.使用快捷键组合“Win+R”调出运行命令框,键入 regedit.exe,回车,打开注册表编辑器。2.修改HKEY_CLASSES_ROOT\
Excel
.Sheet.1...
c#
EXCEL
关闭(关闭
EXCEL
进程
)
一直被一个
问题
困扰就是导出
excel
时如何关闭
excel
进程
,我使用过o
Excel
App.Quit(); 也用过GC回收,结果都不理想,后来发现可以kill
进程
,但是
问题
是kill
进程
时不好解决多人并发的使用,比如一个人在导表然后kill所以的
excel
但是如果同时又有人在导表那么这就把另外一个
excel
结束了,现在我们要办的 是如何kill当前这个
进程
,这里我们先看一下代码: oExc...
matlab
excel
进程
,Matlab使用xlsread, xlswrite函数导致
excel
进程
无法终止的
问题
系统版本:Win7 64位Matlab版本:R2015b
问题
描述:使用
excel
的操作函数,比如xlsread,xlswrite,导致
excel
进程
无法终止,任务管理器中仍残留
excel
进程
,打开
excel
文档,修改后不提示保存。
进程
显示automation -Embedding,应该是某个应用占用了这个进行,然后我并没有找到是哪个应用。解决方法:之前的老版本Matlab R2012a并没有出现此...
C#结束
Excel
进程
C#结束
Excel
进程
进程/线程/DLL
15,466
社区成员
49,169
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章