使用Delphi开发的程序,经过测试,在win7、win10、win11上面都能运行,但是在客户的几台win8上不能运行,打开就会报错:System Error. Code:_111. 文件名太长。.
检查程序初始化进行的操作,读取配置文件、获取本机IP和Mac地址、获取计算机名、连接数据库、获取数据库设置的系统信息。分别把其中的单个步骤去掉,发现当去掉获取本机IP的逻辑后,程序能够正常运行。
查找资料,有个网友的回答是:这个是系统的网卡适配器太多,程序设置的读取缓存大小不足,才会出现的错误。
由于是客户的电脑,没办法删网卡适配器,所以只能把获取本机IP的功能删除了
参考百度知道问题回答http://zhidao.baidu.com/question/456388158599481805/answer/2855977092
Delphi 程序中可将 Size := 5120 改为 Size := 5120 * 4(感谢@BLueStorm 的评论),方法更快更好