Author: Tomas Rutkauskas How to use the Photoshop COM interface with Delphi Answer: 1 uses 2 ComObj, ActiveX, PhotoShopTypeLibrary_TLB; 3 4 var 5 PS: IPhotoShopApplication; 6 Unknown: IUnknown; 7 begin 8 Result := GetActiveObject(CLASS_PhotoshopApplication, nil, Unknown); 9 if (Result = MK_E_UNAVAILABLE) then 10 PS := CoPhotoshopApplication.Create 11 else 12 begin 13 { make sure no other error occurred } 14 OleCheck(Result); 15 OleCheck(Unknown.QueryInterface(IPhotoShopApplication, PS)); 16 end; 17 PS.Visible := True; 18 end;