summaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
authorAlexey Kulakov <panda75@bk.ru>2014-03-08 13:57:58 +0000
committerAlexey Kulakov <panda75@bk.ru>2014-03-08 13:57:58 +0000
commit5f366013221edfc085a66446a24da366d4ea0739 (patch)
treeb8253d8398e86b38b94e120a6118f8c08f707e30 /plugins
parent8897fbb7a6b6edabb5f262458c9a679b37a39f13 (diff)
restore old (special) version
git-svn-id: http://svn.miranda-ng.org/main/trunk@8478 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'plugins')
-rw-r--r--plugins/Libs/KOLEdb.pas22
1 files changed, 12 insertions, 10 deletions
diff --git a/plugins/Libs/KOLEdb.pas b/plugins/Libs/KOLEdb.pas
index 4744adc832..3a1916965b 100644
--- a/plugins/Libs/KOLEdb.pas
+++ b/plugins/Libs/KOLEdb.pas
@@ -11,7 +11,7 @@ unit KOLEdb;
interface
-uses Windows, ActiveX, KOL, err;
+uses Windows, mComObj, KOL;
type
INT64 = I64;
@@ -29,11 +29,11 @@ type
3: ( fltVal : Extended );
4: ( dblVal : Double );
5: ( boolVal : Bool );
- 6: ( scode : SCODE );
+ //6: ( scode : SCODE );
//7: ( cyVal : CY );
//8: ( date : Date );
9: ( bstrVal : Pointer ); // BSTR => [ Len: Integer; array[ 1..Len ] of WideChar ]
- 10:( pdecVal : ^Decimal );
+ //10:( pdecVal : ^Decimal );
end;
(*
@@ -95,7 +95,7 @@ type
PIUnknown = ^IUnknown;
PUintArray = ^TUintArray;
TUintArray = array[0..MAXBOUND] of UINT;
-
+
HROW = UINT;
PHROW = ^HROW;
PPHROW = ^PHROW;
@@ -141,7 +141,7 @@ const
DBGUID_DBSQL : TGUID = '{C8B521FB-5CF3-11CE-ADE5-00AA0044773D}';
DBGUID_DEFAULT : TGUID = '{C8B521FB-5CF3-11CE-ADE5-00AA0044773D}';
DBGUID_SQL : TGUID = '{C8B522D7-5CF3-11CE-ADE5-00AA0044773D}';
-
+
DBPROPSET_ROWSET : TGUID = '{C8B522BE-5CF3-11CE-ADE5-00AA0044773D}';
DB_S_ENDOFROWSET = $00040EC6;
@@ -212,7 +212,7 @@ type
riid: TIID; var DataSource: IUnknown): HResult; stdcall;
function CreateDBInstanceEx(const clsidProvider: TGUID;
const pUnkOuter: IUnknown; dwClsCtx: DWORD; pwszReserved: POleStr;
- pServerInfo: PCoServerInfo; cmq: ULONG; rgmqResults: PMultiQI): HResult; stdcall;
+ pServerInfo: PCoServerInfo; cmq: ULONG; rgmqResults: Pointer): HResult; stdcall;
function LoadStringFromStorage(pwszFileName: POleStr;
out pwszInitializationString: POleStr): HResult; stdcall;
function WriteStringToStorage(pwszFileName, pwszInitializationString: POleStr;
@@ -481,7 +481,7 @@ type
PDBColumnInfo = ^TDBColumnInfo;
DBCOLUMNINFO = packed record
pwszName: PWideChar;
- pTypeInfo: ITypeInfo;
+ pTypeInfo: Pointer;
iOrdinal: UINT;
dwFlags: DBCOLUMNFLAGS;
ulColumnSize: UINT;
@@ -680,7 +680,7 @@ type
function StartTransaction(isoLevel: Integer; isoFlags: UINT;
const pOtherOptions: ITransactionOptions; pulTransactionLevel: PUINT): HResult; stdcall;
end;
-
+
const
XACTTC_SYNC_PHASEONE = $00000001;
XACTTC_SYNC_PHASETWO = $00000002;
@@ -1067,7 +1067,9 @@ end; *)
procedure DummyOleError( Result: HResult );
begin
+ {$IFNDEF FPC}
raise Exception.Create( e_Custom, 'OLE DB error ' + Int2Hex( Result, 8 ) );
+ {$ENDIF}
end;
function CheckOLE( Rslt: HResult ): Boolean;
@@ -1160,7 +1162,7 @@ begin
if Assigned(Unk) then begin
CheckOLE(Unk.QueryInterface(IID_ITransaction,Result.fTransaction));
CheckOLE(Unk.QueryInterface(IID_ITransactionLocal,Result.fTransactionLocal));
- end;
+ end;
end;
// =================================================================================================
end;
@@ -1350,7 +1352,7 @@ begin
if fRowBuffers.Items[ fCurIndex ] = nil then
begin
GetMem( Buffer, fRowSize );
- FillChar( Buffer^, fRowSize, 0 ); //fixup the varnumberic random bytes by azsd
+ FillChar( Buffer^, fRowSize, 0 ); //fixup the varnumberic random bytes by azsd
fRowBuffers.Items[ fCurIndex ] := Buffer;
CheckOLE( fRowSet.GetData( fRowHandle, fAccessor, fRowBuffers.Items[ fCurIndex ] ) );
end;