zxy11 发表于 2023-3-16 10:46:41

Windows服务,Timer中new FpSpread()报错,报错内容:值“0”不是Interval的有效值

我这边创建了一个Windows服务,在服务中使用Timer定时导出Spread为Excel。在Timer定时任务执行的到new FarPoint.Win.Spread.FpSpread()的时候发生报错。报错内容是:值“0”不是 Interval 的有效值。Interval 必须大于0。麻烦各位大神帮忙解决,在线等,急!!!

Richard.Ma 发表于 2023-3-16 14:53:53

印象中Spread是没有任何Interval 属性的。

反而你用的Timer是有Interval 属性的,你是设置了这个Interval 为0导致的报错吧

zxy11 发表于 2023-3-16 18:25:55

Richard.Ma 发表于 2023-3-16 14:53
印象中Spread是没有任何Interval 属性的。

反而你用的Timer是有Interval 属性的,你是设置了这个Interva ...

我在Timer的Interval中写死的6000毫秒。定时任务也是每隔一分钟执行,我在使用附加进程对Windows服务进行调试的时候发现,当语句运行到new FarPoint.Win.Spread.FpSpread()的时候就报错,报错内容就是上面写的那个

Richard.Ma 发表于 2023-3-16 18:28:42

好的,可以上传一个简单的能重现问题的demo,我帮你看看原因,需要注意的是,这个不支持跨线程调用

heyym 发表于 2023-7-7 15:43:28

我也遇到这个问题了 待解决:handshake

Richard.Ma 发表于 2023-7-7 18:21:12

请重新发一个帖子上传一个能重现你的问题的demo项目,我们来协助调查

heyym 发表于 2023-7-14 18:01:51

win10 电脑不行 win7和win11没问题

Richard.Ma 发表于 2023-7-14 19:18:42

那可能是兼容性问题,如果用的是老版本的spread,可以先尝试升级看看。

zxy11 发表于 2023-10-11 16:39:19

两台电脑Spread版本是一样的,都是11.45.20183.0
电脑系统的版本不一样
电脑A系统版本为:Windows 10 企业版 LTSC    版本号:21H2操作系统内部版本:19044.1806电脑A报错
电脑B系统版本为:Windows 10 企业版 LTSC    版本号:1809操作系统内部版本:17763.2565电脑B不报错
有没有可能是因为系统的原因导致的

Richard.Ma 发表于 2023-10-11 17:59:15

这个问题是Timer的一个常见文件,不确定是否和windows版本有关系。

https://www.google.com.hk/search?q=The+value+%270%27+is+not+a+valid+value+for+Interval&newwindow=1&sca_esv=572509350&source=hp&ei=0XAmZd6rGNfs1e8Pn4Kv6Aw&iflsig=AO6bgOgAAAAAZSZ-4Xib7i54IvPAdcmnP_k5X9XHlPf8

如果没法解决,有个建议可以尝试使用System.Threading.Timer替代看看
页: [1]
查看完整版本: Windows服务,Timer中new FpSpread()报错,报错内容:值“0”不是Interval的有效值