View previous topic :: View next topic |
Author |
Message |
EKruck
Joined: 09 Jan 2010 Posts: 224 Location: Aalen, Germany
|
Posted: Tue Sep 06, 2016 1:47 pm Post subject: SetEnvironmentVariable |
|
|
Running SetEnvironmentVariable with 32-bit version it works fine.
Running it with /64 I get the following run-time error:
Quote: | 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? |
|
Back to top |
|
|
PaulLaidler Site Admin
Joined: 21 Feb 2005 Posts: 7925 Location: Salford, UK
|
Posted: Tue Sep 06, 2016 3:53 pm Post subject: |
|
|
We could run some tests on MAKE_CSTRING@ but it would help if you were able to:
a) provide the address in MAKE_CSTRING@ at the point of failure (i.e. provide more details from the trace back that you have outlined
b) provide a small sample program that generates the error. |
|
Back to top |
|
|
EKruck
Joined: 09 Jan 2010 Posts: 224 Location: Aalen, Germany
|
Posted: Tue Sep 06, 2016 9:24 pm Post subject: |
|
|
here is my example:
Code: | !---------------------------------------------------------------------
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
!---------------------------------------------------------------------
|
|
|
Back to top |
|
|
PaulLaidler Site Admin
Joined: 21 Feb 2005 Posts: 7925 Location: Salford, UK
|
|
Back to top |
|
|
EKruck
Joined: 09 Jan 2010 Posts: 224 Location: Aalen, Germany
|
Posted: Wed Sep 07, 2016 2:53 pm Post subject: |
|
|
The small test program is running, but the application not yet. I will go ahead with testing. |
|
Back to top |
|
|
EKruck
Joined: 09 Jan 2010 Posts: 224 Location: Aalen, Germany
|
Posted: Fri Sep 09, 2016 12:20 pm Post subject: |
|
|
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. |
|
Back to top |
|
|
PaulLaidler Site Admin
Joined: 21 Feb 2005 Posts: 7925 Location: Salford, UK
|
Posted: Mon Sep 12, 2016 10:15 am Post subject: |
|
|
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. |
|
Back to top |
|
|
EKruck
Joined: 09 Jan 2010 Posts: 224 Location: Aalen, Germany
|
Posted: Mon Sep 12, 2016 10:49 am Post subject: |
|
|
Yes, I have 64GB RAM installed. My salflibc64.dll is dated 06.09.2016. Is that already the latest one? |
|
Back to top |
|
|
PaulLaidler Site Admin
Joined: 21 Feb 2005 Posts: 7925 Location: Salford, UK
|
Posted: Mon Sep 12, 2016 11:06 am Post subject: |
|
|
No. I will need to upload a new salflibc64.dll.
I may not be able to do this before tomorrow morning. |
|
Back to top |
|
|
PaulLaidler Site Admin
Joined: 21 Feb 2005 Posts: 7925 Location: Salford, UK
|
Posted: Tue Sep 13, 2016 6:57 am Post subject: |
|
|
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). |
|
Back to top |
|
|
EKruck
Joined: 09 Jan 2010 Posts: 224 Location: Aalen, Germany
|
Posted: Tue Sep 13, 2016 7:36 am Post subject: |
|
|
It works fine now! javascript:emoticon('') |
|
Back to top |
|
|
|