Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi MS SQL DMO TLB Import (https://www.delphipraxis.net/105083-ms-sql-dmo-tlb-import.html)

mischerr 15. Dez 2007 13:17

Datenbank: MS SQLDMO • Version: 8.5 • Zugriff über: ADO

MS SQL DMO TLB Import
 
Habe über den Typelib-Imported von D2007 die "Microsoft SQLDMO Object Library" (V8.5) importiert.
Die Unit "SQLDMO_TLB" wurde auch anstandslos erzeugt, allerdings meckert, D2007: "E2004 Bezeichner redefiniert: 'ID'".

Delphi-Quellcode:
// *********************************************************************//
// DispIntf: _DistributionArticle2Disp
// Flags:    (4544) Dual NonExtensible OleAutomation Dispatchable
// GUID:     {10033116-E260-11CF-AE68-00AA004A34D5}
// *********************************************************************//
  _DistributionArticle2Disp = dispinterface
    ['{10033116-E260-11CF-AE68-00AA004A34D5}']
    property ID: Integer writeonly dispid 14;
    property Application: Application readonly dispid 1;
    property Parent: _IVSQLDMOStdObject readonly dispid 2;
    property UserData: Integer dispid 3;
    property TypeOf: SQLDMO_OBJECT_TYPE readonly dispid 4;
    property Properties: Properties readonly dispid 7;
    property Name: WideString dispid 9;
->   property ID: Integer readonly dispid 10;
    property SourceObjectOwner: WideString dispid 11;
    property SourceObjectName: WideString dispid 12;
    property Description: WideString dispid 13;
    procedure Remove; dispid 100;
    procedure BeginAlter; dispid 101;
    procedure DoAlter; dispid 102;
    procedure CancelAlter; dispid 103;
  end;
Natürlich kann ich den entsprechenden Abschnitt auskommentieren, da nicht benötigt, aber es wundert mich trotzdem etwas.

Weiss jemand wie der Import richtig lauten müsste?

pemue 6. Mär 2008 13:54

Re: MS SQL DMO TLB Import
 
ich habe genau das gleich problem! hat mittlerweile vielleicht ein netter jemand eine lösung für dieses Problem gefunden?

Danke

Gruß
Pemue

shmia 6. Mär 2008 14:14

Re: MS SQL DMO TLB Import
 
Vielleicht geht es so:
Delphi-Quellcode:
property ID: Integer readonly dispid 10 writeonly dispid 14;
Normalerweise hat ist ja die dispid für den Getter und Setter gleich.
Man sieht aber was hier passiert sein muss:
der MS Programmierer hat im nachhinein entschieden, dass das Property ID auch beschreibbar sein sollte.
(bisher war ID nur readonly)
Nur hat dann Visual Studio automatisch für den Setter eine neue dispid vergeben :-(

generic 6. Mär 2008 14:19

Re: MS SQL DMO TLB Import
 
Du kannst "ID" einfach umbennen, es wird via die DispID zugegriffen.

10 = ObjectID
14 = ArticleID


Code:
[id(0x0000000a), propget, helpstring("Object ID"), helpcontext(0x0001a522)]
long ID();

[id(0x0000000e), propput, helpstring("Use user defined distribution article ID which must be unique"), helpcontext(0x0001a526)]
void ID([in] long rhs);


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:23 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz