del*_*les -8 windows delphi winapi delphi-2007
简单问题:如何使用Delphi 2007以可靠的方式检测Windows版本?有没有办法在没有API的情况下这样做,即只检查系统目录中的某些文件夹或文件?
提前致谢 !
如果不调用Windows API函数,则无法检查文件或注册表值!
在不调用任何API的情况下检查版本的唯一方法是从PEB读取,但大多数字段都没有文档,理论上可以从版本更改为版本.它也受兼容性垫片的影响.我不建议你这样做,但如果你坚持,那么这段代码可能是一个很好的起点,只需阅读OSMajorVersion和OSMinorVersion成员(Teb来自GetTeb和Peb := Teb.Peb来自Teb).
Microsoft建议您检查是否存在所需功能,而不是检查版本.检查版本的推荐方法是使用VerifyVersionInfo但GetVersionEx如果您需要版本号用于显示目的,仍可继续使用已弃用的方法.这两个函数都需要清单才能在Windows 8.1和10上获得正确的版本.
| 归档时间: |
|
| 查看次数: |
549 次 |
| 最近记录: |