PDA

View Full Version : Problem with latest version of thinBASIC



GSAC3
18-05-2008, 04:28
Eros:

The latest version of thinBASIC (downloaded today, 17 May 08) when installed under 98SE produces the following error message when trying to run any thinBASIC script:

"THINCORE.DLL can not start..."

Any idea what I am doing wrong?

Don

matthew
18-05-2008, 04:41
Hi GSAC, I'm not sure if the new version of thinBasic works with Windows 98. :(

There's a thread here (http://community.thinbasic.com/index.php?topic=1435.0) about cancelling support for older versions of Windows.

Michael Hartlef
18-05-2008, 09:18
To my understanding, the Windows98 cord gut cut after 1.6.0.7.

Petr Schreiber
18-05-2008, 09:26
Hi,

I think Eros always speaks about WindowsXP+ thinBASIC as 2.x series, so I think we are not there yet.
I have a Windows98 ( but not SE) PC at home, so I can check.


Petr

ErosOlmi
19-05-2008, 10:24
Hi all,

thinBasic series 1.x... will be compatible with Win9x systems.
We will stop this compatibility from version 2.x...

That said, we didn't had time to test thinBasic 1.6.0.8 under Win9X systems so I'm sure I've introcuced the usage of some function not supported by Win9x.

GSAC3, I'm sorry about that. Please use the following link to go back to previous version just in case you do not have a copy: http://www.thinbasic.org/public/applications/thinbasic/thinBasic_1.6.0.7.zip

I will investigate ASAP about this problem and get back soon.

Regards
Eros

ErosOlmi
19-05-2008, 15:11
I'm sorry to say that the latest Win9x compatible version of thinBasic is 1.6.0.0 http://www.thinbasic.org/public/applications/thinbasic/thinBasic_1.6.0.0.zip

There must be something wrong in our test scripts.

There are 2 functions used by thinCore that are not compatible with Win9X:
SHBindToParent (SHELL32.DLL)
CoWaitForMultipleHandles (OLE32.DLL)

Problem is that I'm not able to find where they are used. Maybe an indirect usage.
I'm checking.

Eros

GSAC3
19-05-2008, 15:46
Eros:

Thanks very much for your feedback. I will revert to 1.6.0.0 on my older 98SE PC.
Since I knew from your previous messages that WINDOWS 98 compatibility would end with 2.0.0.0, I thought I might have installed 1.6.0.8 incorrectly on my 98SE system.

Don

Petr Schreiber
19-05-2008, 16:33
Eros,

I have found following:


It is usually straightforward to develop your own replacements for functions that have appeared in shell version 4.71. For example, the SHBindToParent API mentioned above can be substituted by the following steps:

1. Obtain the parent PIDL of the item, by direct manipulation of the SHITEMID list.
2. Use desktop's BindToObject to obtain the required interface.


Source: Shell basics (http://netez.com/2xExplorer/shellFAQ/bg_shell.html)

Maybe it could help ?


Petr

ErosOlmi
19-05-2008, 16:34
Yes, it helps, thanks.
But there is something else.
I'm checking ...

ErosOlmi
20-05-2008, 15:07
Ok, I've found the problem.
I was using function "GetVolumeNameForVolumeMountPointA (http://msdn.microsoft.com/en-us/library/aa364994(VS.85).aspx)" (what a nice name :D ) from KERNEL32.
That function is not present in Win9x systems.

Very soon an update to get back Win9x compatibility.
Maybe I will just fix current version 1.6.0.8

Regards
Eros

Petr Schreiber
20-05-2008, 16:40
How did you found it?,

I think GSAC3 will be very happy, ( and me too as I can finally install thinBASIC on Win98 laptop :) ).
Do not worry about the length of command, Newton Game Dynamics provides functions such a "NewtonMaterialContactRotateTangentDirections" ;D


Thanks,
Petr

ErosOlmi
20-05-2008, 19:03
Just updated thinBasic 1.6.0.8

Now it should be compatible again with Win9x systems.
We have also added request from Kent about possibility to collapse thinAir Code browser window (see request (http://community.thinbasic.com/index.php?topic=1747.msg12736#msg12736)).

Regards
Eros

ErosOlmi
21-05-2008, 06:15
How did you found it?,

Well, I had no idea at first. Than Roberto remembered me that our DLLs are compressed with UPX. So I un-compress thinCore.dll and ... voilla: the OS gave me a message box with the name of the missing function.