在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
以前是写在delphi里做了个com控件给asp.net,asp调用的。没有问题。 同样 以下code在winform下成功: string SubFile=@"D:\我的程序\Delphi\Excel2.xls"; string MainFile=@"D:\我的程序\Delphi\Excel.xls"; Excel.Application ExcelMainFileApp,ExcelSubFileApp; Excel._Workbook ExcelMainFileWorkbook,ExcelSubFileWorkbook; Excel._Worksheet ExcelMainFileWorksheet,ExcelSubFileWorksheet; try { ExcelMainFileApp = new Excel.Application(); ExcelMainFileWorkbook=ExcelMainFileApp.Workbooks.Open(MainFile,Type.Missing, Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missin g,Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Miss ing,Type.Missing); ExcelMainFileWorksheet=(Excel._Worksheet)ExcelMainFileWorkbook.ActiveSheet; string name=ExcelMainFileWorksheet.Name; ExcelMainFileWorksheet.Cells.Copy(Type.Missing); ExcelSubFileApp = new Excel.Application(); ExcelSubFileWorkbook=ExcelSubFileApp.Workbooks.Open(SubFile,Type.Missing,Typ e.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing,T ype.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing ,Type.Missing); ExcelSubFileWorksheet=(Excel._Worksheet)ExcelSubFileWorkbook.Sheets.Add(Exce lSubFileWorkbook.Sheets[ExcelSubFileWorkbook.Sheets.Count],Type.Missing,Type .Missing,Type.Missing); ExcelSubFileWorksheet.Paste(Type.Missing,Type.Missing); foreach (Excel.Workbook book in ExcelSubFileApp.Workbooks) { book.Save(); } ExcelMainFileApp.Workbooks.Close(); ExcelSubFileApp.Workbooks.Close(); ExcelMainFileApp.Quit(); ExcelSubFileApp.Quit(); } catch( Exception theException ) { } finally { } 今天想迁移到asp.net,不用delphi写的com ,code的winform一样。同时在 DCOMCNFG.EXE里设置excel的权限。 从 new Excel.Application(); //这里没有卡壳证明dcom权限设的对的。 到 ExcelMainFileWorksheet.Cells.Copy(Type.Missing);//这里能COPY到剪切板了。 全部OK。但是在 ExcelSubFileWorksheet.Paste(Type.Missing,Type.Missing); //从剪切板paste回来 时有问题了。 时出现HRESULT 中的异常:0x800A03EC 郁闷。 另外在winform下可不可以清空剪切板?不后我上面那段话,老是关excel时问要不要清 剪切板,当然退出后excel进程能自已关掉已经很开心了。:) 以前要手工杀进程的。 |
请发表评论