The file ide\build.js contains the current build of twinBASIC. If it isn't available (or maybe it can't read it from Program Files, I'll have to test) the "missing version" message is displayed. I've added some code to help with this.
Printable View
The file ide\build.js contains the current build of twinBASIC. If it isn't available (or maybe it can't read it from Program Files, I'll have to test) the "missing version" message is displayed. I've added some code to help with this.
Updated the code to handle the new install and/or Program Files location issues. For now, if there is a problem recreating the twinBASIC folder it'll open the zip and the parent folder.
https://github.com/jdelano0310/GettbZip
I'll look further into asking for amin rights to handle it. This will at least get things working enough.
Coming along!
Two issues:
1. "Start twinBasic After Update" setting change is not saved. I turn this option off, exit the app, restart the app and the option is turned back on.
2. The "Version File Missing" issue is back. It had cleared up and now is happening again. Only thing I did was to update your app and then allow it to download and install today's release of tB.
Not clear but did you say you had made a change to prefill the Download folder on a new install? If you did, that's not working for me.
Might be wise to start logging the bugs on the github page for J's GettbZip?
Hi,
I have trouble using all release from 680 with code in Form_resize event routine:
if code is present in that routine the event fire in a infinite loop.
Anyone has the same behavior?
Try to describe it in more detail, do note that all code in the reszize event will occur practically each and every pixel of your drag to resize. If you want some code to run only at the end of a resize then you have a subclassing course to follow.
Ok, I have an old prj that RUN fine until release 679, from 680+ on RUN crash...
I have removed all code that not matter... an so I have only this:
Attachment 194274Code:[FormDesignerId("2F23F321-0EA1-460E-BF14-93ED610231F3")]
Class Form1
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Private Sub Form_Load()
txt_IN.Text = ""
End Sub
Private Sub Form_Resize()
txt_IN.Width = (Form1.Width - 500) / 2
End Sub
End Class
note: if I replace txt_IN with a new TXT component copying all property the problem fades away....
note2: if I paste txt_IN in a mint new Project It will crash on RUN...
So there is not problem! I will Replace the TextBox. Perhaps there is an incompatibility only with very old TB textbox...
Regards to All
twinBASIC status update:
twinBASIC Update: February 24, 2025
Highlights include an update to fafalone's twinBASIC ribbon demo sample project and a bug-hunting expedition as twinBASIC nears its v1.0 release date.
https://nolongerset.com/twinbasic-up...ruary-24-2025/
The latest releases of the twinBASIC programming IDE are available at https://github.com/twinbasic/twinbasic/releases
Receiving an nginx 502 gateway error on nolongerset.com
Works for me at this moment
Yeah it was down for a little while but it's back.
ok, created issue on github with attached project:
https://github.com/twinbasic/twinbasic/issues/2049
twinBASIC status update:
twinBASIC Update: March 4, 2025
Highlights include the return of UserControls from the ACTIVE project (missing since BETA 622), an Ambient Light Monitor ported from C++, and more high-priority bug hunting.
nolongerset.com/twinbasic-update-march-4-2025/
The latest releases of the twinBASIC programming IDE are available at https://github.com/twinbasic/twinbasic/releases
twinBASIC status update:
twinBASIC Update: March 11, 2025
Highlights include the beta release of the first twinBASIC-compiled version of XYplorer, fixes to long-standing tB IDE regressions, and an important WinDevLib bug fix release.
nolongerset.com/twinbasic-update-march-11-2025/
The latest releases of the twinBASIC programming IDE are available at https://github.com/twinbasic/twinbasic/releases
twinBASIC status update:
twinBASIC Update: March 19, 2025
Highlights include inline variable declaration in For...In and For...Each loops and a statement from Wayne on balancing VB6 back-compatibility and new features.
nolongerset.com/twinbasic-update-march-19-2025/
The latest releases of the twinBASIC programming IDE are available at https://github.com/twinbasic/twinbasic/releases
twinBASIC status update from NoLongerSet:
twinBASIC Update: March 24, 2025
Highlights include a critical bug fix for Excel Custom Task Pane development, tB's return to DevCon Vienna, and Windows Registry and System Tray sample projects from forliny.
nolongerset.com/twinbasic-update-march-24-2025/
The latest releases of the twinBASIC programming IDE are available at https://github.com/twinbasic/twinbasic/releases
twinBASIC status update from NoLongerSet:
twinBASIC Update: April 1, 2025
Highlights include 2D and 3D graphics engines converted for tB use, initial touchscreen support in the tB IDE form designer, and PacMan in tB!
nolongerset.com/twinbasic-update-april-1-2025/
The latest releases of the twinBASIC programming IDE are available at https://github.com/twinbasic/twinbasic/releases
The latest roadmap for the twinBASIC programming language is here:
twinBASIC status update from NoLongerSet:
twinBASIC Update: April 7, 2025
Highlights include an update to the twinBASIC roadmap, Mike's thoughts on the new release date, and your last chance to register for Mike's upcoming tB DevCon Vienna talk.
nolongerset.com/twinbasic-update-april-7-2025/
The latest releases of the twinBASIC programming IDE are available at https://github.com/twinbasic/twinbasic/releases
twinBASIC status update from NoLongerSet:
twinBASIC Update: April 15, 2025
Highlights include a new animated GIF control from fafalone, an autocomplete twinPACK from Krool, and a tB app to clean up VB6 comments from lfeche.
nolongerset.com/twinbasic-update-april-15-2025/
The latest releases of the twinBASIC programming IDE are available at https://github.com/twinbasic/twinbasic/releases
twinBASIC status update from NoLongerSet:
twinBASIC Update: April 21, 2025
Highlights include another community animated GIF project (this one with multi-threading!) and a tB wrapper for the BearLibTerminal library.
nolongerset.com/twinbasic-update-april-21-2025/
The latest releases of the twinBASIC programming IDE are available at https://github.com/twinbasic/twinbasic/releases
twinBASIC status update from NoLongerSet:
twinBASIC Update: April 29, 2025
Highlights include a new experimental multi-frame control for advanced code-free responsive tB layouts and the public release of Mike Wolfe's twinBasic Devcon Vienna talk.
nolongerset.com/twinbasic-update-april-29-2025/
The latest releases of the twinBASIC programming IDE are available at https://github.com/twinbasic/twinbasic/releases
twinBASIC status update from NoLongerSet:
twinBASIC Update: May 5, 2025
Highlights include a new Find/Replace dialog for the twinBASIC IDE, tB syntax highlighting in Notepad++, and a Picture Converter & Cropper tB sample project.
nolongerset.com/twinbasic-update-may-5-2025/
The latest releases of the twinBASIC programming IDE are available at https://github.com/twinbasic/twinbasic/releases
twinBASIC status update from NoLongerSet:
twinBASIC Update: May 12, 2025
Highlights include expanded support for creating Monaco editor shortcut keys, sokinkeso's CopyPasteEx Addin, and sample code to detect text language using Win APIs.
nolongerset.com/twinbasic-update-may-12-2025/
The latest releases of the twinBASIC programming IDE are available at https://github.com/twinbasic/twinbasic/releases
twinBASIC status update from NoLongerSet:
twinBASIC Update: May 19, 2025
Highlights include increased compile speed for large projects and a sample twinBASIC project for implementing Windows "Toast" notifications.
nolongerset.com/twinbasic-update-may-19-2025/
The latest releases of the twinBASIC programming IDE are available at https://github.com/twinbasic/twinbasic/releases
twinBASIC status update from NoLongerSet:
twinBASIC Update: May 26, 2025
Highlights include a sneak peek of a game-changing AI add-in for the twinBASIC editor, achieving 100% syntax coverage of VB6/VBA, and improved user control support in Access.
nolongerset.com/twinbasic-update-may-26-2025/
The latest releases of the twinBASIC programming IDE are available at https://github.com/twinbasic/twinbasic/releases
twinBASIC status update from NoLongerSet:
twinBASIC Update: June 2, 2025
Highlights include compiler performance improvements and a kernel-mode mini-filter driver sample project written in twinBASIC.
nolongerset.com/twinbasic-update-june-2-2025/
The latest releases of the twinBASIC programming IDE are available at https://github.com/twinbasic/twinbasic/releases
twinBASIC Update: June 10, 2025
twinBASIC programming language and IDE status update from NoLongerSet:
Highlights include a new [ComExport] attribute, a new "TWINBASIC_BUILD_TYPE" compiler constant, and the continued expansion of the WinDevLib project.
nolongerset.com/twinbasic-update-june-10-2025/
The latest releases of the twinBASIC programming IDE are available at https://github.com/twinbasic/twinbasic/releases
NoLongerSet have a number of articles about twinBASIC programming...
https://nolongerset.com/tag/twinbasic/
https://nolongerset.com/tag/twinbasic-weekly-update/
twinBASIC Update: June 16, 2025
twinBASIC programming language and IDE status update from NoLongerSet:
Highlights include a new [Flags] attribute for auto-assigning bit flag values, a Windows security PIN/facial recognition demo, and XYplorer goes 64-bit with tB's help.
nolongerset.com/twinbasic-update-june-16-2025/
The latest releases of the twinBASIC programming IDE are available at https://github.com/twinbasic/twinbasic/releases
Fafalone has updated and re-structured the twinBASIC Frequently Asked Questions (FAQ) documentation...
twinbasic/documentation/wiki/twinBASIC-Frequently-Asked-Questions-(FAQs)
One question, please, does TwinBasic accept variable declarations of this style made in VB6?
Dim CustomerName$
That is, does it accept variable declarations with suffixes?
Yes.
And does TwinBasic automatically declare undeclared variables in a subscript or function in a file?
That is, if these variables are not declared:
A1% = 1
Aw$ = "Hello"
X1# = 1.111432456356356
Y2! = 3.4904
T1& = 1177878789
P2@ = 123.45
Correct the code by adding something like this in the header of the subscript or function—if they are not declared at the beginning of the file, frm, bas, cls, ctl, page, etc., or as public in a bas module—:
Dim A1%
Dim Aw$
Dim X1#
Dim Y2!
Dim T1&
Dim P2@
That is, it doesn't set the variables changing them like this:
Dim A1 as Integer
Dim Aw as String
Dim X1 as Double
Dim Y2 as Single
Dim T1 as Long
Dim P2 as Currency
Or like this:
Dim A1 as Variant
Dim Aw as Variant
Dim X1 as Variant
Dim Y2 as Variant
Dim T1 as Variant
Dim P2 as Variant
And, with personal ctls - ocx -, is it many difficult to translate to TwinBasic?
Thanks in advance!!!
It doesn't add text declaring them it works the same way as VB6 where they're set up internally by the compiler.
Ctls and ocxs should largely work as-is without modification, minus some possible bugs, use of unimplemented features, and VB internals hacks. For instance if your UC self-subclasses you'll need to change the subclass method to the *much easier* SetWindowSubclass (in tB, AddressOf works on class/form/UC members).
James, a new thread is required for asking more questions I think.
Thanks, fafalone...
But I was referring more to compiling in 64-bit. Is it very difficult to adapt custom CTLs—I almost exclusively use my own CTLs—to compile in 64-bit?
My plan is to switch to TwinBasic. If I can contribute anything, I will. And if it goes well with the two programs I'm finishing, I'll do my best to contribute. It's a project that I believe does a lot of good - for me, the simpler and easier to work with a programming language is?, the better it is -. There are many people using VB6—I don't really like VB.NET—who would be doing them a favor if there's something the same or similar that compiles in 64-bit...
Another question: is there a website or extensive good documentation that answers a lot of questions? I'm sure this question has already been asked, but reading 50 pages with multiple messages is a hassle...!!!
Well, I wouldn't want to bother with questions that have already been answered...
Then, the AI ?? is very nice, in the sense that it sometimes doesn't often give good information. Claude told me that it's theoretically the best AI in programming, saying that TB needed everything to be declared... And as you've told me, it seems that's not the case...
And he told me that the personal CTLs are very complicated, which I don't think is that much, since they actually have very similar code to VB6. It's actually identical, except for a few detailed functions for the CTLs, like InitProperties and so on...
And Claude, okay, he solves a lot of things, but sometimes he gets really confused... I don't know what the people who handle the AI have going on, but if you don't know programming, you have almost nothing to do with the AIs. I've had to correct Claude several times because he gave me some codes that were clearly incomplete. Bad...
And very simple codes. He kept me going for two days with some functions to extract the variables from a sub or function, very simple, and I don't know why, he couldn't do anything. I asked him out of laziness, like, "Claude, do it for me, and I'll rest," but in the end I had to do it myself, and in about two hours, done, because it was very simple...
I'm very suspicious of AIs. I think they're manipulated, and every now and then, with very simple things, they start messing things up. They have that programming done on purpose, because it doesn't make sense that sometimes they don't work with very simple functions, and sometimes they work very well with much more complex ones...
Greetings, fafalone...
The difficulty really depends on how many APIs you use, whether and what kinds of VB internals hacks you use, and whether you work a lot with pointers. Also if you use any 3rd party ocx or DLL files -- these must be 64bit as well. In the future tB has plans to support 32bit ocxs in 64bit apps, but that's a v2.0 thing so not soon. If you don't have the source and the developer doesn't provide a 64bit build, you may need a replacement.
My WinDevLib project helps a lot. The best approach is to simply comment out all your Windows API defs and let it take over. Yes there's some signature differences as every VB programmer has their own preferences, but I've added overloads and consistent standards to help with that. Mostly it's tedious; you'll then have to go around and change a bunch of Long to LongPtr to fit the new APIs, search for anywhere you might have used pointer math with a hard coded pointer size, etc.
AIs can help, but they're not a replacement for actual programmers doing anything beyond boilerplate with numerous examples online. In particular for this, they tend to struggle with multiple indirection with pointers and catching the dozens of edge cases and gotchas; like it's never gotten it right when faced with a ByVal UDT and the trouble of handling that when VBx/tB can't (tB will at some point but not yet).