Recent Posts

Pages: [1] 2 3 ... 10
1
Announcements / BCX Help Version 7.4.6, March 25 2020
« Last post by Robert on March 25, 2020, 10:36:36 PM »
BCX Help Version 7.4.6, March 25 2020 

is available as BCXHelp Version 7.4.6 20200325.zip
in the Announcements section of the BCX forum at

https://bcxbasiccoders.com/smf/index.php

Changes include
 
Robert Wishlaw 

... modified the LINE INPUT from file example and added a note stating
    "Note well: Any line with a length of more than 2048 bytes will be truncated."

... modified the example on the BOOL$ page adding a test for -1.

... revised the Error Handling and Messages from the BCX Translator page.

... added, to the BCX Scripting Procedures page a note stating that the BCX VBS scripting procedures are 32 bit only.
    The Microsoft msscript component was not ported to 64 bit.

2
Announcements / Bcx 7.4.6 Available for Download
« Last post by MrBcx on March 25, 2020, 07:54:56 PM »
First things first ... please be safe during these difficult times.


This is a minor update ... there have been no other issues raised in almost a month.

https://bcxbasiccoders.com/archives/YahooGroups/Bcx_Files_New/Bcx746.zip

**********************************************************************************************
2020/03/25: Changes in 7.4.6 from 7.4.5
**********************************************************************************************
2020/02/23: James Fuller suggested reducing FileIO from 1MB to 2K to help prevent mem overrun
            MrBcx applied changes to Finput, Line Input, ListBoxLoadFile, ComboBoxLoadFile
3
Bug Reports / Re: Bug or feature ?(termination of GUI applications)
« Last post by MrBcx on March 21, 2020, 11:10:48 AM »

Copying from the Pelle's C povars batch files, 32 bit should be

Code: [Select]
SET PELLESLIB=C:\PellesC\Lib;C:\PellesC\Lib\Win
64  bit

Code: [Select]
SET PELLESLIB=C:\PellesC\Lib;C:\PellesC\Lib\Win64

I re-uploaded my version with your change to the 32-bit path.

If an industrious person wanted to update CompilerManager, adding options for the various 64-bit compiles would be useful.
4
Bug Reports / Re: Bug or feature ?(termination of GUI applications)
« Last post by Robert on March 20, 2020, 08:47:56 PM »
I know Sebastian uploaded an updated MainBatch.bat file.

I'm attaching another version of MainBatch.bat that allows Pelles to also compile
GUI, Console, and Dll using the Pelles Driver Program cc.exe , as in the original.

The trick to getting cc.exe to work again was to add the Pelles Library Path for the linker

/LIBPATH:%PELLESLIB%

CC invokes the compiler and linker in one statement instead of two.

Code: [Select]
:: PELLESLIB added by MrBcx Mar 2020
SET PELLESLIB=C:\PellesC\lib\win\



Code: [Select]
:Pelles
IF EXIST %3.res GOTO res
IF NOT EXIST %3.rc GOTO nores
ECHO Compiling resources.....
%PELLESPATH%porc.exe %3.rc  /fo %3.res
:res
IF EXIST %3.res SET RESFILE=%3.res
:nores
ECHO Compiling %3.c with Pelles C
if "%2"=="GUI" goto PellesGui
if "%2"=="DLL" goto PellesDll

%PELLESPATH%cc /Go /Gn /W1 /Gd /Ze /Zx /Tx86-coff /D_WIN32_WINNT=0x501 %3.c /machine:x86 /subsystem:console /LIBPATH:%PELLESLIB% %RESFILE% %3.obj   %4 %5 %6 %7
goto done

:PellesDll
%PELLESPATH%cc /Go /Gn /W1 /Gd /Ze /Zx /Tx86-coff /D_WIN32_WINNT=0x501 %3.c -OUT:%3.dll     -DLL /LIBPATH:%PELLESLIB%  %3.obj %RESFILE% %4 %5 %6 %7 
goto done

:PellesGui
%PELLESPATH%cc /Go /Gn /W1 /Gd /Ze /Zx /Tx86-coff /D_WIN32_WINNT=0x501 %3.c  -subsystem:windows /LIBPATH:%PELLESLIB% %3.obj %RESFILE% %4 %5 %6 %7 
goto done


Copying from the Pelle's C povars batch files, 32 bit should be

Code: [Select]
SET PELLESLIB=C:\PellesC\Lib;C:\PellesC\Lib\Win
64  bit

Code: [Select]
SET PELLESLIB=C:\PellesC\Lib;C:\PellesC\Lib\Win64
5
Bug Reports / Re: Bug or feature ?(termination of GUI applications)
« Last post by MrBcx on March 20, 2020, 08:40:47 AM »
I know Sebastian uploaded an updated MainBatch.bat file.

I'm attaching another version of MainBatch.bat that allows Pelles to also compile
GUI, Console, and Dll using the Pelles Driver Program cc.exe , as in the original.

The trick to getting cc.exe to work again was to add the Pelles Library Path for the linker

/LIBPATH:%PELLESLIB%

CC invokes the compiler and linker in one statement instead of two.

Code: [Select]
:: PELLESLIB added by MrBcx Mar 2020
SET PELLESLIB=C:\PellesC\lib\win\



Code: [Select]
:Pelles
IF EXIST %3.res GOTO res
IF NOT EXIST %3.rc GOTO nores
ECHO Compiling resources.....
%PELLESPATH%porc.exe %3.rc  /fo %3.res
:res
IF EXIST %3.res SET RESFILE=%3.res
:nores
ECHO Compiling %3.c with Pelles C
if "%2"=="GUI" goto PellesGui
if "%2"=="DLL" goto PellesDll

%PELLESPATH%cc /Go /Gn /W1 /Gd /Ze /Zx /Tx86-coff /D_WIN32_WINNT=0x501 %3.c /machine:x86 /subsystem:console /LIBPATH:%PELLESLIB% %RESFILE% %3.obj   %4 %5 %6 %7
goto done

:PellesDll
%PELLESPATH%cc /Go /Gn /W1 /Gd /Ze /Zx /Tx86-coff /D_WIN32_WINNT=0x501 %3.c -OUT:%3.dll     -DLL /LIBPATH:%PELLESLIB%  %3.obj %RESFILE% %4 %5 %6 %7 
goto done

:PellesGui
%PELLESPATH%cc /Go /Gn /W1 /Gd /Ze /Zx /Tx86-coff /D_WIN32_WINNT=0x501 %3.c  -subsystem:windows /LIBPATH:%PELLESLIB% %3.obj %RESFILE% %4 %5 %6 %7 
goto done

6
Bug Reports / Re: Bug or feature ?(termination of GUI applications)
« Last post by massel_co on March 20, 2020, 06:05:27 AM »
Thanks to you all.

I adjusted mainbatch.bat according to your example to work with CON, GUI and DLL of PellesC 9.0 (see attachment). It seems to work.
Now I am hopefully up to date with my system.
Have a nice weekend!
7
Bug Reports / Re: Bug or feature ?(termination of GUI applications)
« Last post by Robert on March 20, 2020, 03:21:40 AM »
 
As I want a real termination of the process I add a END statement:
 

If seems Dialog Converter emits the BCX keyword CLOSEDIALOG which emits the Win32 API EndDialog which
should only be used for processes created by one of the Windows API dialogbox functions.

https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-enddialog

You made a good decision to use END which forced BCX to emit ExitProcess.

For What It's Worth (Stop, Hey What's That ....), Dindo's Dialog Converter 3.4 emits

Code: [Select]

' *************************************************************************
    Case WM_CLOSE
' *************************************************************************

' *************************************************************************
    Case WM_DESTROY
' *************************************************************************
        PostQuitMessage(0)


perhaps earlier versions of Dialog Converter emitted  CLOSEDIALOG

8
Bug Reports / Re: Bug or feature ?(termination of GUI applications)
« Last post by MrBcx on March 19, 2020, 05:44:01 PM »

@MrBcx: Could you provide an updated version of mainbatch.bat for use with PellesC version 9? I seem to have a library path problem.

Greetings,
Sebastian

Sebastian ... attached is a quick hack that allowed me to compile CONSOLE apps using PELLES 9.0

If you need to compile a GUI or DLL with Pelles, you should be able to use the hack as a guide.

Sorry ... I have my hands full right now or I'd put more effort into it.

9
Bug Reports / Re: Bug or feature ?(termination of GUI applications)
« Last post by massel_co on March 19, 2020, 04:15:25 PM »
Hi,

Thanks for the replies.
As you may have noticed I compiled my files with the PellesC from the distribution (version 7).
That is why I didn't got an error on the forgotten cast (FARPROC). I updated the code as you suggested and dropped the CLOSEDIALOG.

Finally I found out the problem with the original CompilerManager.bas:
As I have spaces in the paths to the compiler etc. it is necessary to put quotes around the file path calls (with ENC$).
I enclosed the revised version (cm.bas).
Additionally the connected batch files have to be modified. With PellesC version 7 the BCX Compiler Manager works now well.


@Robert: The resource files of the DLL are included in the attachment GUI_Problem.zip (see below). The original version of the files was from 2005 and the resources of GUI_Problem is directly coded as you see (no old sources remained). If you see anything to optimize please tell. I have already downloaded the new dc.


I will try to use PellesC (version 9) in future.
I already reconfigured PellesC.bat and povars32.bat.
@MrBcx: Could you provide an updated version of mainbatch.bat for use with PellesC version 9? I seem to have a library path problem.

Greetings,

Sebastian
10
Bug Reports / Re: Bug or feature ?(termination of GUI applications)
« Last post by MrBcx on March 19, 2020, 12:04:48 PM »

The same issue occurred with a small DLL testing application I build. In this application the GUI application calls a DLL that uses its own dialogue. If i.e. the dialogue of the GUI application was closed while it was running (shortly after pressing the button "Show progress bar") the GUI window was hidden but not terminated (see GUI_Problem.zip) and the DLL dialogue remained.
Maybe the problem is related here to the fact that I use DOEVENTS() to be able to stop the GUI process again with the same button.
With the END statement the GUI application + plus the DLL were terminated as expected.

Maybe the effect is only there if more or less asynchronous program parts are used.

I run BCX 7.45 and PellesC on Win 7 Pro SP1 (64 bit).

Two things about this ...

1) I had to add a cast here:

  lpfnOldProc = (FARPROC) GetProp(hWnd, "oldproc")

2)
This is not necessary and should be removed. 
  CASE WM_CLOSE
  CLOSEDIALOG


I was able to toggle the Show/Hide Progress bar button multiple times and click the Close button with no unwanted side effects.

Pages: [1] 2 3 ... 10