Silverfrost Forums

Welcome to our forums

SetEnvironmentVariable

6 Sep 2016 12:47 #17982

Running SetEnvironmentVariable with 32-bit version it works fine. Running it with /64 I get the following run-time error:

Within file SALFLIBC64.DLL in MAKE_CSTRING@ at address af Within file bOper64.EXE in CB_BBMAN at address 183 Within file CLEARWIN64.DLL In _permit_callback_in_window at 1E0 In _send_text_message at B61 In _yield_program_control at 342 In _winio at 1390 In WINDOW_PRINTF$$ at 10A Within file bOper64.EXE in BOPER at address 569

The parameters are the same in 32-bit version and are looking correct. Any idea?

6 Sep 2016 2:53 #17983

We could run some tests on MAKE_CSTRING@ but it would help if you were able to:

  1. provide the address in MAKE_CSTRING@ at the point of failure (i.e. provide more details from the trace back that you have outlined

  2. provide a small sample program that generates the error.

6 Sep 2016 8:24 #17988

here is my example:

!---------------------------------------------------------------------
    MODULE testData

    IMPLICIT NONE
    CHARACTER*32   cNewOP

    END MODULE testData
!---------------------------------------------------------------------
    PROGRAM test

    USE testData
    IMPLICIT NONE
    INTEGER  IRET
    INTEGER, EXTERNAL :: CB_BBman

    cNewOP = 'RITA'
    IRET = CB_BBman ()
    IRET = IRET

    END PROGRAM test
!---------------------------------------------------------------------
   INTEGER FUNCTION CB_BBman ()

   USE testData
   IMPLICIT NONE
   INCLUDE      <win32api.ins>
   INTEGER       lenOP, J
   LOGICAL       L

   lenOP  = LEN_TRIM(cNewOP)
   IF (lenOP .GE. 2) THEN
      L = SetEnvironmentVariable ('Bingo_Operator', cNewOP(1:lenOP))
      L = L
   ENDIF

!   J = START_PROCESS_AND_WAIT@ ('BBman', ' ', 0)
!   J = J

   CB_BBman = -1
   RETURN
   END FUNCTION CB_BBman
!---------------------------------------------------------------------
6 Sep 2016 9:35 #17990

Please download and try the new DLLs making sure to create a backup of the existing DLLs.

https://www.dropbox.com/s/mgg3yuaxd1ziz56/newDLLs3.zip?dl=0

7 Sep 2016 1:53 #17994

The small test program is running, but the application not yet. I will go ahead with testing.

9 Sep 2016 11:20 #18005

Compilation of my application inside PLATO provides now: Compiling and linking file: bOper64.f90 $ SALF [SLINK/Win32 v1.45 Copyright (c) Silverfrost Ltd. 1995-2013] *** Don't understand: SALF *** Compilation abandoned Compilation failed. Before and behind each 'SALF' are some unprintable signs.

Compiling and linking outside works ok, but the program crashes with Acces violation ... and Within file CLEARWIN64.DLL In _unlock at address B09 In MAKE_CSTRING$ at address 4B Within file boper64.exe in CB_BBMAN in line 6331, at address 10c Within file CLEARWIN64.DLL In _send_text_message at address B41 In _yield_program_control at address 342 In _winio at address 1390 In WINDOW_PRINTF$$ at address 10A Within file boper64.exe in BOPER in line 3541, at address 548 However, the program has only 213 lines.

12 Sep 2016 9:15 #18008

This probably won't be relevant but a bug has been identified that occurs when users have 32GB or more of RAM installed. Users who have 32GB or more RAM will need a new salflibc64.dll.

12 Sep 2016 9:49 #18009

Yes, I have 64GB RAM installed. My salflibc64.dll is dated 06.09.2016. Is that already the latest one?

12 Sep 2016 10:06 #18010

No. I will need to upload a new salflibc64.dll. I may not be able to do this before tomorrow morning.

13 Sep 2016 5:57 #18014

Here is a link for downloading a new set of DLLs. Please don't forget to backup the current DLLs before copying the new ones.

https://www.dropbox.com/s/v21409mvk4tqpum/newDLLs4.zip?dl=0

In fact the bug that has just been fixed relates to RAM sizes greater than 32GB (not 32GB or more as stated above).

13 Sep 2016 6:36 #18015

It works fine now! javascript:emoticon(':D')

Please login to reply.