Meldung: 'Zugriffsverletzung bei Adresse 00401D6D in Modul 'Word.exe'



  • ... komm schon gib mir nen Tip ...

    was muss ich damti sonst noch machen ??

    IEnumSTATPROPSTG *pEnumProp;
    


  • initialisieren bedeutet einen Anfangswert zuweisen.



  • bitte bitte sag mir doch mal mit was?? das is nen code von der ms knowledge base und ich hab den porobiert in bcb6 zu übersetzen ... bzw. übernehmen .. hat auch geklappt nur jez nis da halt der fehler .. naja und ich weiß nich womit ich das initialisieren soll ...



  • 666Blade[DC]666 schrieb:

    ... komm schon gib mir nen Tip ...

    was muss ich damti sonst noch machen ??

    IEnumSTATPROPSTG *pEnumProp;
    

    wie waere es mit sowas wie

    IEnumSTATPROPSTG *pEnumProp;
    pEnumProp = new IEnumSTATPROPSTG( /*vieleicht Parameter*/);
    

    sonst ist es ja nur ein Zeiger der ins nichts zeigt.

    ps.: ich hoffe ich hab nichts zu überflüssiges gesagt 😞



  • Also das hier kann keinen geben.

    void DumpCustomProps(IPropertySetStorage *pPropSetStg)
    

    Zum Vergleich mal ne andere Zeile aus einem Code

    __fastcall TForm1::TForm1(TComponent* Owner) 
            : TForm(Owner)
    

    na fällt dir der Unterschied auf? 😉

    IEnumSTATPROPSTG
    

    ist dem BCB (ich geh mal stark davon aus, das du diesen benutzt) leider unbekannt, zumindest finde ich diese Variable/Struktur/Klasse (😕) nicht in der Hilfe vom BCB 6 Enterprise. Und beim initilisieren bekomme ich die Meldeung "Typename expected", evtl muss man ja auch irgendwelche weiteren Includes machen (weiß aber leider nicht welche... :()



  • PuppetMaster2k schrieb:

    Also das hier kann keinen geben.

    void DumpCustomProps(IPropertySetStorage *pPropSetStg)
    

    Zum Vergleich mal ne andere Zeile aus einem Code

    __fastcall TForm1::TForm1(TComponent* Owner) 
            : TForm(Owner)
    

    na fällt dir der Unterschied auf? 😉

    Ja und zwar das es eine ganz normale Funktion ist und rein gar nichts mit einer Klasse
    zu tun hat.

    mfg
    v R



  • 666Blade[DC]666 schrieb:

    ... komm schon gib mir nen Tip ...

    was muss ich damti sonst noch machen ??

    IEnumSTATPROPSTG *pEnumProp;
    

    Vielleicht schaust du einfach mal hier rein.

    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/stg/stg/ienumstatpropstg_compound_file_implementation.asp

    Joe



  • das sieht vielversprechend aus ... @JoeIntel .... nur irgendwie blick ich nich durch ... warum bekomm ich die Fehlermeldung und wie muss ichs machen damit es funktioniert ?



  • 666Blade[DC]666 schrieb:

    das sieht vielversprechend aus ... @JoeIntel .... nur irgendwie blick ich nich durch ... warum bekomm ich die Fehlermeldung und wie muss ichs machen damit es funktioniert ?

    Na ja ich kenn mich da nicht aus aber ich tippe mal auf

    IEnumSTATPROPSTG *pEnumProp = NULL; 
    
       //Benutzerdefinierte Properties öffnen ... 
       hr = pPropSetStg -> Open(FMTID_UserDefinedProperties, STGM_READ | STGM_SHARE_EXCLUSIVE, &pPropStg); 
    
       //Auflistung der benutzerdefinierte Properties ... 
       STATPROPSTG sps; 
       ULONG fetched; 
       PROPSPEC propSpec[1]; 
       PROPVARIANT propVar[1];
    //----> 
       if (pEnumProp->Enum( &pEnumProp) != S_OK)
          return;
    //<---
       while (pEnumProp -> Next(1, &sps, &fetched) == S_OK) 
       {
    


  • pEnumProp -> Enum geht nicht weils laut BCB keine Eigenschaft oder Funktion gibt von dem Objekttyp von pEnumProp.
    Bin jez wieder am Anfang und auf eure Hilfe angewiesen!!



  • 666Blade[DC]666 schrieb:

    pEnumProp -> Enum geht nicht weils laut BCB keine Eigenschaft oder Funktion gibt von dem Objekttyp von pEnumProp.
    Bin jez wieder am Anfang und auf eure Hilfe angewiesen!!

    War halt ein tippfehler Copy and Waste nimm halt das

    if (pStorage->Enum( &pEnumProp) != S_OK)
    

    Ich würde dir aber Grundsätzlich erst mal empfehlen dich mit weniger komplizierten Problemen zu beschäftigen. Denn mir scheint das deine C++ Kenntnisse nicht wirklich dem Problem angemessen sind um es mal Diplomatisch auszudrücken. Dieses Forum ist nicht dafür da komplette Programme für jemanden zu debuggen.

    In diesem Sinne

    Joe



  • Wohl wahr wohl wahr ... JoeIntel ... in der Tat sind meine C++ Kenntnisse zu diesem Zeitpunkt wirklich überfordert. Deswegen erhoffte ich mir bei euch eine Lösung zu finden. Aufgabenstellung war es ein Programm zu konstuieren welches die Custom Document Prperties von Word ausliest und verändern kann. Da dadurch die Buchhaltung optimiert werden sollte lag für mich der Hauptteil der Aufgabe auf dem Entwurf einer Datenbank aus der Informationen für diese Properties bezogen werden sollten. In der Knowledge Base habe ich ein Konsolenbeispiel in VC++ gefunden und habe dieses Probiert erst umzusetzten um es dann für meine Bedürfnisse zu erweitern. Der Aufwand mich in die OLE Automation (dürfte so heißen .. ?) einzuarbeiten wäre zu groß gewesen um das ganze 100% selber zu entwerfen ... trotzdem Danke an euch ....

    Blade -> PlanB();



  • es gab mal (oder es gibt sie immer noch) zeiten, in denen ich etwas mehr als 50 Zeilen einfachen code gepostet habe und von einigen admins hier den vogel gezeigt bekam wer sich denn hier den ganzen kram anschauen soll. Der code in diesem post ist dagegen schon riesig und der poster bekommt richtig nett antworten zu allem moeglichen details.
    respekt, respekt (ich weiss nur noch nicht wem ich diesen respekt zollen soll, den admins oder dem poster!?!)

    gruss.


Anmelden zum Antworten