|
||||
|
KeePass 2.x
Installation / Portability
Translations
Plugins
Compatibility / SxS
Application Policy
Auto-Type Obfuscation
Synchronization
Triggers
User Interface
Database Settings
Entry
Interface Options
Load/Save From/To URL
License
Features
Auto-Type
Command Line Options
Composite Master Key
Configuration
Field References
Import / Export
Integration
Multi-User
Password Generator
Placeholders
Repair Databases
Secure Edit Controls
Security
TAN Support
URL Field
Using Stored Passwords
Development
Customization (1.x)
Customization (2.x)
Scripting (2.x)
Creating Plugins (1.x)
Creating Plugins (2.x)
Key Providers (1.x)
Key Providers (2.x)
Support KeePass
Donate
|
IKpUtilities.hGo to the documentation of this file.00001 /* 00002 Copyright (c) 2008-2013, Dominik Reichl 00003 All rights reserved. 00004 00005 Redistribution and use in source and binary forms, with or without 00006 modification, are permitted provided that the following conditions 00007 are met: 00008 00009 * Redistributions of source code must retain the above copyright 00010 notice, this list of conditions and the following disclaimer. 00011 * Redistributions in binary form must reproduce the above copyright 00012 notice, this list of conditions and the following disclaimer in 00013 the documentation and/or other materials provided with the 00014 distribution. 00015 00016 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 00017 "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 00018 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 00019 FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 00020 COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 00021 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 00022 BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 00023 LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 00024 CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 00025 LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 00026 ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 00027 POSSIBILITY OF SUCH DAMAGE. 00028 */ 00029 00030 #ifndef ___IKPUTILITIES_H___ 00031 #define ___IKPUTILITIES_H___ 00032 00033 #pragma once 00034 00035 #include "../../SysDefEx.h" 00036 #include "IKpUnknown.h" 00037 00038 #pragma pack(1) 00039 00043 struct KP_DECL_INTERFACE("9700114E-9178-4337-A26F-34A6DA91FBB4") IKpUtilities : 00044 public IKpUnknown 00045 { 00046 public: 00047 STDMETHOD(ShowFileDialog)(BOOL bOpenMode, LPCTSTR lpSuffix, LPTSTR lpStoreBuf, 00048 DWORD dwBufLen) = 0; 00049 00051 STDMETHOD_(char*, UnicodeToMultiByte)(const WCHAR* lpwString) = 0; 00053 STDMETHOD_(WCHAR*, MultiByteToUnicode)(const char* lpString) = 0; 00054 00056 STDMETHOD_(UTF8_BYTE*, StringToUTF8)(LPCTSTR lpSourceString) = 0; 00057 STDMETHOD_(DWORD, UTF8NumChars)(const UTF8_BYTE* pUTF8String) = 0; 00058 STDMETHOD_(DWORD, UTF8BytesNeeded)(LPCTSTR lpString) = 0; 00060 STDMETHOD_(LPTSTR, UTF8ToString)(const UTF8_BYTE* pUTF8String) = 0; 00061 STDMETHOD_(BOOL, IsUTF8String)(const UTF8_BYTE* pUTF8String) = 0; 00062 00063 STDMETHOD(UuidToString)(const BYTE* pUuid, LPTSTR lpOutBuf) = 0; 00064 STDMETHOD(StringToUuid)(LPCTSTR lpSource, BYTE* pUuid) = 0; 00065 00066 STDMETHOD_(INT, ShellOpenLocalFile)(LPCTSTR lpFile, INT nMode) = 0; 00067 STDMETHOD(OpenUrl)(LPCTSTR lpURL, HWND hParent) = 0; 00068 STDMETHOD(OpenAppHelp)(LPCTSTR lpTopicFile) = 0; 00069 00070 STDMETHOD(Base64Encode)(const BYTE* pbIn, DWORD cbInLen, BYTE* pbOut, DWORD* pcbOutLen) = 0; 00071 STDMETHOD(Base64Decode)(const BYTE* pbIn, DWORD cbInLen, BYTE* pbOut, DWORD* pcbOutLen) = 0; 00072 00073 STDMETHOD(GetApplicationDirectory)(LPTSTR lpStoreBuf, DWORD dwBufLen, 00074 BOOL bFilterSpecial, BOOL bMakeURL) = 0; 00075 00077 STDMETHOD_(LPTSTR, MakeRelativePath)(LPCTSTR lpBaseFile, LPCTSTR lpTargetFile) = 0; 00078 00080 STDMETHOD_(LPTSTR, GetShortestAbsolutePath)(LPCTSTR lpFilePath) = 0; 00081 00082 STDMETHOD_(BOOL, IsAbsolutePath)(LPCTSTR lpPath) = 0; 00083 00096 STDMETHOD_(BOOL, ValidatePath)(LPCTSTR lpPath, DWORD dwOptions) = 0; 00097 00099 STDMETHOD_(LPTSTR, GetQuotedPath)(LPCTSTR lpPath) = 0; 00100 00106 STDMETHOD(CreateDirectoryTree)(LPCTSTR lpDirPath, DWORD dwOptions) = 0; 00107 00110 STDMETHOD(FlushStorageBuffers)(LPCTSTR lpFileOnStorage, BOOL bOnlyIfRemovable) = 0; 00111 00113 STDMETHOD(SecureDeleteFile)(LPCTSTR lpFilePath) = 0; 00114 00115 STDMETHOD(WriteFile)(LPCTSTR lpFilePath, const BYTE* pData, DWORD dwDataSize) = 0; 00116 00117 STDMETHOD_(INT, CompareTimes)(const PW_TIME* pTime1, const PW_TIME* pTime2) = 0; 00118 00119 STDMETHOD_(DWORD, EstimatePasswordBits)(LPCTSTR lpPassword) = 0; 00120 00121 STDMETHOD_(BOOL, IsTANEntry)(const PW_ENTRY* pEntry) = 0; 00122 00123 STDMETHOD(HashFileSHA256)(LPCTSTR lpFile, BYTE* pHashBuf) = 0; 00124 00132 STDMETHOD(SHA256CreateContext)(void** pOutNewContext) = 0; 00133 00138 STDMETHOD(SHA256Init)(void* pContext) = 0; 00139 00143 STDMETHOD(SHA256Hash)(void* pContext, const BYTE* pData, DWORD dwDataLength) = 0; 00144 00150 STDMETHOD(SHA256Final)(void* pContext, BYTE* pOutHashBuf) = 0; 00151 00158 STDMETHOD(EncryptMemory)(BYTE* pbBuf, DWORD dwBufLen, const BYTE* pbKey, DWORD dwKeyLen) = 0; 00159 00162 STDMETHOD(DecryptMemory)(BYTE* pbBuf, DWORD dwBufLen, const BYTE* pbKey, DWORD dwKeyLen) = 0; 00163 }; 00164 00165 #pragma pack() 00166 00167 #endif // ___IKPUTILITIES_H___ Documentation generated with
Doxygen.
|
![]()
|
||
KeePass is OSI Certified Open Source Software Copyright © 2003-2013 Dominik Reichl, [Legal Contact / Imprint] [Disclaimer] [Acknowledgements] [Donate], Downloads hosted at |
||||
KeePass Help Center
KeePass Home
Downloads
Translations
Plugins
Donate
Help Center Home
Forums
Awards
Links
Search
