delphi 读写文件属性

uses comobj,activex;
const
  IID_IPropertySetStorage:TGUID = '{0000013A-0000-0000-C000-000000000046}';

  FMTID_SummaryInformation:TGUID='{F29F85E0-4FF9-1068-AB91-08002B27B3D9}';


function StgOpenStorageEx( pwcsName: POleStr; grfMode: dword;
  stgfmt: DWORD; grfAttrs: DWORD; pStgOptions: STGOPTIONS; reserved2: Pointer;
  riid: PGUID; out ppObjectOpen: IPropertySetStorage): HResult; stdcall;external 'ole32.dll';

var
  pPropSetStg: IPropertySetStorage;
  pPropStg:IPropertyStorage;
  propspec:TPropSpec;
  propWrite:TPropVariant;


StgOpenStorageEx(PWChar('文件名'),STGM_DIRECT or STGM_SHARE_EXCLUSIVE or STGM_READWRITE,STGFMT_ANY, 0,nil,nil ,@IID_IPropertySetStorage, pPropSetStg);
//写入
pPropSetStg.Create( FMTID_SummaryInformation, FMTID_SummaryInformation,0,STGM_CREATE or STGM_READWRITE or STGM_SHARE_EXCLUSIVE,pPropStg);
propWrite.vt:= VT_LPWSTR;
propWrite.pwszVal:= pwchar('写入的数据');
pPropStg.WriteMultiple( 1, @propspec,@propWrite, PID_FIRST_USABLE );
//读出
pPropSetStg.Open( FMTID_SummaryInformation,STGM_READ or STGM_SHARE_EXCLUSIVE,pPropStg );
pPropStg.ReadMultiple( 1, @propspec, @propWrite );

转载于:https://my.oschina.net/jingshishengxu/blog/504975

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值