Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
raph ael
Anmeldungsdatum: 12.04.2006 Beiträge: 472
|
Verfasst am: 22.07.2006, 21:52 Titel: CoCreateGuid (API) |
|
|
Hallo!
Also, wenn ich ein MSI für mein Programm generieren will, brauch' ich ja eine GUID. Diese kann man mit der API erzeugen.
Hab' mal die Funktion in der API- Guide angeschaut, OK.
Dann hab' ich folgenden Code geschrieben:
Code: |
'or and or
/'
or and or
'/
Declare Function CoCreateGuid Lib "ole32" alias "CoCreateGuid" (id As Any) As Long
dim MeineGUID as string
dim x as long
print "GUID: ";
x=CoCreateGuid(@MeineGUID)
print MeineGUID
sleep
|
Hier der Ausschnitt aus der API- Guide:
Infoseite:
Code: |
Creates a GUID, a unique 128-bit integer used for CLSIDs and interface identifiers.
|
Deklaration:
Code: |
Declare Function CoCreateGuid Lib "ole32" (id As Any) As Long
|
ich hab's so ins Programm geschrieben:
Code: |
Declare Function CoCreateGuid Lib "ole32" alias "CoCreateGuid" (id As Any) As Long
|
Parameters:
Code: |
· pguid
[out] Pointer to the requested GUID on return.
|
Return values:
Code: |
· S_OK
The GUID was successfully created.
|
Das Programm geht zwar zum Compilieren, beim ausführen wird es aber sofort wegen eines ungültigen Zugriffs beendet.
Weis jemand rat?
edit: Einen Fehler behoben; Geht immer noch nicht! _________________
Zitat: | 1000 Yottabytes sind absurd. 640 Yottabytes sollten genug für jeden sein. |
Zuletzt bearbeitet von raph ael am 13.03.2008, 20:56, insgesamt einmal bearbeitet |
|
Nach oben |
|
|
ytwinky
Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 22.07.2006, 22:13 Titel: Re: CoCreateGuid (API) |
|
|
raph ael hat Folgendes geschrieben: | Code: | Declare Function CoCreateGuid Lib "ole32" alias "CoCreateGuid" (id As Any) As Long |
| Was soll denn id as Any für ein Typ sein? _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO.. |
|
Nach oben |
|
|
raph ael
Anmeldungsdatum: 12.04.2006 Beiträge: 472
|
Verfasst am: 22.07.2006, 22:17 Titel: |
|
|
Wie du meinen?
In der API- Guide steht's halt so und so hab' ichs übernommen. _________________
Zitat: | 1000 Yottabytes sind absurd. 640 Yottabytes sollten genug für jeden sein. |
|
|
Nach oben |
|
|
ytwinky
Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 22.07.2006, 22:39 Titel: |
|
|
Any(<-Link) ist für Pointer..
Ich dachte, du wüßtest das..
..weil der VariablenTyp 'As Any' geht nicht.. _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO.. |
|
Nach oben |
|
|
Michael Frey
Anmeldungsdatum: 18.12.2004 Beiträge: 2577 Wohnort: Schweiz
|
|
Nach oben |
|
|
raph ael
Anmeldungsdatum: 12.04.2006 Beiträge: 472
|
Verfasst am: 23.07.2006, 09:40 Titel: |
|
|
Aha! Danke .
Wenn man eine GUID will muss man natürlich
schreiben. _________________
Zitat: | 1000 Yottabytes sind absurd. 640 Yottabytes sollten genug für jeden sein. |
|
|
Nach oben |
|
|
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1875 Wohnort: D59192
|
Verfasst am: 23.07.2006, 15:24 Titel: |
|
|
Code: | /'So steht es in den FB inc-Dateien
Declare Function CoCreateGuid Alias "CoCreateGuid" (Byval As GUID Ptr) As HRESULT
Type HRESULT As Long
Type GUID
Data1 As Uinteger
Data2 As Ushort
Data3 As Ushort
Data4(0 To 8-1) As Ubyte
End Type
das sind 128 Bit eine Variable ulongint mit 64Bit reicht nicht!!
'/
#define WIN_INCLUDEALL
#include "Windows.bi"
Dim test As GUID
Dim i As Integer
Cls
CoCreateGuid(@test)
With test
?hex(.Data1,4) & "-" & hex(.Data2,2) &"-"& hex(.Data3,2) &"-";
For i =0 To 7
?hex(.Data4(i),1);
Next
End With
?
Sleep
End | aber was hier die Zahlen in GUID bedeuten ? keine Ahnung ? _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater.
Zuletzt bearbeitet von volta am 23.07.2006, 16:15, insgesamt einmal bearbeitet |
|
Nach oben |
|
|
raph ael
Anmeldungsdatum: 12.04.2006 Beiträge: 472
|
Verfasst am: 23.07.2006, 15:44 Titel: |
|
|
Dat sind Zahlen...
Zufällige, nichtsbedeutende, ZAHLEN, die vom Sys generiert werden.
Braucht man(n) beim WiX (Windoof Installer XML). _________________
Zitat: | 1000 Yottabytes sind absurd. 640 Yottabytes sollten genug für jeden sein. |
|
|
Nach oben |
|
|
|