![]() |
Vista Kontakt schreiben
Hallo zusammen,
ich versuche gerade unter Delphi7 ein Programm zu schreiben, welches mir einen Windows-Kontakt unter Vista anlegt. Dazu nutze ich die Windows API von JEDI. Nun gibt es da eine Funktion 'SHCreateStreamOnFileEx', mit der man laut dem Beispiel aus der MSDN den Kontakt in einen Stream und somit dann in eine Datei schreibt. Nun ist das Problem der Aufruf dieser Funktion Deklaration vom Stream
Delphi-Quellcode:
Aufruf der Funktion
aIStream : ^IStream;
Delphi-Quellcode:
Allerdings bringt er mir ne Fehlermeldung und zwar:
SHCreateStreamOnFileEx(sFile, STGM_WRITE, FILE_ATTRIBUTE_NORMAL, True, nil, @aIStream);
Die Typen der tatsächlichen und formalen Var-Parameter müssen übereinstimmen. Habe schon einige möglichkeiten durchprobiert, aber immer die gleiche Fehlermeldung. Wie muss ich denn den IStream deklarieren und die Funktion aufrufen? Gruß dingsbums |
Re: Vista Kontakt schreiben
Hai dingsbums,
ersteinmal: "Herzlich Willkommen in der Delphi-PRAXuS" :hello: Wie ist den der Header von SHCreateStreamOnFileEx deklariert? |
Re: Vista Kontakt schreiben
Deklaration von SHCreateStreamOnFileEx in der JEDI API
Delphi-Quellcode:
In der MSDN
function SHCreateStreamOnFileEx(pszFile: PWideChar; grfMode, dwAttributes: DWORD; fCreate: BOOL; pstmTemplate: IStream; out ppstm: IStream): HResult stdcall;
Zitat:
![]() |
Re: Vista Kontakt schreiben
Und wenn Du es so umschreibst?
Delphi-Quellcode:
aIStream : IStream;
... SHCreateStreamOnFileEx(sFile, STGM_WRITE, FILE_ATTRIBUTE_NORMAL, True, nil, aIStream); |
Re: Vista Kontakt schreiben
Zitat:
|
Re: Vista Kontakt schreiben
Von welchem Typ ist sFile?
|
Re: Vista Kontakt schreiben
sFile ist ein PWideChar und da steht der Dateiname der zu erstellenden Datei drin.
Delphi-Quellcode:
sFile : PWideChar;
... sFile := 'NewContact.Contact'; |
Re: Vista Kontakt schreiben
Dann hab ich im Moment auch keinen zündenden Einfall.
|
Re: Vista Kontakt schreiben
Etwas Q&D: Die Deklaration umändern zu .....pstmTemplate: IStream; ppstm: Pointer): HResult stdcall;
und dann aufrufen wie am Anfang? |
Re: Vista Kontakt schreiben
Liefert leider den gleichen Fehler. :(
Edit: Vergessen das 'out' wegzumachen, dann compiliert er. Danke. Mal schaun obs nun auch funktioniert. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:21 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz