forums.silverfrost.com Forum Index forums.silverfrost.com
Welcome to the Silverfrost forums
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Browse_for_folder1@ is failing to create a user-named folder
Goto page Previous  1, 2, 3, 4  Next
 
Post new topic   Reply to topic    forums.silverfrost.com Forum Index -> Support
View previous topic :: View next topic  
Author Message
LitusSaxonicum



Joined: 23 Aug 2005
Posts: 2388
Location: Yateley, Hants, UK

PostPosted: Tue Mar 12, 2019 11:44 am    Post subject: Reply with quote

(Continued) My own particular history has left me with rather a lot of hard drives that I have simply replaced. Had I been smarter, and indeed had I had a quickport dock in the past, then I might have been able to reuse them. I rather dislike waste, as in the past I have assembled discarded parts to give away or sell on. A lot of hard disks makes one think immediately of backup. There are numerous lines of approach to backing up that have nothing to do with this thread and so I will put them in another post in the ‘General’ part of the forum.

But, for the issue initially described by Bill, the answer is simply a clean install of Windows. An FTN95 workaround is a great idea, but once windows has any kind of glitch, you are simply waiting for worse to happen in the future.

Eddie
Back to top
View user's profile Send private message
silicondale



Joined: 15 Mar 2007
Posts: 243
Location: Matlock, Derbyshire, UK

PostPosted: Tue Mar 12, 2019 12:13 pm    Post subject: Reply with quote

Many thanks for the detailed explanations, Eddie, and the benefit of your experience. I think you have correctly identified the problem as something in Windows - and in particular, glitches that might have been introduced by failed updates: on this computer (the one which had the problem) a Windows update certainly did fail a few weeks ago. Although subsequent updates worked fine, it's possible that they didn't fix the glitch.

Courage is another matter. This is an off-the-shelf HP Pavilion laptop, and I doubt that I would find space in it to fit another disk or even SSD, and would have no confidence in getting the cabling right. I could partition the existing hard disk, but would need to reorganise the storage. The other computer is a top-of-range Dell which already has a separate SSD C:/drive, but as it works fine I wouldn't need to do anything to it anyway.

The big problem is when I am supplying my software to other team members to use. I just create a standard installation script for them to use. I have no idea in advance what machine they are going to install it on, and am very reluctant to tell them they have to reinstall Windows it it doesn't work properly! Before I set up the MKDIR@ fix in my last post, I told them the workaround was to create any new folders they need in advance, using Windows Explorer. The fix at least avoids that inconvenience, and it seems to avoid whatever Windows problem is giving trouble.

Perhaps another solution less drastic than a clean install might be to run the next cumulative update from Microsoft. Not sure if it's possible to make this go back and fix any problems in previously installed updates. Do you know the answer to this?
_________________
(Steve Henley)
Back to top
View user's profile Send private message Visit poster's website
LitusSaxonicum



Joined: 23 Aug 2005
Posts: 2388
Location: Yateley, Hants, UK

PostPosted: Tue Mar 12, 2019 12:48 pm    Post subject: Reply with quote

Wow, that was quick!

Laptops are a big issue, as they don't normally have space for spare disks, and the solution there is to partition the single hard drive so that you have a boot partition and a data partition. This is functionally the same as separate disks. I was making the assumption that desktop machines were being considered. I rarely have the back off a laptop! If you have someone who is unafraid, the same procedures can be done: take out the hdd, install a new one, reinstall Windows into a partitioned hdd/ssd, bung the old drive into a quickport dock and reload all the data, reinstall any necessary other software, and Robert is the sibling of one of your parents.

I don't think cumulative updates ever really solve some of the occasional problems, that a minority of users have, in the way that clean installs do. There is another approach that lies beyond my expertise, and that is editing the Registry to discover the root cause of the problem. That, I'm afraid, is well beyond my knowledge and ability, and also contains the necessary elements to make a complete screw-up possible.

Indeed, doing a clean install on a new storage device leaves you with the ability to go back if you screwed up!

For what it's worth, my biggest experience of the interrupted or failed update glitch was that it made my accounts program fail to go full screen. It would launch itself into the taskbar and refuse to come out. Solved by a clean re-install. That machine had a Win 7 to 10 upgrade originally.

y 'installation script' I assume you mean a batch file. Have you considered using a proper installer like Jordan Russell Software InnoSetup? (Apologies if that's what you mean). It has the benefit of putting everything in one file, and automating the process.

Eddie
Back to top
View user's profile Send private message
silicondale



Joined: 15 Mar 2007
Posts: 243
Location: Matlock, Derbyshire, UK

PostPosted: Tue Mar 12, 2019 1:30 pm    Post subject: Reply with quote

Thanks Eddie - It's Innosetup that I am using. And very happy with it! It not only installs my own software but also a couple of public domain VRML viewers that allow 3D visualisation of models (of the geological rather than glamour variety, I hasten to add).
_________________
(Steve Henley)
Back to top
View user's profile Send private message Visit poster's website
wahorger



Joined: 13 Oct 2014
Posts: 1214
Location: Morrison, CO, USA

PostPosted: Wed Mar 11, 2020 2:31 am    Post subject: Reply with quote

Update: This function no longer works on my main machine, but still works on the laptop. I compiled and ran on the laptop (no problems), run on the desktop, crash. Sometimes it will crash with no traceback.

Whatever was fixed last year after my nuke and pave is now broken again.

I will continue to use it for my users, but not being able to properly test all the program paths by being able to create a new folder using the system dialog is a limiter for me.

BTW, I get a Floating Point Stack Fault (like before), several lines of addresses show (no names even in checkmate) and offsets specified as (+0000) on every line.
Back to top
View user's profile Send private message Visit poster's website
PaulLaidler
Site Admin


Joined: 21 Feb 2005
Posts: 7912
Location: Salford, UK

PostPosted: Wed Mar 11, 2020 8:50 am    Post subject: Reply with quote

I don't recall, is this 32 bits or 64 bits and does it make a difference?
Back to top
View user's profile Send private message AIM Address
mecej4



Joined: 31 Oct 2006
Posts: 1884

PostPosted: Wed Mar 11, 2020 10:36 am    Post subject: Reply with quote

If Bill is getting FPU stack faults, it would have to be 32-bit, would it not? The X87 is the one that provides a stack view of the ST0-ST7 registers.
Back to top
View user's profile Send private message
PaulLaidler
Site Admin


Joined: 21 Feb 2005
Posts: 7912
Location: Salford, UK

PostPosted: Wed Mar 11, 2020 11:47 am    Post subject: Reply with quote

I missed that. In which case it might help if ClearWin+ clears the FP stack before making the call.

I have now done this for the next release of salflibc.dll.
Back to top
View user's profile Send private message AIM Address
wahorger



Joined: 13 Oct 2014
Posts: 1214
Location: Morrison, CO, USA

PostPosted: Wed Mar 11, 2020 8:28 pm    Post subject: Reply with quote

Than ks, I'll give it a shot when it comes out.
Back to top
View user's profile Send private message Visit poster's website
wahorger



Joined: 13 Oct 2014
Posts: 1214
Location: Morrison, CO, USA

PostPosted: Mon Oct 19, 2020 10:49 pm    Post subject: Reply with quote

In all the other things, I've been remiss in this after you had put out a new release.

It still does not work on my main system.

I (today) tried to capture the FP Stack Fault by setting the handler immediately before the browse_for_folder1@() call. What i got was a continuous stack fault handler being invoked. I tried using the code/edoc and the instruction FCLEX in the handler to clear the fault. If I do not enable the handler, the function will execute, but FP Stack Fault after I try to add a folder. So a couple of questions.

Using code/edoc, what instruction (or combination) could be used to clear the fault before the browse_for_folder1() gets called?

What instructions can be used to clear the stack fault, then return a 0 indicating the fault was handled?

Also, how does one re-install the Old Handler? CORE4(OLD_HANDLER)?
Back to top
View user's profile Send private message Visit poster's website
PaulLaidler
Site Admin


Joined: 21 Feb 2005
Posts: 7912
Location: Salford, UK

PostPosted: Tue Oct 20, 2020 9:33 am    Post subject: Reply with quote

Bill

browse_for_folder1@ in the latest DLLs resets the floating point stack via fclex, finit, and fround at the beginning of the the function. So it won't make any difference if you do this in your code.

My guess is that you won't be able to recover from a floating point stack fault. When you handle it and say "continue", the fault will still be there.

At the moment the 32 bit browse_for_folder@ and browse_for_folder1@ do not respond to "alt_open_save" where as for 64 bits only the alternative is employed.

Is it possible for you to extract and test your call browse_for_folder1@ using 64 bits? I am thinking that if your cut down fails for 32 bits and works for 64 bits then perhaps I might be able to make the alternative available for 32 bits.
Back to top
View user's profile Send private message AIM Address
wahorger



Joined: 13 Oct 2014
Posts: 1214
Location: Morrison, CO, USA

PostPosted: Tue Oct 20, 2020 3:50 pm    Post subject: Reply with quote

Paul, I will give this a try. Transferring my existing code to 64-bits is not something I can do quickly. That said, I will see what I can do to get the problem to occur/not-occur between the two platforms and let you know.

Appreciate you taking another shot at this.

Bill
Back to top
View user's profile Send private message Visit poster's website
wahorger



Joined: 13 Oct 2014
Posts: 1214
Location: Morrison, CO, USA

PostPosted: Wed Oct 21, 2020 1:15 pm    Post subject: Reply with quote

Paul, I used the little test program I originally posted, and ran it as a 64-bit. Here's what I see.

When I run it, I get a DOS box displayed (which is curious - is that supposed to happen). I navigate to where I want a folder and click "Make a New Folder". The folder name came up (in this case New Folder (2)). I change the name of the folder and click OK. Then things get strange.

Just briefly in the window, I see my changed name return to New Folder (2). The program returns the name New Folder (2) as my folder name. However, the folder name I typed is created. This works the same way with the UNIT specified as either Z'40' and Z'41'.

The same behavior in both Checkmate and Release 64.

Code:

   winapp
   PROGRAM MAIN
   use mswin
   character*260:: returned_path=' '
   integer:: uint=z'40'
   integer(7):: window_handle=0
   if(browse_for_folder1@(window_handle,'Caption',returned_path,uint)) then
   print *,'Returned:',trim(returned_path)
   else
   print *,'Cancelled'
   endif
   end
Back to top
View user's profile Send private message Visit poster's website
wahorger



Joined: 13 Oct 2014
Posts: 1214
Location: Morrison, CO, USA

PostPosted: Wed Oct 21, 2020 1:34 pm    Post subject: Reply with quote

With the 32-bit attempt, a portion of the same behavior is seen. That is, after typing a new name and clicking OK, the New Folder (2) shows briefly, and the program crashes with no trace. The newly named folder does appear when looking at the folder in Explorer.
Back to top
View user's profile Send private message Visit poster's website
PaulLaidler
Site Admin


Joined: 21 Feb 2005
Posts: 7912
Location: Salford, UK

PostPosted: Wed Oct 21, 2020 3:54 pm    Post subject: Reply with quote

Bill

Your code runs OK for me in for both 32 bits and 64 bits. I don't get a DOS box.

As a natural instinct I would not click on OK before exiting from editing the name of the new folder but it turns out that (for me) it makes no difference to the outcome.
Back to top
View user's profile Send private message AIM Address
Display posts from previous:   
Post new topic   Reply to topic    forums.silverfrost.com Forum Index -> Support All times are GMT + 1 Hour
Goto page Previous  1, 2, 3, 4  Next
Page 3 of 4

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group