public void Refresh() { if (_refs == null) { _refs = new ArrayList(); } else { _refs.Clear(); } Fusion.IInstallReferenceEnum refEnum; ComUtil.ComCheck(Fusion.CreateInstallReferenceEnum(out refEnum, _name._name, 0, IntPtr.Zero)); Fusion.IInstallReferenceItem item; while (ComUtil.SUCCEEDED(refEnum.GetNextInstallReferenceItem(out item, 0, IntPtr.Zero)) && item != null) { IntPtr pRef; ComUtil.ComCheck(item.GetReference(out pRef, 0, IntPtr.Zero)); Fusion.FUSION_INSTALL_REFERENCE objRef = (Fusion.FUSION_INSTALL_REFERENCE) Marshal.PtrToStructure(pRef, typeof(Fusion.FUSION_INSTALL_REFERENCE)); _refs.Add(new InstallReference(objRef)); } }
public InstallReference(Fusion.FUSION_INSTALL_REFERENCE refItem) { _scheme = refItem.guidScheme; _identifier = refItem.szIdentifier; _data = refItem.szNonCannonicalData; }