PureBasic 3.93 beta 3 for Windows released

Developed or developing a new product in PureBasic? Tell the world about it.
Antdizzle
User
User
Posts: 21
Joined: Sun Mar 28, 2004 2:38 am
Location: United States
Contact:

Post by Antdizzle »

You can make a wrapper of Purebasic commands if they are for your use only.
User avatar
NoahPhense
Addict
Addict
Posts: 1999
Joined: Thu Oct 16, 2003 8:30 pm
Location: North Florida

Post by NoahPhense »

OMG.. you guys are at this again.. just find the old thread

- np
Fred
Administrator
Administrator
Posts: 18162
Joined: Fri May 17, 2002 4:39 pm
Location: France
Contact:

Post by Fred »

The english doc is finished, you can grab it here: www.purebasic.com/beta/PureBasic.chm so there is no excuse to not use the beta anymore 8) . Feel free to tell us if there is something missing..
Karbon
PureBasic Expert
PureBasic Expert
Posts: 2010
Joined: Mon Jun 02, 2003 1:42 am
Location: Ashland, KY
Contact:

Post by Karbon »

Then why isn't it PureBasic 3.93? *grin*

As soon as I get the source to COMLIB or get in touch with aXend, I'll be using it...
-Mitchell
Check out kBilling for all your billing software needs!
http://www.k-billing.com
Code Signing / Authenticode Certificates (Get rid of those Unknown Publisher warnings!)
http://codesigning.ksoftware.net
User avatar
Derlidio
User
User
Posts: 77
Joined: Fri Feb 27, 2004 9:19 pm
Location: SP - Brazil

Post by Derlidio »

I had this construction in my code, which was compiling OK on 3.92:

Code: Select all

CopyMemory(@UserGUID, *AppDesc + OffsetOf(DPN_APPLICATION_DESC,guidApplication), SizeOf(GUID))
Now, with 3.93 beta 3 it doesn't compile anymore. Compiler complains about a Syntaxe Error in the expression. Am I missing something?

- Derlidio
Derlidio Siqueira
User avatar
Derlidio
User
User
Posts: 77
Joined: Fri Feb 27, 2004 9:19 pm
Location: SP - Brazil

Post by Derlidio »

Ok... the problem seems to be with OffsetOf() function.

This code also doesn't work:

Code: Select all

Structure Test
  X.l
  Y.l
EndStructure

Address = OffsetOf(Test,Y)

Debug Address
Compiler complains about a Syntaxe Error in the line of OffsetOf(). Was that function removed from the language core?

- Derlidio
Derlidio Siqueira
traumatic
PureBasic Expert
PureBasic Expert
Posts: 1661
Joined: Sun Apr 27, 2003 4:41 pm
Location: Germany
Contact:

Post by traumatic »

Derlidio wrote:Compiler complains about a Syntaxe Error in the line of OffsetOf(). Was that function removed from the language core?
No, the syntax changed =>
viewtopic.php?t=14124
Good programmers don't comment their code. It was hard to write, should be hard to read.
User avatar
Derlidio
User
User
Posts: 77
Joined: Fri Feb 27, 2004 9:19 pm
Location: SP - Brazil

Post by Derlidio »

Thanks! Would not figure it out on my own...

- Derlidio
Derlidio Siqueira
Pupil
Enthusiast
Enthusiast
Posts: 715
Joined: Fri Apr 25, 2003 3:56 pm

Post by Pupil »

@Derlidio

I think the syntax has changed, or at least i asuming that from reading other post on this forum today.

The new syntax seems to be like this:
OffsetOf(structure\item)

so your example would look like this:
Address = OffsetOf(Test\Y)
Doobrey
Enthusiast
Enthusiast
Posts: 218
Joined: Sat Apr 26, 2003 4:47 am
Location: Dullsville..population: me
Contact:

Post by Doobrey »

Fred wrote: Nothing change here, it allows you to use your dll in VC++ (or any other compilers) for your own projects easily.
Ah..but what about the other use for .lib files? :wink:
freedimension
Enthusiast
Enthusiast
Posts: 613
Joined: Tue May 06, 2003 2:50 pm
Location: Germany
Contact:

Post by freedimension »

Ah, the new sort functions are good, but the whole lib would be even more complete if there were two more functions with callbacks:

Code: Select all

UserSortStructuredArray(ArrayName(), @SortProc() [, Start, End]))
UserSortStructuredList(ListName(), @SortProc() [, Start, End]))
Where the SortProc() could look like this (very simple example, the procedure though is meant to be used in more complicated situations):

Code: Select all

Procedure SortProc(*a.myStruct, *b.myStruct)
  If *a\myElement > *b\myElement
    result = 1
  ElseIf *a\myElement < *b\myElement
    result = -1
  Else
    result = 0
  Endif
  ProcedureReturn result
EndProcedure
<°)))o><²³
Lebostein
Addict
Addict
Posts: 826
Joined: Fri Jun 11, 2004 7:07 am

Post by Lebostein »

Hera a simple "error" in the new manual (see history):
Added: KeyboardMode() (wasn't in the doc)
Yes, now it is in the doc :D
traumatic
PureBasic Expert
PureBasic Expert
Posts: 1661
Joined: Sun Apr 27, 2003 4:41 pm
Location: Germany
Contact:

Post by traumatic »

fsw wrote: Somehow it's weird.

With other languages, C or Basic's, there is no such thing that userlibs (static libs) need to be recompiled, the only thing to watch for are cdecl or standard calls.
I'm sorry to bring up this thread again and being OT but I really had to smile while
reading this on the freebasic site:

Code: Select all

Version 0.12b released

[chged] IMPORTANT: the format of the internal string descriptor was modified to speed up concatenation of large strings, so you MUST recompile all the old code, don't reuse object files compiled with older versions (below v0.12b) and rebuild DLL's created in FB if they return or process STRING's passed to/from client EXE's (v1c)
Ok, I know what comes next: "Hey, it's still beta!" ;)
Good programmers don't comment their code. It was hard to write, should be hard to read.
Fred
Administrator
Administrator
Posts: 18162
Joined: Fri May 17, 2002 4:39 pm
Location: France
Contact:

Post by Fred »

:P
User avatar
fsw
Addict
Addict
Posts: 1603
Joined: Tue Apr 29, 2003 9:18 pm
Location: North by Northwest

Post by fsw »

traumatic wrote:
fsw wrote: Somehow it's weird.

With other languages, C or Basic's, there is no such thing that userlibs (static libs) need to be recompiled, the only thing to watch for are cdecl or standard calls.
I'm sorry to bring up this thread again and being OT but I really had to smile while
reading this on the freebasic site:

Code: Select all

Version 0.12b released

[chged] IMPORTANT: the format of the internal string descriptor was modified to speed up concatenation of large strings, so you MUST recompile all the old code, don't reuse object files compiled with older versions (below v0.12b) and rebuild DLL's created in FB if they return or process STRING's passed to/from client EXE's (v1c)
Ok, I know what comes next: "Hey, it's still beta!" ;)
Exactly :wink:
And it's only version 0.12....
Post Reply