-
Mar 27th, 2021, 08:34 AM
#41
Re: TwinBasic
Originally Posted by WaynePhillipsEA
@baka, when it comes to cross-platform, the feature set will indeed have to be much more limited. Certainly no GDI/direct2d/etc, as you'd be better off running under WINE for such things.
That makes sense.
For me, any VB6 alternative needs to be able to run existing VB6 apps (on Windows).
That includes using ActiveXs and OCXs. And intrinsic controls. What about DAO and ADO, for example? Can they be used?
Would it be legal to use Microsoft controls?
And can 32bit ActiveXs/OCXs be used in 64bit apps?
Krools controls offer good alternatives to some of the MS OCXs, will they work too (I'm assuming so)?
Hopefully this will start to become clearer when the preview release becomes available.
My other concern is about the continued availability of the product - what happens if you lose interest/move on/find it's not profitable? Some form of Escrow (with release to open source if you stop selling the product) would be wise.
Last edited by VB6 Programming; Mar 27th, 2021 at 08:38 AM.
-
Mar 27th, 2021, 09:03 AM
#42
Re: TwinBasic
Originally Posted by VB6 Programming
That makes sense.
For me, any VB6 alternative needs to be able to run existing VB6 apps (on Windows).
That includes using ActiveXs and OCXs. And intrinsic controls. What about DAO and ADO, for example? Can they be used?
Would it be legal to use Microsoft controls?
And can 32bit ActiveXs/OCXs be used in 64bit apps?
Krools controls offer good alternatives to some of the MS OCXs, will they work too (I'm assuming so)?
Hopefully this will start to become clearer when the preview release becomes available.
My other concern is about the continued availability of the product - what happens if you lose interest/move on/find it's not profitable? Some form of Escrow (with release to open source if you stop selling the product) would be wise.
The first release will not support any GUI elements, as we are concentrating on creating a rock solid compiler that we can build everything else upon. That being said, we will certainly be supporting ActiveX and OCX controls once we get onto the GUI side of things soon.
twinBASIC already fully supports COM (early and late binding support). If I'm not mistaken, DAO/ADO were (/are?) part of MDAC which is freely available and redistributable and so are already supported in the upcoming release.
For supporting 32-bit OCXs in a 64-bit process, yes this is planned via a bridging process which should be compatible with most OCXs (but not all). Krools controls should work fine, as all OCXs will, though for full 64-bit support they likely require some work.
We are considering escrow options.
-
Mar 27th, 2021, 05:54 PM
#43
Re: TwinBasic
Originally Posted by WaynePhillipsEA
as we are concentrating on creating a rock solid compiler that we can build everything else upon.
Wayne, I'm sorry if I misunderstood, but the whole project, like the IDE, is compiled from this compiler?
-
Mar 28th, 2021, 12:36 AM
#44
Re: TwinBasic
Originally Posted by Episcopal
Wayne, I'm sorry if I misunderstood, but the whole project, like the IDE, is compiled from this compiler?
No, apologies; my bad choice of words.
The IDE is covered by VSCode plus the twinBASIC extension (written in JS). That extension connects directly to our compiler, which comprises the parser, compiler, debugger, linker, etc, all written in C++.
What I was trying to say was that we have been concentrating on creating a compiler that will provide a solid foundation to build the rest of the project around. The compiler is such a massive thing to get right on a project like this that we tackled it head on before touching other areas like the GUI designers.
-
Apr 6th, 2021, 11:31 AM
#45
Re: TwinBasic
TwinBasic are now saying "UPDATE: First preview release coming Friday (9th April 2021)"
At least the delays are getting shorter
I'm sure none of us on this forum are ever late delivering our software
-
Apr 6th, 2021, 05:24 PM
#46
Re: TwinBasic
the importance is that they are working on it and is going well without much troubles and bugs.
a couple delays here and there and ok as long they are honest with the reason.
we will see, but if they can predict just a 2 days delay it means they are close.
-
Apr 8th, 2021, 05:15 AM
#47
Re: TwinBasic
There is a new article about coding in TwinBasic.
TwinBasic uses VSCode as its IDE.
Writing Code in TwinBasic: Part 1
-
Apr 9th, 2021, 12:29 AM
#48
-
Apr 9th, 2021, 03:17 AM
#49
Re: TwinBasic PREVIEW DOWNLOAD
The TwinBasic Developer Preview 1 (v0.9.1502) download is now available ...
https://www.twinbasic.com/preview.html
TwinBasic uses VS Code as its IDE (you need to download this separately).
The plan seems to be that the 32bit Windows version will be free of charge, but for 64bit versions developers will need to buy a licence.
EDIT:
TwinBasic say:
This first version of twinBASIC will not offer any GUI (form) elements.
Once we have finalized and fixed up any bugs in the first release of twinBASIC, we will be focusing on three key areas over the coming weeks and months:
- Forms / GUI support, including full backwards compatibility with existing VB6 forms.
- Native compilation.
- Cross-platform compilation.
This preview version of twinBASIC can compile standalone EXE applications, as well as ActiveX DLLs that you can reference from other environments, like VBA.
TwinBasic state that most of the common VB language features are complete, however there are several important things to note. These issues will be fixed in the weeks ahead:-
- Compiles only to 32-bit. We wanted to focus on key areas in this preview, without getting distracted by users hitting 64-bit compilation issues that are not specific to twinBASIC. Plus we have some 64-bit linker issues to work through.
- Error numbers and descriptions don't always match VB yet
- Support for global variables (plus global constants, and predeclared objects) are currently disabled
- Late-bound calls to twinBASIC class objects are disabled (but late-bound calls to other normal COM objects are working fine)
- twinBASIC classes can’t yet expose events (but you can consume events from other COM classes via WithEvents)
- multi-threading only allowed via the debug console for now
- vbWatchdog support disabled
- Webserver extension library disabled
- The VBA.Interaction.* namespace is implemented but has little test coverage, so there may be issues
- The VBA.Strings.* namespace is implemented but has little test coverage, so there may be issues
- With-blocks not working with user defined Types (but working fine with objects)
- DllRegisterServer is not currently implemented in built ActiveX DLLs (the IDE registers it appropriately for now)
- Occasionally the file solution wont open and you can't access the files in the project. If that happens, close VS Code and open the code-workspace file again
Last edited by VB6 Programming; Apr 9th, 2021 at 04:06 AM.
-
Apr 9th, 2021, 04:44 AM
#50
Re: TwinBasic
Eleven downloads already! :-))
Edit: VS Code IDE needs getting used to but overall the compiler seems to work and is quite fast. Kudos!
cheers,
</wqw>
Last edited by wqweto; Apr 9th, 2021 at 04:57 AM.
-
Apr 9th, 2021, 05:26 AM
#51
Re: TwinBasic
What a bu@@er, I do not use Windows 10 for development and do not plan to either. So, I won't be able to test TwinBasic for the moment. What a pity. I suggest you chaps find alternatives for other versions of the Windows o/s. It needs to be accessible to more than just the current windows version. I understand the reasons - I am just one of those people that has absolutely no plans to use Windows 10 whilst any other solution exists.
-
Apr 9th, 2021, 05:34 AM
#52
Re: TwinBasic
Originally Posted by yereverluvinuncleber
What a bu@@er, I do not use Windows 10 for development and do not plan to either. So, I won't be able to test TwinBasic for the moment. What a pity. I suggest you chaps find alternatives for other versions of the Windows o/s. It needs to be accessible to more than just the current windows version. I understand the reasons - I am just one of those people that has absolutely no plans to use Windows 10 whilst any other solution exists.
It's purely untested on other OS at the moment. If you fancy being a guinea pig, give it a try anyway
We'll be testing on other OS's over the coming days and will rectify any issues found.
-
Apr 9th, 2021, 05:41 AM
#53
Re: TwinBasic
Originally Posted by WaynePhillipsEA
It's purely untested on other OS at the moment. If you fancy being a guinea pig, give it a try anyway
We'll be testing on other OS's over the coming days and will rectify any issues found.
First Class, I know VS Code runs on Win 7 - I will test and reply if there are any issues.
BTW I sent you some cash a while back for your Rubberduck add in, hope to do the same for TB.
-
Apr 9th, 2021, 05:56 AM
#54
Last edited by VB6 Programming; Apr 9th, 2021 at 06:00 AM.
-
Apr 9th, 2021, 06:03 AM
#55
Re: TwinBasic
Re: windows 10 - It is THAT bad, my own personal experiences have shown how bad it is for a poor desktop user. The white cog of doom has been encountered and my decision is made.
I do love working in Win 7 and XP but I do have Win10 for testing (only) and luckily I have my options!
VB6 and the o/s and now (VS code?) are my last Alamo-like holdouts for Microsoft products. I have open-sourced or found usable alternatives for all. Just VB and the underlying o/s to go, until then Win7 is my dugout.
Last edited by yereverluvinuncleber; Apr 9th, 2021 at 06:15 AM.
-
Apr 9th, 2021, 06:22 AM
#56
Member
Re: TwinBasic
That's pretty awesome and the integration with VSCode is fantastic. Kudos to the developers!
-
Apr 9th, 2021, 06:24 AM
#57
Lively Member
Re: TwinBasic
I tried the preview and it worked well.
The instruction on installing the compiler was a little vague (install from marketplace) but I ended sorting it ( Run, Install Additional debuggers/compilers, choose TwinBasic)
I can't wait to see how TwinBasic develops. I was kind of really devastated to see the Vb6 PlanetVb web site disappear so I am hoping all the uploaders will turn to TwinBasic and convert their old vb6 projects. I was a regular uploader to PlanetVb. It might be nice to get sent email updates on the progress of TwinBasic. I will definitely buy it when it becomes available (hoping its not too expensive, as I am a lowly paid teacher). I sent a few ex members of PlanetVB the details of Twinbasic.
I also ended up pledging my support for RadBasic, as I would like to see both compilers develop to be replacements for Vb6.
I played around with FreeBasic (32bit and 64bit) as well, but it seemed to lack gui drag and drop components like in Vb6 forms.
Wishing you well Wayne PhillipsEA
Regards Eddie Bole
-
Apr 9th, 2021, 07:23 AM
#58
Re: TwinBasic
Never had any problem with any version of W10 for developing VB6 applications.
My customers also have a wide range of W10 version.
-
Apr 9th, 2021, 08:18 AM
#59
Re: TwinBasic
I use both 7 & 10. but my primary OS is 7.
10 is still buggy for me, some tools dont work that I like to work with (paint shop pro 9) and my latest project is not working in 10, it will compile a buggy exe, while it works 100% in 7.
so, Im a bit sad that twibasic need 10 to work. when I get back home in 4 days, I will be trying it in 7. I can be a guinea pig as well.
-
Apr 9th, 2021, 08:51 AM
#60
Re: TwinBasic
Thanks everyone, glad to hear some of you have got it working already!
To those not on Win10... we hear you. There's no technical reason why the twinBASIC compiler won't work on earlier versions of Windows, it's just a matter of time and priorities for us to test (and possibly tweak) it properly.
-
Apr 9th, 2021, 09:15 AM
#61
New Member
Re: TwinBasic
OS: win7 ultimate x64 works with x32 compiled exe. When x64 compiler coming out?! good luck with the project!
-
Apr 9th, 2021, 11:15 AM
#62
Re: TwinBasic
Originally Posted by krita
OS: win7 ultimate x64 works with x32 compiled exe. When x64 compiler coming out?! good luck with the project!
Thanks for that, that is good news. Next on our agenda is sorting out the global variables support, and the late-binding of twinBASIC classes (IDispatch). After that, we will get to work on the changes for the x64 linker. We are certainly talking weeks, not years
-
Apr 9th, 2021, 11:29 AM
#63
Fanatic Member
Re: TwinBasic
Very good job, it works perfectly.
My support for this great project.
regards
-
Apr 9th, 2021, 02:27 PM
#64
Re: TwinBasic
Can TwinBasic open an existing .vbp file? I want to test Twin without downloading project files in an unknown format. I'm on Windows 10 latest updates. Thanks.
-
Apr 9th, 2021, 03:35 PM
#65
Re: TwinBasic
Originally Posted by TTn
Can TwinBasic open an existing .vbp file?
Not yet. TwinBasic say "In a future revision we will offer automatic migration from VB6 project files (.vbp)".
They seem to be suggesting it will be in "weeks not years".
-
Apr 10th, 2021, 10:04 AM
#66
Re: TwinBasic
Here is an outline of how to debug code in twinBASIC...
Debugging code in twinBASIC
Last edited by VB6 Programming; Apr 10th, 2021 at 10:37 AM.
-
Apr 10th, 2021, 12:27 PM
#67
Junior Member
Re: TwinBasic
Wayne,
Congrats for this milestone.
I think there is enough room for our projects and they could live side by side.
We talked before and we are kind each other
-
Apr 10th, 2021, 07:04 PM
#68
Re: TwinBasic
Originally Posted by radBasicHost
I think there is enough room for our projects and they could live side by side.
Would this be partnership or merger?
-
Apr 10th, 2021, 07:15 PM
#69
Junior Member
Re: TwinBasic
Originally Posted by Episcopal
Would this be partnership or merger?
None. At this moment friendly relationship.
We see in future...
Regards
Carles
-
Apr 10th, 2021, 10:01 PM
#70
Re: TwinBasic
Originally Posted by TTn
Can TwinBasic open an existing .vbp file? I want to test Twin without downloading project files in an unknown format. I'm on Windows 10 latest updates. Thanks.
No, not in preview 1. They will be supported in due course though, so watch this space.
-
Apr 10th, 2021, 10:03 PM
#71
Re: TwinBasic
Originally Posted by radBasicHost
Wayne,
Congrats for this milestone.
I think there is enough room for our projects and they could live side by side.
We talked before and we are kind each other
Thanks Carles, appreciated. I see that you have started your kickstarter campaign -- good luck with it!
-
Apr 11th, 2021, 12:27 AM
#72
Lively Member
Re: TwinBasic
Nice to see some extra information happening. I have contacted some programmers from the old PlanetVB site. They are eager to play around with the preview release. Hopefully TwinBasic eventuates into a replacement for VB6 and more. I sort of would like to see a few more examples of programs made with TwinBasic, but I guess the program still needs to be further developed.
-
Apr 11th, 2021, 01:58 AM
#73
Re: TwinBasic
I did a first simple test with TwinBasic with this code, using ADODB to make a query to an Access DB
Code:
Module TestADODB_Module
' This project type is set to 'Standard EXE' in the Settings file, so you need a Main() subroutine to run when the EXE is started.
Public Sub Main()
MsgBox ("Test ADODB" & vbcrlf & TestDB(),vbInformation+vbYesNoCancel)
End Sub
Public Function TestDB() as string
dim sConnection as string
sConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Twinbasic\test\test.mdb"
Return GetFieldFromID(sConnection, 1, "Products", "ProductName")
end Function
Public Function GetFieldFromID(sConnection as String, nID As Long, sTableName As String, sReturnField As String, Optional sFieldID As String = "ID", Optional sDefault As String) As String
' #VBIDEUtilsERROR#
On Error GoTo ERROR_getFieldFromID
Dim sSQL As String
Dim oRecord As ADODB.Recordset
Dim aRecords As Variant
sSQL = "Select Top 1 " & sReturnField & " From " & sTableName & " Where "
sSQL = sSQL & sFieldID & " = " & nID
Debug.Print sSQL
Set oRecord = New ADODB.Recordset
oRecord.Open sSQL, sConnection, adOpenForwardOnly, adLockReadOnly
aRecords = oRecord.GetRows()
If UBound(aRecords, 2) > -1 Then
GetFieldFromID = aRecords(0, 0)
Else
GetFieldFromID = IIf(IsMissing(sDefault), vbNullString, sDefault)
End If
EXIT_getFieldFromID:
On Error Resume Next
oRecord.Close
Set oRecord = Nothing
Erase aRecords
Exit Function
' #VBIDEUtilsERROR#
ERROR_getFieldFromID:
Debug.print Err.Description
Resume EXIT_getFieldFromID
End Function
End Module
And the result is good, even error handling
I had to do some modifications to the code.
So it seems a good start, but not yet any GUI
NB : I had to disable Kaspersky to make VSCode opening Twinbasic project.
I need to investigate the reason
Last edited by Thierry69; Apr 11th, 2021 at 02:01 AM.
-
Apr 11th, 2021, 04:01 AM
#74
Re: TwinBasic
Originally Posted by Thierry69
I did a first simple test with TwinBasic with this code, using ADODB to make a query to an Access DB
Code:
Module TestADODB_Module
' This project type is set to 'Standard EXE' in the Settings file, so you need a Main() subroutine to run when the EXE is started.
Public Sub Main()
MsgBox ("Test ADODB" & vbcrlf & TestDB(),vbInformation+vbYesNoCancel)
End Sub
Public Function TestDB() as string
dim sConnection as string
sConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Twinbasic\test\test.mdb"
Return GetFieldFromID(sConnection, 1, "Products", "ProductName")
end Function
Public Function GetFieldFromID(sConnection as String, nID As Long, sTableName As String, sReturnField As String, Optional sFieldID As String = "ID", Optional sDefault As String) As String
' #VBIDEUtilsERROR#
On Error GoTo ERROR_getFieldFromID
Dim sSQL As String
Dim oRecord As ADODB.Recordset
Dim aRecords As Variant
sSQL = "Select Top 1 " & sReturnField & " From " & sTableName & " Where "
sSQL = sSQL & sFieldID & " = " & nID
Debug.Print sSQL
Set oRecord = New ADODB.Recordset
oRecord.Open sSQL, sConnection, adOpenForwardOnly, adLockReadOnly
aRecords = oRecord.GetRows()
If UBound(aRecords, 2) > -1 Then
GetFieldFromID = aRecords(0, 0)
Else
GetFieldFromID = IIf(IsMissing(sDefault), vbNullString, sDefault)
End If
EXIT_getFieldFromID:
On Error Resume Next
oRecord.Close
Set oRecord = Nothing
Erase aRecords
Exit Function
' #VBIDEUtilsERROR#
ERROR_getFieldFromID:
Debug.print Err.Description
Resume EXIT_getFieldFromID
End Function
End Module
And the result is good, even error handling
I had to do some modifications to the code.
So it seems a good start, but not yet any GUI
NB : I had to disable Kaspersky to make VSCode opening Twinbasic project.
I need to investigate the reason
Thanks for trying out twinBASIC, @Thierry69!
With regards to the Kaspersky problem, it will be our compiler EXE triggering it. The file usually sits in the following folder:
C:\Users\{UserName}\.vscode\extensions\twinbasic.twinbasic-0.9.****\out\bin (where **** is the version number installed)
You may need to create an exception rule in Kaspsersky for now. Soon, we will be code-signing the compiler EXE, and this should help increase the reputation of the file over time, and then this problem should resolve.
-
Apr 11th, 2021, 04:34 AM
#75
Re: TwinBasic
There is a new release of twinBASIC, v0.9.1537.
It should update automatically.
See the Extensions view (button on left of screen, or View>Extensions from the menu).
You may need to restart if you have an older version.
-
Apr 11th, 2021, 06:09 AM
#76
Re: TwinBasic
Here is an article about creating an ActiveX DLL in twinBASIC
Creating a twinBASIC ActiveX DLL
-
Apr 11th, 2021, 06:17 AM
#77
Re: TwinBasic
Originally Posted by VB6 Programming
How do we create *new* workspaces for Std-EXE/Ax-DLL for twinBASIC within VS Code? Am I missing the menu option or do we have to copy these from the samples?
cheers,
</wqw>
Last edited by wqweto; Apr 11th, 2021 at 06:26 AM.
-
Apr 11th, 2021, 06:25 AM
#78
Re: TwinBasic
Originally Posted by wqweto
How do we create *new* workspaces for Std-EXE/Ax-DLL for twinBASIC within VS Code? Am I missing the menu option or do we have to copy these from the samples?
cheers,
</wqw>
You're right, please copy the helloworld project, and adjust as you need. Apologies, I know it's a pain at the moment in the preview.
If you rename the helloworld files, just note that the code-workspace and twinproj files need to be named identically for now (...except for the file extension of course).
-
Apr 11th, 2021, 06:26 AM
#79
Re: TwinBasic
Cloning sample Std-EXE it seems I cannot add second source file for some reason, neither under Sources node, nor under a sub-folder I successfully made under it
cheers,
</wqw>
-
Apr 11th, 2021, 06:33 AM
#80
Re: TwinBasic
Originally Posted by wqweto
Cloning sample Std-EXE it seems I cannot add second source file for some reason, neither under Sources node, nor under a sub-folder I successfully made under it
cheers,
</wqw>
Yes, this limitation is noted in the preview notes: https://www.twinbasic.com/preview.html
You can add as many components as you like to the single source file though. Sorry about that.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|