|
楼主 |
发表于 2018-6-22 15:58
|
显示全部楼层
我的exe程序在打开Excel文件时,创建了et进程,当exe程序关闭时,该et进程也自动关闭了。
根据您给的建议,我测试了一下:
1、系统未打开任何excel文件
2、exe程序打开A文件,并隐藏操作,此时任务管理器中有一个et进程
3、系统打开B文件,系统界面显示出B文件内容(不要进行任何编辑操作),此时任务管理器中仍然只有一个et进程
4、exe程序关闭A文件(Close Workbook),此时任务管理器中仍然有一个et进程,B文件正常显示
5、关闭exe程序,B文件同时被关闭,此时任务管理中的et进程消失
winform.button.oncommand = function(id,event){
if ("关闭Excel文件" == winform.button.text) {
book.Windows(1).Visible = true; book.save(); book.close();
//if (0 == excel.Workbooks.Count) {
// excel.Quit(); excel = null; // 释放所有对excel对象的引用
//}
winform.button.text = "打开Excel文件";
return;
}
var file_path = fsys.dlg.open("Excel文件|*.xls;*xlsx|",,,winform.hwnd);
if (null == file_path) {
return;
}
excel = com.excel(true);
if (!excel) error ("Excel未正确安装!");
excel.Visible = false; // Excel窗口不可见
book = excel.WorkBooks.open(file_path); book.Windows(1).Visible = false;
var sheet = book.Worksheets(1);
sheet.Cells(1,1).Value2 = tostring(time(, "%Y%m%d%H%M%S"));
sheet.Range("A1").HorizontalAlignment = -4108/*_xlCenter*/; sheet.Columns(1).ColumnWidth = 48;
winform.button.text = "关闭Excel文件";
}
附件压缩文件是编译生成的程序,可以试下
|
|