delphi 在多线程中使用 CreateOleObject 导致失败
来源:互联网 发布:创维42e380s安装软件 编辑:程序博客网 时间:2024/05/27 00:40
原帖地址
http://bbs.csdn.net/topics/390481350
解决办法
procedure DisplayVideoInfo; var wmi, objs, obj : OleVariant; enum : IEnumVariant; value : Cardinal; begin try CoInitialize(nil);// 加上这两句 wmi := CreateOleObject('WbemScripting.SWbemLocator'); // ConnectServer无参表示连接本机 objs := wmi.ConnectServer() .ExecQuery('SELECT * FROM Win32_VideoController'); enum := IUnknown(objs._NewEnum) as IEnumVariant; enum.Reset; // 扫描每一块显卡 while enum.Next(1, obj, value) = S_OK do begin szString.Add('名称 :' + obj.Name); szString.Add('制造商 :' + obj.AdapterCompatibility); szString.Add('芯片类型 :' + obj.VideoProcessor); szString.Add('DAC类型 :' + obj.AdapterDACType); szString.Add('显存 :' + VarToStr(Round(obj.AdapterRAM / 1024 / 1024)) + 'MB'); szString.Add('颜色 :' + VarToStr(obj.CurrentBitsPerPixel) + '位'); szString.Add(Format('屏幕分辨率是:%d * %d', [Screen.Width, Screen.Height])); end; finally CoUninitialize();//加上这两句 end; end;
- delphi 在多线程中使用 CreateOleObject 导致失败
- 在Delphi中使用CreateOleObject方法对WORD文件进行操作
- 在Delphi中使用CreateOleObject方法对WORD文件进行操作
- 在c++builder中使用createoleobject函数时?
- delphi中通过CreateOleObject操控Word
- delphi中关于使用CreateOleObject方法控制word的一些心得。将word放入到pannel中
- delphi 中CreateOleObject函数产生的对象的释放问题
- Delphi中使用多线程
- 【问题汇总】在C/C++中使用Android Log导致编译失败的问题
- 在Delphi中使用DLL
- 在Delphi中使用DirectX
- 在Delphi中使用JSon
- 在Delphi中使用事务
- Delphi中使用TThread类实现多线程
- 在iOS10中使用stringWithUTF8String时字符串部分显示错误,转换失败导致string为空,程序崩溃
- win7 + delphi 7 + Excel2007 不支持CreateOLEObject('Excel.Application') 解决方案
- delphi中多线程排序
- delphi 2010多线程使用
- 职业生涯规划的一点想法
- C#正则表达式查找匹配循环替换内容
- IOS开发之NSDictionary里setValue:forKey与setObject:forKey、objectForKey与valueForKey的差异
- 网站搜藏
- 备份数据库 oracle
- delphi 在多线程中使用 CreateOleObject 导致失败
- Null值的处理、逻辑操作和函数嵌套
- javascript---字符串操作方法slice,substr,substring区别
- 减少postgresql wal日志配置
- symbol dyld_stub_binding_helper not found linker command failed with exit code 1 (use -v to see invo
- 从C文件到可执行elf文件
- 在VS2010中开发ActiveX控件设置测试容器的方式
- 哈佛图书馆的二十条训言:
- oracle10g的数据库连接更改