View previous topic :: View next topic |
Author |
Message |
wahorger
Joined: 13 Oct 2014 Posts: 1217 Location: Morrison, CO, USA
|
Posted: Sat Sep 23, 2017 10:10 pm Post subject: SALFLIBC.DLL gets set to 0 length |
|
|
I have had this problem on a couple of machines, where SALFLIBC.DLL gets reset to a zero length file. I cannot determine what goes bonkers or when. I usually notice it on my secondary computer. But just now, on the primary, PLATO would not successfully compile, link, and run. The error was "Target does not exist". I looked in the SilverFrost\Program Files folder, and there was the zero length DLL. Copied from the redist location and re-ran the build, and all was well.
Anyone else have this occur? Anyway to stop it from happening? |
|
Back to top |
|
|
LitusSaxonicum
Joined: 23 Aug 2005 Posts: 2390 Location: Yateley, Hants, UK
|
Posted: Sat Sep 23, 2017 10:18 pm Post subject: |
|
|
Antivirus problem? |
|
Back to top |
|
|
wahorger
Joined: 13 Oct 2014 Posts: 1217 Location: Morrison, CO, USA
|
Posted: Sun Sep 24, 2017 12:14 am Post subject: |
|
|
Never had my AV do this, even to an actual virus.
The closest I've been able to determine, if either the compiler or my application crashes horribly (i.e. no error dialog), then this file gets wiped. Even setting it to "Read-Only" doesn't help. Also, as a regular user, I can't get access to delete the file unless I go ADMIN and change the ownership and permissions.
Odd. |
|
Back to top |
|
|
mecej4
Joined: 31 Oct 2006 Posts: 1888
|
Posted: Sun Sep 24, 2017 1:23 am Post subject: |
|
|
Since there are several versions of the DLL that have been released since the initial release of the 8.1 compiler package, it would be useful to know the DLL version.
You could look into the Windows and your AV program log files to see if any entry matches the file in question. |
|
Back to top |
|
|
wahorger
Joined: 13 Oct 2014 Posts: 1217 Location: Morrison, CO, USA
|
Posted: Sun Sep 24, 2017 5:41 am Post subject: |
|
|
The only SALFLIBC.DLL I have is the one from the 8.1 release. I scanned the system for all occurrences of this DLL, and the only one damaged was the one in the Program Files folder.
The AV system has no record of doing anything to this file. |
|
Back to top |
|
|
LitusSaxonicum
Joined: 23 Aug 2005 Posts: 2390 Location: Yateley, Hants, UK
|
Posted: Sun Sep 24, 2017 11:00 am Post subject: |
|
|
Worth a look. I know 2 AV packages that won't allow Silverfrost products to run, and they are the only bits of common software that 'quarantine' other programs. |
|
Back to top |
|
|
PaulLaidler Site Admin
Joined: 21 Feb 2005 Posts: 7932 Location: Salford, UK
|
Posted: Mon Sep 25, 2017 7:55 am Post subject: |
|
|
It seems to me that the only explanation is that these machines have become infected with malware. I would try scanning with good AV checker. I use Kaspersky but I don't know if it is the best. |
|
Back to top |
|
|
wahorger
Joined: 13 Oct 2014 Posts: 1217 Location: Morrison, CO, USA
|
Posted: Mon Sep 25, 2017 9:41 pm Post subject: |
|
|
It happens after a crash. The crashes are self-induced (development), but I cannot come up with the root cause; the fixes are different each time, as one might expect.
Without crashing, the DLL is always there and ready.
If I can make it "disappear" at will, or I can come up with something small that works to re-create the issue, I'll post the results here. |
|
Back to top |
|
|
JohnCampbell
Joined: 16 Feb 2006 Posts: 2556 Location: Sydney
|
Posted: Tue Sep 26, 2017 3:01 am Post subject: |
|
|
You could try chkdsk. There could be a problem with the files properties |
|
Back to top |
|
|
John-Silver
Joined: 30 Jul 2013 Posts: 1520 Location: Aerospace Valley
|
Posted: Tue Sep 26, 2017 11:00 am Post subject: |
|
|
[quote]But just now, on the primary, PLATO would not successfully compile, link, and run. Quote: |
Is it always when running PLATO that this happens ?
Have you tried using the latest dlls13 ? (you never know)
I guess the problem is infrequent so mayb difficult to pin down. |
|
|
Back to top |
|
|
mecej4
Joined: 31 Oct 2006 Posts: 1888
|
Posted: Tue Sep 26, 2017 12:51 pm Post subject: Re: |
|
|
wahorger wrote: | It happens after a crash. The crashes are self-induced (development), but I cannot come up with the root cause; the fixes are different each time, as one might expect.
Without crashing, the DLL is always there and ready.
If I can make it "disappear" at will, or I can come up with something small that works to re-create the issue, I'll post the results here. |
Is your program a standard Fortran program, or does it make calls to Windows-specific routines such as LoadLibrary()? If the latter, some more details would be helpful for making a diagnosis. |
|
Back to top |
|
|
LitusSaxonicum
Joined: 23 Aug 2005 Posts: 2390 Location: Yateley, Hants, UK
|
Posted: Tue Sep 26, 2017 3:04 pm Post subject: |
|
|
Bill,
I had a horrible thought that perhaps you have an OPEN statement where FILE='SALFLIBC.DLL' and this is a self-inflicted wound? Surely not. Stranger things have happened, and they can be the result of accidental editing (there are several chord-key presses that will insert).
You can, of course, copy SALFLIBC.DLL to the folder wherein lies your development executable, and that copy will be used by your program. See if that gets zeroed.
Eddie |
|
Back to top |
|
|
wahorger
Joined: 13 Oct 2014 Posts: 1217 Location: Morrison, CO, USA
|
Posted: Wed Sep 27, 2017 3:36 am Post subject: |
|
|
Eddie,
Nope. At the point where the program crashes, no files are open. I only open (and close) files from 1 routine. And never would select this file in any case. No reason to.
The only thing I can think of is that the debugger may be getting started, but I'm not opening the program from within Plato, nor using the debugger to open it. Have never need to use the debugger (although I do recognize the power in that).
I never see the error dialog when this kind of thing happens.
Bill |
|
Back to top |
|
|
PaulLaidler Site Admin
Joined: 21 Feb 2005 Posts: 7932 Location: Salford, UK
|
Posted: Wed Sep 27, 2017 8:08 am Post subject: |
|
|
Bill
If your DLL is in a protected folder (like Program Files (x86)) and you are not running "As an administrator" then there should be no way for you to accidentally blank out the DLL (within Plato, the debugger or anywhere). Even if there were something wrong in Plato or the debugger, in theory this behaviour should not happen without an explicit prompt to elevate your status.
This is why I am assuming that there is some malware involved. |
|
Back to top |
|
|
DanRRight
Joined: 10 Mar 2008 Posts: 2826 Location: South Pole, Antarctica
|
Posted: Wed Sep 27, 2017 10:48 am Post subject: Re: |
|
|
wahorger wrote: | ... I'm not opening the program from within Plato, nor using the debugger to open it. Have never need to use the debugger (although I do recognize the power in that) |
How about trying to do exactly that, i.e. run
C:>SDBG YourProg.EXE
and see if this will nullify dll? |
|
Back to top |
|
|
|