以前的一个跑在windows xp下的POS应用程序,执行过程中需要生成一个excel文件。该文件的生成在c盘的根目录下。

自从系统升到windows2008+windows 7下后,该程序无法运行。原因是域用户不能在c盘的根目录下创建文件。即使是local admin用户,也只能创建一个folder。

解决方法:修改保存文件的参数。不要再文件名前加“c:\”。

原来语句: excelSheet.SaveAs("c:\"+excelFileName);

替换语句: excelSheet.SaveAs(excelFileName);

该文件将被保存到当前logon 用户的Dcuments目录下。绝对路径;C:\Users\userA\Documents\ (userA为logon username)

 

另外一个问题是,用户的机子在运行该程序是,提示如下错误:(该用户的机子已经安装了office 2003 pro)

could not load file or assemble "Microsoft.office.interop.excel.version=11.0.0.0. culture =..................

原因:需要安装office 2003 update: redistributable primary interop assembiles. download url is:  www.microsoft.com/en-us/download/details.aspx?id=20923