Author | Topic: ot4xb FileTime64() geht seit RC1 nicht mehr | |
---|---|---|
![]() | Markus Ratzesberger | ot4xb FileTime64() geht seit RC1 nicht mehr on Tue, 07 Oct 2014 23:27:39 +0200 Dieses einfache Programm funktioniert seit der RC1 nicht mehr, Bis Xbase++ v2.0.519 hat es noch funktioniert. #include "ot4xb.ch" proc main local oFt, oK ? ot4xb() returns 001.006.000.167 oK := FileTime64() returns always nil since rc1 if oK = NIL ? "Fehler oK=NIL" endif Gruß Markus |
![]() | Andreas Herdt | Re: ot4xb FileTime64() geht seit RC1 nicht mehr on Wed, 08 Oct 2014 11:10:14 +0200 Hello Mr Ratzesberger, Please contact Pablo Botella. I assume that the library requires a rebuild. With Xbase++ 2.0 we have changed the internal type defines, a rebuild of libraries is required that are implemented in C/C++ using the C-API and the corresponding C/C++ header files. The updated C-API documentation must be taken into consideration on how Xbase++ types are to be identified from C/C++. With my best regards, Andreas Herdt Alaska Software -------------------------------------------------------------------- Technical Support: support@alaska-software.com News Server: news.alaska-software.com Homepage: http://www.alaska-software.com WebKnowledgeBase: http://www.alaska-software.com/kbase.shtm Fax European Office: +49 (0) 61 96 - 77 99 99 23 Fax US Office: +1 (646) 218 1281 -------------------------------------------------------------------- "Markus Ratzesberger" wrote in message news:434d730a$2be82062$dd64@news.alaska-software.com... > Dieses einfache Programm funktioniert seit der RC1 nicht mehr, Bis Xbase++ > v2.0.519 hat es noch funktioniert. > > #include "ot4xb.ch" > proc main > local oFt, oK > > ? ot4xb() // returns 001.006.000.167 > > oK := FileTime64() // returns always nil since rc1 > if oK = NIL > ? "Fehler oK=NIL" > endif > > Gruß > Markus > |
![]() | Andreas Herdt | Re: ot4xb FileTime64() geht seit RC1 nicht mehr on Wed, 08 Oct 2014 11:13:24 +0200 Hallo Herr Ratzesberger, Habe ich gerade in Englisch geantwortet? Bitte nehmen Sie mit Pablo Botella verbindung auf. Ich denke das ein Rebuild der Bibliothek erforderlich ist. Mit Xbase++ 2.0 haben wir das interne Typen Management überarbeitet, das bedingt ein neues Bauen aller Bibliotheken die unter Verwendung der C-API in C/C++ gebaut wurden. Es ist dann auch die geänderte Dokumentation der C-API zu beachten, die beschreibt, wie auf Xbase++ Typen hin zu prüfen. ist. Das war Deutsch, wie bei Sendung mit der Mause. Mit freundlichen Grüssen, Andreas Herdt Alaska Software -------------------------------------------------------------------- Technical Support: support@alaska-software.com News Server: news.alaska-software.com Homepage: http://www.alaska-software.com WebKnowledgeBase: http://www.alaska-software.com/kbase.shtm Fax European Office: +49 (0) 61 96 - 77 99 99 23 Fax US Office: +1 (646) 218 1281 -------------------------------------------------------------------- "Andreas Herdt" wrote in message news:980829f$54e6fa7$eb6f@news.alaska-software.com... > Hello Mr Ratzesberger, > > Please contact Pablo Botella. I assume that the library requires a > rebuild. > > With Xbase++ 2.0 we have changed the internal type defines, a rebuild > of libraries is required that are implemented in C/C++ using the C-API > and the corresponding C/C++ header files. > > The updated C-API documentation must be taken into consideration on > how Xbase++ types are to be identified from C/C++. > > With my best regards, > > -- > Andreas Herdt > Alaska Software > > -------------------------------------------------------------------- > > Technical Support: support@alaska-software.com > > News Server: news.alaska-software.com > Homepage: http://www.alaska-software.com > WebKnowledgeBase: http://www.alaska-software.com/kbase.shtm > > Fax European Office: +49 (0) 61 96 - 77 99 99 23 > Fax US Office: +1 (646) 218 1281 > -------------------------------------------------------------------- > > "Markus Ratzesberger" wrote in message > news:434d730a$2be82062$dd64@news.alaska-software.com... >> Dieses einfache Programm funktioniert seit der RC1 nicht mehr, Bis >> Xbase++ v2.0.519 hat es noch funktioniert. >> >> #include "ot4xb.ch" >> proc main >> local oFt, oK >> >> ? ot4xb() // returns 001.006.000.167 >> >> oK := FileTime64() // returns always nil since rc1 >> if oK = NIL >> ? "Fehler oK=NIL" >> endif >> >> Gruß >> Markus >> > |
![]() | Thomas Braun | Re: ot4xb FileTime64() geht seit RC1 nicht mehr on Wed, 08 Oct 2014 13:18:46 +0200 Andreas Herdt wrote: > Mit Xbase++ 2.0 haben wir das interne Typen Management überarbeitet, > das bedingt ein neues Bauen aller Bibliotheken die unter Verwendung > der C-API in C/C++ gebaut wurden. Oh - ich vermute das betrifft dann auch meine taskbar library... muß ich mal bei Gelegenheit testen. grüße Thomas |
![]() | Hubert Brandel | Re: ot4xb FileTime64() geht seit RC1 nicht mehr on Mon, 13 Oct 2014 08:23:36 +0200 > Bitte nehmen Sie mit Pablo Botella verbindung auf. Ich denke das ein > Rebuild der Bibliothek erforderlich ist. > > Mit Xbase++ 2.0 haben wir das interne Typen Management überarbeitet, > das bedingt ein neues Bauen aller Bibliotheken die unter Verwendung > der C-API in C/C++ gebaut wurden. > > Es ist dann auch die geänderte Dokumentation der C-API zu > beachten, die beschreibt, wie auf Xbase++ Typen hin zu prüfen. ist. Das ist aber sehr unerfreulich, für beinahe jeden DLL Zugriff braucht man die ot4xb, da die Datentypen in pur Xbase zu stark eingeschränkt sind. Trifft das alle Datentypen ? Bei einem kurzen Test konnte ich zumindest beim Zugriff auf QuickPDF keinen Fehler entdecken, aber ob intern alles OK geht weiß ich nicht. MfG Hubert Brandel |
![]() | Thomas Braun | Re: ot4xb FileTime64() geht seit RC1 nicht mehr on Mon, 13 Oct 2014 08:43:53 +0200 Hubert Brandel wrote: > Das ist aber sehr unerfreulich, für beinahe jeden DLL Zugriff braucht > man die ot4xb, da die Datentypen in pur Xbase zu stark eingeschränkt > sind. Trifft das alle Datentypen ? > Bei einem kurzen Test konnte ich zumindest beim Zugriff auf QuickPDF > keinen Fehler entdecken, aber ob intern alles OK geht weiß ich nicht. Hmmm, der Quellcode ist ja zum Glück hier zu finden: http://www.xbwin.com/download/snapshots/ot4xb_001_006_000_167_src.zip Jetzt fehlt nur noch jemand mit einer funktionierenden C++ Umgebung um eine neue DLL für Xbase++ 2.x zu bauen... Grüße Thomas |
![]() | Markus Ratzesberger | Re: ot4xb FileTime64() geht seit RC1 nicht mehr on Tue, 21 Oct 2014 10:38:13 +0200 Am 08.10.2014 11:13, schrieb Andreas Herdt: > Hallo Herr Ratzesberger, > > > Es ist dann auch die geänderte Dokumentation der C-API zu beachten, die > beschreibt, wie auf Xbase++ Typen hin zu prüfen. ist. > > Und wo findet man diese geänderte Dokumentation der C-API? MfG Markus Ratzesberger |
![]() | Andreas Herdt | Re: ot4xb FileTime64() geht seit RC1 nicht mehr on Wed, 22 Oct 2014 15:18:31 +0200 Hallo Herr Ratzesberger, Bitte schauen sie unter der Beschreibung _contype() und _partype(). Hier werden die Makros aufgelistet die zur Prüfung des Xbase++ Typen zu verwenden sind. Andreas Herdt Alaska Software -------------------------------------------------------------------- Technical Support: support@alaska-software.com News Server: news.alaska-software.com Homepage: http://www.alaska-software.com WebKnowledgeBase: http://www.alaska-software.com/kbase.shtm Fax European Office: +49 (0) 61 96 - 77 99 99 23 Fax US Office: +1 (646) 218 1281 -------------------------------------------------------------------- "Markus Ratzesberger" wrote in message news:301b621$410983c8$43f96@news.alaska-software.com... > Am 08.10.2014 11:13, schrieb Andreas Herdt: >> Hallo Herr Ratzesberger, >> >> >> Es ist dann auch die geänderte Dokumentation der C-API zu beachten, die >> beschreibt, wie auf Xbase++ Typen hin zu prüfen. ist. >> >> > Und wo findet man diese geänderte Dokumentation der C-API? > > MfG > Markus Ratzesberger |
![]() | Hubert Brandel | Re: ot4xb FileTime64() geht seit RC1 nicht mehr on Thu, 23 Oct 2014 09:03:26 +0200 Am 08.10.2014 11:10, schrieb Andreas Herdt: > With Xbase++ 2.0 we have changed the internal type defines, a rebuild > of libraries is required that are implemented in C/C++ using the C-API > and the corresponding C/C++ header files. > > The updated C-API documentation must be taken into consideration on > how Xbase++ types are to be identified from C/C++. 1. Question, where is the C-API with changes, I can't find changes in the Dokumentation ... but I can't use C/C++ so this don't help realy |
![]() | Hubert Brandel | Re: ot4xb FileTime64() geht seit RC1 nicht mehr on Thu, 23 Oct 2014 10:11:48 +0200 Und nun den Vergleich von _partype ... in der Doku: 1.9 - ULONG _partype(XppParamList pList, ULONG ulIndex); 2.0 - ULONG _partype(XppParamList pList, ULONG ulIndex); 1.9 - Indexliste 2.0 - Auflistung ... ich kann da keine Unterschiede feststellen ... Ich sehe keine Änderungen, außer der KLARSTELLUNG: It should be noted that for some types more then one bit is masked in the return value. Furthermore, the numeric value representing a type may change in future Xbase++ versions. Because of these reasons the return value should be tested with one of the macros defined in the header file xpppar.h. Aber ich kenne mit mit C/C++ auch nicht aus |
![]() | Thomas Braun | Re: ot4xb FileTime64() geht seit RC1 nicht mehr on Thu, 23 Oct 2014 15:21:31 +0200 Markus Ratzesberger wrote: > Dieses einfache Programm funktioniert seit der RC1 nicht mehr, Bis > Xbase++ v2.0.519 hat es noch funktioniert. > oK := FileTime64() returns always nil since rc1 Irgendwie steh' ich auf dem Schlauch - ich finde diese Funktion weder in der Dokumentation zu ot4xb, noch kann ich das Codebeispiel mit ot4xb binden... ist das eine benutzerdefinierte Funktion? Hintergrund - ich habe es unter großen Schmerzen geschafft einen neuen Build zu erzeugen und würde den gerne testen. grüße Thomas |
![]() | Hubert Brandel | Re: ot4xb FileTime64() geht seit RC1 nicht mehr on Thu, 23 Oct 2014 15:42:33 +0200 Am 23.10.2014 15:21, schrieb Thomas Braun: >> oK := FileTime64() returns always nil since rc1 > > Irgendwie steh' ich auf dem Schlauch - ich finde diese Funktion weder in > der Dokumentation zu ot4xb, noch kann ich das Codebeispiel mit ot4xb > binden... ist das eine benutzerdefinierte Funktion? > > Hintergrund - ich habe es unter großen Schmerzen geschafft einen neuen > Build zu erzeugen und würde den gerne testen. in der (veralteten) Doku wird FileTime() als Funktionsname genannt. Das Thema war in Pablos Newsgroup aufgekommen, aber Jimmy sollte das besser wissen ... Navigation: Reference > Classes > FileTime() dies war das Beispiel PRG, das ich gesehen hatte, wobei im Original direkt oft := FileTime64():New() aufgerufen wurde und ich es auf zwei Schritte aufgeteilt habe um zu zeigen, dass FileTime64() NIL zurückliefert. #include "ot4xb.ch" proc main local oft := FileTime64() if oft=NIL ? "FileTime64() = NIL" endif oft := oft:New() oft:now(.T. ) use .T. to get local time instead of GTM ? oft:cTimeStamp ? oft:GetTimeStamp19() ? oft:_GetTimeStamp_("%04.4hu%02.2hu%02.2hu%02.2hu%02.2hu%02.2hu.%03.3hu") ? oft:_GetTimeStamp_("Year:%04.4hu Month:%02.2hu Day:%02.2hu Hour: %02.2hu Minute: %02.2hu Secconds: %02.2hu Milliseconds: %03.3hu") inkey(0) return |
![]() | Thomas Braun | Re: ot4xb FileTime64() geht seit RC1 nicht mehr on Thu, 23 Oct 2014 17:46:10 +0200 Hubert Brandel wrote: > Navigation: Reference > Classes > FileTime() > > dies war das Beispiel PRG, das ich gesehen hatte, wobei im Original > direkt oft := FileTime64():New() aufgerufen wurde und ich es auf zwei > Schritte aufgeteilt habe um zu zeigen, dass FileTime64() NIL zurückliefert. Ah - OK, also kommt schon das Klassenobjekt nicht aus der Funktion zurück. Ein recompile hilft da leider auch nicht (hab ich eben getestet), ich fürchte das hier größere Source-Umbauten nötig sind, damit das wieder geht. Mein C/C++-Wissen ist allerdings so minimal das ich nicht wirklich sehe was da falsch sein könnte - und ob (und wie) man mit der Visual C++ Express Version diesen Xbase++ / C++ DLL-Mischmasch debuggen kann weiß ich auch nicht wirklich. Ich glaube da hilft nur Pablo zu kontaktieren. grüße Thomas |
![]() | Hubert Brandel | Re: ot4xb FileTime64() geht seit RC1 nicht mehr on Fri, 24 Oct 2014 08:23:56 +0200 Ich habe von Pablo eine Nachricht erhalten, dass er aktuell viel zu tun hat, aber die Kompatibilität mit der Xbase 2.0 auf der Liste steht ... Für FileTime64() gibt es aber einfachen und besseren Ersatz, DIRECTORY() liefert alle 3 Zeiten, man kann es auch auf eine Datei beschränken und man muss die Datei nicht öffnen |
![]() | Hubert Brandel | Re: ot4xb FileTime64() geht seit RC1 nicht mehr on Thu, 23 Oct 2014 16:56:56 +0200 Der Ursprung der Frage kam von hier: http://www.xbwin.com/forum.html Subject FileTime64() returns always NIL From Markus Date Tue, 07 Oct 2014 11:37:49 +0200 Newsgroups ot4xb.public |