none
你好,有关服务器上,PHP通过COM调用EXCEL,需要开启远程桌面 RRS feed

  • 问题

  • 你好,

    我在Windows 2008服务器上装了Web Service, PHP和Office2010,

    用户会用浏览器调用服务器上的PHP,

    PHP通过COM调用服务器本地EXCEL,读写EXCEL文件。

    现在的问题是,PHP通过COM操作EXCEL时,

    需要同时开着一个Windows远程桌面,连到服务器上。

    如果没有Windows远程桌面开着,服务器上,PHP通过COM操作EXCEL就会失败。

    请问是什么原因?谢谢。

    这样很不方便,用户每次调用PHP操作EXCEL,都要开个远程桌面,放在那里。

    2017年11月21日 2:37

答案

全部回复

  • 你好,

    根据你的描述你这个问题应该是server automation,我建议你使用openxml来操作Excel。

    Regards,

    Emi Zhang


    如果以上回复对您有所帮助,建议您将其“标记为答复”.
    如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.

    2017年11月21日 7:26
    版主
  • 你好,Emi,

    因为生成的数据量有几十万行,我就是按XML语法,用PHP的文件函数生成EXCEL支持的XML文件。

    但是这个文件是没压缩的,体积有几百M到1G多。

    我需要用PHP通过COM调用EXCEL把XML转换成XLSM,体积会小很多。

    此外压缩后我还会在文件里插入VBA脚本,调用VBA在文件SHEET里插入图表。

    所以不能只用XML。

    有没有解决办法?谢谢。

    2017年11月21日 10:08
  • 你好,

    关于开发方面的问题真的很难帮你有一个很完美的回复,我建议你将你的问题发到微软的开发论坛。

    https://social.msdn.microsoft.com/Forums/en-US/home?category=officedev

    开发论坛有足够专业的人员可以帮助你解决开发类问题。

    但是由于仅有的开发论坛是一个英文论坛,请在发帖的时候使用英文。你可以从那里得到更专业的回复。


    Regards,

    Emi Zhang


    如果以上回复对您有所帮助,建议您将其“标记为答复”. 
    如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.


    2017年11月22日 6:42
    版主