none
有关Resources.resx的使用问题 RRS feed

  • 问题

  • 程序需要根据WORD模板文件(.dot)生成DOC文件,把dot模板文件单独存放,然后把文件物理路径传给新建doc的方法则可以完成任务。简要代码如下:

    template_file=Application.StartupPath + @"\Template_A.dot";
    
    doc = word_app.Documents.Add(ref template_file, ref Nothing, ref Nothing, ref Nothing);
    
    

    但如果把模板文件添加进Resources.resx再引用,则报错,错误信息为“类型不匹配。 (异常来自 HRESULT:0x80020005 (DISP_E_TYPEMISMATCH))”

    template_file = (object)(TemplateLib.Properties.Resources.Template_A);
    
    doc = word_app.Documents.Add(ref template_file, ref Nothing, ref Nothing, ref Nothing);
    
    

    请问有何办法解决?谢谢。

    2010年10月26日 2:05

答案

  • 查了MSDN,果然只接受路径。杯具,看来得先创建文件到临时目录,用完后再删掉了。
    • 已标记为答案 2010年10月26日 3:05
    2010年10月26日 2:59

全部回复

  • 难道word_app.Documents.Add()的第一个参数其实只接受字符串型的?

    2010年10月26日 2:17
  • dear
    template_file看起来是接收字串资料型别,您传object当然会报错,您可先确认template_file是接收啥型别
    秘訣無它,唯勤而已
    2010年10月26日 2:38
  • 查了MSDN,果然只接受路径。杯具,看来得先创建文件到临时目录,用完后再删掉了。
    • 已标记为答案 2010年10月26日 3:05
    2010年10月26日 2:59