// CodeGear C++Builder // Copyright (c) 1995, 2025 by Embarcadero Technologies, Inc. // All rights reserved // (DO NOT EDIT: machine generated header) 'iexWPD.pas' rev: 37.00 (Windows) #ifndef iexWPDHPP #define iexWPDHPP #pragma delphiheader begin #pragma option push #if defined(__BORLANDC__) && !defined(__clang__) #pragma option -w- // All warnings off #pragma option -Vx // Zero-length empty class member #endif #pragma pack(push,8) #include #include #include #include #include #include //-- user supplied ----------------------------------------------------------- namespace Iexwpd { //-- forward type declarations ----------------------------------------------- struct TIEPortableDevice; struct TIEWPDObject; struct TIEWPDObjectAdvancedProps; class DELPHICLASS TIEPortableDevices; //-- type declarations ------------------------------------------------------- typedef void __fastcall (__closure *TIEPortableDeviceLogEvent)(System::TObject* Sender, const System::UnicodeString sMsg); enum DECLSPEC_DENUM TWPDObjectFormat : unsigned char { _WPD_OBJECT_FORMAT_3GP, _WPD_OBJECT_FORMAT_AAC, _WPD_OBJECT_FORMAT_ABSTRACT_CONTACT, _WPD_OBJECT_FORMAT_ABSTRACT_CONTACT_GROUP, _WPD_OBJECT_FORMAT_ABSTRACT_MEDIA_CAST, _WPD_OBJECT_FORMAT_AIFF, _WPD_OBJECT_FORMAT_ALL, _WPD_OBJECT_FORMAT_ASF, _WPD_OBJECT_FORMAT_ASXPLAYLIST, _WPD_OBJECT_FORMAT_AUDIBLE, _WPD_OBJECT_FORMAT_AVI, _WPD_OBJECT_FORMAT_BMP, _WPD_OBJECT_FORMAT_CIFF, _WPD_OBJECT_FORMAT_DPOF, _WPD_OBJECT_FORMAT_EXECUTABLE, _WPD_OBJECT_FORMAT_EXIF, _WPD_OBJECT_FORMAT_FLAC, _WPD_OBJECT_FORMAT_FLASHPIX, _WPD_OBJECT_FORMAT_GIF, _WPD_OBJECT_FORMAT_HTML, _WPD_OBJECT_FORMAT_ICALENDAR, _WPD_OBJECT_FORMAT_ICON, _WPD_OBJECT_FORMAT_JFIF, _WPD_OBJECT_FORMAT_JP2, _WPD_OBJECT_FORMAT_JPX, _WPD_OBJECT_FORMAT_M3UPLAYLIST, _WPD_OBJECT_FORMAT_M4A, _WPD_OBJECT_FORMAT_MHT_COMPILED_HTML, _WPD_OBJECT_FORMAT_MICROSOFT_EXCEL, _WPD_OBJECT_FORMAT_MICROSOFT_POWERPOINT, _WPD_OBJECT_FORMAT_MICROSOFT_WFC, _WPD_OBJECT_FORMAT_MICROSOFT_WORD, _WPD_OBJECT_FORMAT_MP2, _WPD_OBJECT_FORMAT_MP3, _WPD_OBJECT_FORMAT_MP4, _WPD_OBJECT_FORMAT_MPEG, _WPD_OBJECT_FORMAT_MPLPLAYLIST, _WPD_OBJECT_FORMAT_NETWORK_ASSOCIATION, _WPD_OBJECT_FORMAT_OGG, _WPD_OBJECT_FORMAT_PCD, _WPD_OBJECT_FORMAT_PICT, _WPD_OBJECT_FORMAT_PLSPLAYLIST, _WPD_OBJECT_FORMAT_PNG, _WPD_OBJECT_FORMAT_PROPERTIES_ONLY, _WPD_OBJECT_FORMAT_SCRIPT, _WPD_OBJECT_FORMAT_TEXT, _WPD_OBJECT_FORMAT_TIFF, _WPD_OBJECT_FORMAT_TIFFEP, _WPD_OBJECT_FORMAT_TIFFIT, _WPD_OBJECT_FORMAT_UNSPECIFIED, _WPD_OBJECT_FORMAT_VCALENDAR1, _WPD_OBJECT_FORMAT_VCARD2, _WPD_OBJECT_FORMAT_VCARD3, _WPD_OBJECT_FORMAT_WAVE, _WPD_OBJECT_FORMAT_WINDOWSIMAGEFORMAT, _WPD_OBJECT_FORMAT_WMA, _WPD_OBJECT_FORMAT_WMV, _WPD_OBJECT_FORMAT_WPLPLAYLIST, _WPD_OBJECT_FORMAT_X509V3CERTIFICATE, _WPD_OBJECT_FORMAT_XML, _WPD_OBJECT_FORMAT_UNKNOWN }; enum DECLSPEC_DENUM TWPDContentType : unsigned char { _WPD_CONTENT_TYPE_ALL, _WPD_CONTENT_TYPE_APPOINTMENT, _WPD_CONTENT_TYPE_AUDIO, _WPD_CONTENT_TYPE_AUDIO_ALBUM, _WPD_CONTENT_TYPE_CALENDAR, _WPD_CONTENT_TYPE_CERTIFICATE, _WPD_CONTENT_TYPE_CONTACT, _WPD_CONTENT_TYPE_CONTACT_GROUP, _WPD_CONTENT_TYPE_DOCUMENT, _WPD_CONTENT_TYPE_EMAIL, _WPD_CONTENT_TYPE_FUNCTIONAL_OBJECT, _WPD_CONTENT_TYPE_GENERIC_FILE, _WPD_CONTENT_TYPE_GENERIC_MESSAGE, _WPD_CONTENT_TYPE_IMAGE, _WPD_CONTENT_TYPE_IMAGE_ALBUM, _WPD_CONTENT_TYPE_MEDIA_CAST, _WPD_CONTENT_TYPE_MEMO, _WPD_CONTENT_TYPE_MIXED_CONTENT_ALBUM, _WPD_CONTENT_TYPE_NETWORK_ASSOCIATION, _WPD_CONTENT_TYPE_PLAYLIST, _WPD_CONTENT_TYPE_PROGRAM, _WPD_CONTENT_TYPE_SECTION, _WPD_CONTENT_TYPE_TASK, _WPD_CONTENT_TYPE_TELEVISION, _WPD_CONTENT_TYPE_UNSPECIFIED, _WPD_CONTENT_TYPE_VIDEO, _WPD_CONTENT_TYPE_VIDEO_ALBUM, _WPD_CONTENT_TYPE_WIRELESS_PROFILE, _WPD_CONTENT_TYPE_FOLDER, _WPD_CONTENT_TYPE_UNKNOWN }; enum DECLSPEC_DENUM TIEWPDObjectType : unsigned char { iewFile, iewFolder }; typedef System::Set TIEWPDObjectTypes; struct DECLSPEC_DRECORD TIEPortableDevice { public: System::WideString ID; System::WideString FriendlyName; System::WideString Description; System::WideString Manufacturer; bool IsDrive; }; typedef TIEPortableDevice *PIEPortableDevice; struct DECLSPEC_DRECORD TIEWPDObject { public: System::WideString ID; System::WideString FriendlyName; System::WideString Filename; System::WideString Path; TIEWPDObjectType ObjectType; }; typedef TIEWPDObject *PIEWPDObject; struct DECLSPEC_DRECORD TIEWPDObjectAdvancedProps { public: System::WideString ObjectID; System::WideString ParentID; System::WideString FriendlyName; System::WideString Filename; System::WideString PersistentUniqueID; TWPDObjectFormat ObjectFormat; TWPDContentType ContentType; bool IsHidden; bool IsSystem; System::TDateTime DateCreated; System::TDateTime DateModified; unsigned __int64 SizeBytes; }; class PASCALIMPLEMENTATION TIEPortableDevices : public System::TObject { typedef System::TObject inherited; private: System::Classes::TList* fDevices; System::Classes::TList* fObjects; bool fDevicesInitialized; bool fObjectsInitialized; bool fSorted; TIEPortableDeviceLogEvent fOnLog; System::UnicodeString fLastError; System::WideString fActiveDeviceID; System::WideString fActiveFolderID; bool fHideEmptyDevices; void __fastcall Clear(); void __fastcall ClearObjectList(); bool __fastcall DeviceContainsObjects(const System::WideString sDeviceID); void __fastcall AddToLog(const System::UnicodeString sMsg); TIEPortableDevice __fastcall GetDevices(int Index); int __fastcall GetDeviceCount(); void __fastcall CheckDevicesInitialized(); TIEWPDObject __fastcall GetObjects(int Index); int __fastcall GetObjectCount(); void __fastcall CheckObjectsInitialized(); void __fastcall SetActiveDeviceID(const System::WideString Value); void __fastcall SetActiveFolderID(const System::WideString Value); bool __fastcall GetCanNavigateToParent(); public: __fastcall TIEPortableDevices(); __fastcall virtual ~TIEPortableDevices(); __property System::WideString ActiveDeviceID = {read=fActiveDeviceID, write=SetActiveDeviceID}; __property System::WideString ActiveFolderID = {read=fActiveFolderID, write=SetActiveFolderID}; bool __fastcall RefreshDevices(); __property TIEPortableDevice Devices[int Index] = {read=GetDevices}; __property int DeviceCount = {read=GetDeviceCount, nodefault}; int __fastcall DeviceIDToIndex(const System::WideString sDeviceID); bool __fastcall NavigateToFolderID(const System::WideString sFolderID, bool bIncludeSubFolders = false, TIEWPDObjectTypes GetTypes = (TIEWPDObjectTypes() << TIEWPDObjectType::iewFile << TIEWPDObjectType::iewFolder ))/* overload */; bool __fastcall NavigateToFolderID(const System::WideString sDeviceID, const System::WideString sFolderID, bool bIncludeSubFolders = false, TIEWPDObjectTypes GetTypes = (TIEWPDObjectTypes() << TIEWPDObjectType::iewFile << TIEWPDObjectType::iewFolder ))/* overload */; bool __fastcall NavigateToFolderPath(const System::WideString sPath, bool bIncludeSubFolders = false, TIEWPDObjectTypes GetTypes = (TIEWPDObjectTypes() << TIEWPDObjectType::iewFile << TIEWPDObjectType::iewFolder ))/* overload */; bool __fastcall NavigateToFolderPath(const System::WideString sDeviceID, const System::WideString sPath, bool bIncludeSubFolders = false, TIEWPDObjectTypes GetTypes = (TIEWPDObjectTypes() << TIEWPDObjectType::iewFile << TIEWPDObjectType::iewFolder ))/* overload */; bool __fastcall FindFilesOfType(const System::WideString sDeviceID, const System::WideString sFolderID, System::UnicodeString sFileExtensions, int iMaxDepth = 0x0)/* overload */; bool __fastcall FindFilesOfType(const System::WideString sFolderID, System::UnicodeString sFileExtensions, int iMaxDepth = 0x0)/* overload */; bool __fastcall FindFilesByName(const System::WideString sDeviceID, const System::WideString sFolderID, const System::WideString sSearchText, TIEWPDObjectTypes GetTypes = (TIEWPDObjectTypes() << TIEWPDObjectType::iewFile << TIEWPDObjectType::iewFolder ), int iMaxDepth = 0x0)/* overload */; bool __fastcall FindFilesByName(const System::WideString sFolderID, const System::WideString sSearchText, TIEWPDObjectTypes GetTypes = (TIEWPDObjectTypes() << TIEWPDObjectType::iewFile << TIEWPDObjectType::iewFolder ), int iMaxDepth = 0x0)/* overload */; bool __fastcall NavigateToParent(); __property TIEWPDObject Objects[int Index] = {read=GetObjects}; __property int ObjectCount = {read=GetObjectCount, nodefault}; int __fastcall ObjectIDToIndex(const System::WideString sObjectID); bool __fastcall ObjectIsFolder(const System::WideString sObjectID)/* overload */; bool __fastcall ObjectIsFolder(int Index)/* overload */; bool __fastcall GetObjectAdvancedProps(const System::WideString sObjectID, /* out */ TIEWPDObjectAdvancedProps &DestProps)/* overload */; bool __fastcall GetObjectAdvancedProps(int Index, /* out */ TIEWPDObjectAdvancedProps &DestProps)/* overload */; bool __fastcall GetObjectAdvancedProps(const System::WideString sDeviceID, const System::WideString sObjectID, /* out */ TIEWPDObjectAdvancedProps &DestProps)/* overload */; bool __fastcall CopyFileFromDevice(const System::WideString sDeviceID, const System::WideString sObjectID, const System::WideString sDestFilename); bool __fastcall CopyStreamFromDevice(const System::WideString sDeviceID, const System::WideString sObjectID, System::Classes::TMemoryStream* &ssDestStream); bool __fastcall Cancel(); bool __fastcall CopyFileToDevice(const System::WideString sDeviceID, const System::WideString sFolderID, const System::WideString sSourceFilename); int __fastcall DeleteFromDevice(const System::WideString sDeviceID, const System::WideString sObjectID, bool bDeleteSubObjects, System::WideString &sResultText)/* overload */; int __fastcall DeleteFromDevice(const System::WideString sDeviceID, const System::WideString sObjectID, bool bDeleteSubObjects = true)/* overload */; int __fastcall DeleteFromDevice(const System::WideString sDeviceID, System::Classes::TStrings* ssObjectIDs, bool bDeleteSubObjects = true)/* overload */; int __fastcall DeleteFromDevice(const System::WideString sDeviceID, System::Classes::TStrings* ssObjectIDs, bool bDeleteSubObjects, System::WideString &sResultText)/* overload */; System::WideString __fastcall LookupDeviceFriendlyName(const System::WideString sDeviceID); System::WideString __fastcall LookupObjectFriendlyName(const System::WideString sObjectID)/* overload */; System::WideString __fastcall LookupObjectFriendlyName(const System::WideString sDeviceID, const System::WideString sObjectID)/* overload */; System::WideString __fastcall PathToFolderID(const System::WideString sPath)/* overload */; System::WideString __fastcall PathToFolderID(const System::WideString sDeviceID, const System::WideString sPath)/* overload */; __property System::UnicodeString LastError = {read=fLastError}; __property TIEPortableDeviceLogEvent OnLog = {read=fOnLog, write=fOnLog}; __property bool CanNavigateToParent = {read=GetCanNavigateToParent, nodefault}; __property bool Sorted = {read=fSorted, write=fSorted, nodefault}; __property bool HideEmptyDevices = {read=fHideEmptyDevices, write=fHideEmptyDevices, nodefault}; }; //-- var, const, procedure --------------------------------------------------- } /* namespace Iexwpd */ #if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_IEXWPD) using namespace Iexwpd; #endif #pragma pack(pop) #pragma option pop #pragma delphiheader end. //-- end unit ---------------------------------------------------------------- #endif // iexWPDHPP