COMatePlus x64?

Windowsspezifisches Forum , API ,..
Beiträge, die plattformübergreifend sind, gehören ins 'Allgemein'-Forum.
Benutzeravatar
_JON_
Beiträge: 389
Registriert: 30.03.2010 15:24

COMatePlus x64?

Beitrag von _JON_ »

Hallo,

wollte mal fragen ob es irgendwo eine x64 Version von COMatePlus oder alternative gibt.
PureBasic 5.46 LTS (Windows x86/x64) | windows 10 x64 Oktober failure
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: COMatePlus x64?

Beitrag von ts-soft »

COMatePLUS unterstützt auch x64, musst nur die 64-Bit Version von PB nutzen!
Die meisten Objecte tun dies aber nicht, was wahrscheinlich der Grund ist, das
Du nach einer 64-Bit Version fragst. Probiere mal die Beispiele mit dem WebGadget,
die funktionieren (64-Bit Version des InternetExplorers existiert nämlich).
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
_JON_
Beiträge: 389
Registriert: 30.03.2010 15:24

Re: COMatePlus x64?

Beitrag von _JON_ »

Danke für die Antwort.
Grund warum ich dachte, dass COMatePlus nur x86 sei sind die Invalid memory access in COMate_CreateObject()

Zeile 228 - hResult = cf\CreateInstance(0, ?IID_IDispatch, @*this\iDisp)

Das trifft z.B. beim beiliegenden Demo_Script_VBS.pb auf und dieses Objekt sollte doch bei x86/x64 vorhanden sein.
Und selbst wenn es nicht vorhanden wäre, sollte der vorherige Check fehlschlagen und keinen Crash verursachen.

Des weiteren sehe ich kein CompilerIf #PB_Compiler_Processor = #PB_Processor_x86 in COMatePLUS.pbi
CompilerIf Defined(EXCEPINFO, #PB_Structure) = 0
Structure EXCEPINFO
wCode.w
wReserved.w
bstrSource.i ;BSTR
bstrDescription.i
bstrHelpFile.i
dwHelpContext.l
pvReserved.i
pfnDeferredFillIn.COMate_ProtoDeferredFillIn
scode.l
EndStructure
CompilerEndIf
Sollte hier nicht vor bstrSource.i 4 bytes fürs Alignment gesetzt werden?
PureBasic 5.46 LTS (Windows x86/x64) | windows 10 x64 Oktober failure
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: COMatePlus x64?

Beitrag von ts-soft »

_JON_ hat geschrieben: Des weiteren sehe ich kein CompilerIf #PB_Compiler_Processor = #PB_Processor_x86 in COMatePLUS.pbi
Ist doch auch nicht nötig für x86/x64 kompatibilität.
_JON_ hat geschrieben:
CompilerIf Defined(EXCEPINFO, #PB_Structure) = 0
Structure EXCEPINFO
wCode.w
wReserved.w
bstrSource.i ;BSTR
bstrDescription.i
bstrHelpFile.i
dwHelpContext.l
pvReserved.i
pfnDeferredFillIn.COMate_ProtoDeferredFillIn
scode.l
EndStructure
CompilerEndIf
Sollte hier nicht vor bstrSource.i 4 bytes fürs Alignment gesetzt werden?
Es ist natürlich möglich, das dort Alignment fehlen. Da solltest Du im engl. Forum im
COMatePLUS Thread mal nachfragen.

Aber grundsätzlich ist x64 Support gegeben.

Gruß
Thomas
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Josh
Beiträge: 1028
Registriert: 04.08.2009 17:24

Re: COMatePlus x64?

Beitrag von Josh »

_JON_ hat geschrieben:Das trifft z.B. beim beiliegenden Demo_Script_VBS.pb auf und dieses Objekt sollte doch bei x86/x64 vorhanden sein.
Nein, für das Script Control gibt es keine 64 bit Version.
Benutzeravatar
_JON_
Beiträge: 389
Registriert: 30.03.2010 15:24

Re: COMatePlus x64?

Beitrag von _JON_ »

Josh hat geschrieben:Nein, für das Script Control gibt es keine 64 bit Version.
Hast Recht, gibt es wirklich nicht als x64.

Mittlerweile habe ich, das Hauptproblem für den Crash gefunden.
Das SUCCEEDED Marco ist positiv wenn größer 0.

Werde mir das COMatePlus mal die nächsten Tage genauer anschauen ...
PureBasic 5.46 LTS (Windows x86/x64) | windows 10 x64 Oktober failure
Antworten