Project JEDI - Issue Tracker
Mantis Bugtracker

Viewing Issue Simple Details Jump to Notes ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0003474 [JEDI VCL] 00 JVCL Components major always 2006-01-27 05:30 2006-04-07 07:26
Reporter humantool View Status public  
Assigned To obones
Priority normal Resolution fixed  
Status resolved   Product Version 3.10
Summary 0003474: Diff between ObjSel.pas and ObjSel.h
Description Microsoft's docs about the "IDsObjectPicker" specifies to use a "PDSOP_INIT_INFO" :
IDsObjectPicker::Initialize
   The IDsObjectPicker::Initialize method initializes the object picker dialog box with data about the scopes, filters, and options used by the object picker dialog box.

HRESULT Initialize(PDSOP_INIT_INFO pInitInfo);
Parameters
 pInitInfo
  Pointer to a DSOP_INIT_INFO structure that contains the initialization data.
Return Values
 Returns a standard error code or one of the following values.
 S_OK
   The method succeeded.
 E_INVALIDARG
   The contents of one or more of the members of pInitInfo are invalid.
 E_OUTOFMEMORY
   A memory allocation error occurred.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/ad/ad/directory_object_picker.asp) [^]
and http://msdn.microsoft.com/library/default.asp?url=/library/en-us/ad/ad/idsobjectpicker_initialize.asp [^]

but your translation (Obj.pas) use :
"function Initialize(const pInitInfo: DSOP_INIT_INFO): HRESULT; stdcall;"
Additional Information I only changed the DSOP_INIT_INFO into PDSOP_INIT_INFO
"function Initialize(const pInitInfo: PDSOP_INIT_INFO): HRESULT; stdcall;"
Tags No tags attached.
Attached Files ? file icon ObjSel.pas [^] (22,923 bytes) 2006-01-27 05:30

- Relationships
related to 0003633resolvedobones Error while installin JVCL 

-  Notes
(0008510)
obones (administrator)
2006-02-06 07:14

Are you sure it needs to be changed?
I'm quite convinced that the const keyword makes the parameter a pointer.
(0008512)
humantool (reporter)
2006-02-06 07:52

I found this difference because I had to use the ObjSel.h.
So when I wanted to call Initialize on my object I had got Violation access error.
Then I changed the declaration into:
function Initialize(const pInitInfo: PDSOP_INIT_INFO): HRESULT; stdcall;

and call it like that :
function InitObjectPicker(pDsObjectPicker: IDsObjectPicker): HRESULT;
var
 aScopeInit: array [0..0] of TDsOpScopeInitInfo;
 InitInfo: TDsOpInitInfo;
begin
 ...
 Result := pDsObjectPicker.Initialize(@InitInfo);
end;

and it worked so I presumed it was this line, besides I always believed that the var keyword makes the parameter a pointer.
(0008682)
humantool (reporter)
2006-03-17 01:30

Hello,
the status is always on feedback, I would like to know why ?
As I said the required type in the function Initialize is wrong and I only changed the DSOP_INIT_INFO into PDSOP_INIT_INFO :
"function Initialize(const pInitInfo: PDSOP_INIT_INFO): HRESULT; stdcall;"
Are you expecting more details ?
(0008684)
obones (administrator)
2006-03-17 12:34

No that's fine, it's just a problem of available time
(0008691)
humantool (reporter)
2006-03-19 07:00

ah ok, thanks !
(0009028)
obones (administrator)
2006-04-07 07:26

This is now in CVS.

- Issue History
Date Modified Username Field Change
2006-01-27 05:30 humantool New Issue
2006-01-27 05:30 humantool File Added: ObjSel.pas
2006-02-06 07:14 obones Note Added: 0008510
2006-02-06 07:14 obones Status new => feedback
2006-02-06 07:52 humantool Note Added: 0008512
2006-03-17 01:30 humantool Note Added: 0008682
2006-03-17 12:34 obones Note Added: 0008684
2006-03-17 12:34 obones Status feedback => acknowledged
2006-03-19 07:00 humantool Note Added: 0008691
2006-04-07 07:26 obones Status acknowledged => resolved
2006-04-07 07:26 obones Resolution open => fixed
2006-04-07 07:26 obones Assigned To => obones
2006-04-07 07:26 obones Note Added: 0009028
2006-04-11 05:01 obones Relationship added related to 0003633


Mantis 1.1.6[^]
Copyright © 2000 - 2008 Mantis Group
Powered by Mantis Bugtracker