Jump to content

Bill Meyer

Members
  • Content Count

    652
  • Joined

  • Last visited

  • Days Won

    12

Posts posted by Bill Meyer


  1. 22 minutes ago, Carlo Barazzetta said:

    It's not a configuration problem because the application starts with correct DPI. At the first Minimize/Maximize receive a wrong DPI (the DPI of the secondary monitor), at the second Minimize/Maximize receive the correct DPI, and so on.
    But this appens ONLY if I'm using a VCLStyle and I have defined min constraint for the form and the current WindowsState is wsMaximized.

    Understood. My recollection is that the misbehavior observed here was inconsistent. Sorry I don't have better details. What I do know is that after the fix was applied to the manifest, the system behaved as expected. Worth a try, I think.


  2. 9 hours ago, Remy Lebeau said:

    With the same ERROR_FILE_NOT_FOUND error?  I suggest you use SysInternals Process Monitor to see EXACTLY which file path your app is REALLY trying to access, and make sure it matches your expectation.

    Here is a selection from the Process Monitor log which shows the last few entries of the file write activity, and the subsequent failure to find the file:
    "Time of Day","Process Name","PID","Operation","Path","Result","Detail"
    "5:54:48.3007155 AM","MediaOffice.exe","7476","WriteFile","T:\TestSheet.xlsx","SUCCESS","Offset: 17,179, Length: 46"
    "5:54:48.3007203 AM","MediaOffice.exe","7476","WriteFile","T:\TestSheet.xlsx","SUCCESS","Offset: 17,225, Length: 19"
    "5:54:48.3007257 AM","MediaOffice.exe","7476","WriteFile","T:\TestSheet.xlsx","SUCCESS","Offset: 17,244, Length: 22"
    "5:54:48.3010912 AM","MediaOffice.exe","7476","CloseFile","T:\TestSheet.xlsx","SUCCESS",""
    "5:54:48.3363273 AM","MediaOffice.exe","7476","QueryOpen","T:\TestSheet.xls","NAME NOT FOUND",""
    "5:54:48.3363673 AM","MediaOffice.exe","7476","QueryOpen","T:\TestSheet.xls","NAME NOT FOUND",""
    "5:54:48.3363977 AM","MediaOffice.exe","7476","CreateFile","T:\TestSheet.xls","NAME NOT FOUND","Desired Access: Write Attributes, Synchronize, Disposition: Open, Options: Synchronous IO Non-Alert, Open Reparse Point, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a"
    "5:54:48.3364372 AM","MediaOffice.exe","7476","QueryOpen","T:\TestSheet.xls","NAME NOT FOUND",""

    And here, a sample of the activity which appears to be from the FileExists() call:
    "Time of Day","Process Name","PID","Operation","Path","Result","Detail"
    "5:54:48.3639990 AM","MediaOffice.exe","7476","CloseFile","C:\Windows\Fonts\segoeuib.ttf","SUCCESS",""
    "5:54:48.3640382 AM","MediaOffice.exe","7476","CloseFile","C:\Windows\Fonts\segoeuii.ttf","SUCCESS",""
    "5:54:48.3640635 AM","MediaOffice.exe","7476","CloseFile","C:\Windows\Fonts\segoeuiz.ttf","SUCCESS",""
    "5:54:48.3645094 AM","MediaOffice.exe","7476","QueryOpen","T:\TestSheet.xls","NAME NOT FOUND",""
    "5:54:48.3645566 AM","MediaOffice.exe","7476","QueryOpen","T:\TestSheet.xls","NAME NOT FOUND",""
    "5:54:48.3645860 AM","MediaOffice.exe","7476","QueryOpen","T:\TestSheet.xls","NAME NOT FOUND",""
    "5:54:48.3646129 AM","MediaOffice.exe","7476","QueryOpen","T:\TestSheet.xls","NAME NOT FOUND",""
     

    These entries continue for many hundreds of rows. I am not accustomed to investigating at this level, so not sure how to interpret this.


  3. 31 minutes ago, Remy Lebeau said:

    Then you likely don't have access to the file, or at least don't have permissions to ask the filesystem for its attributes.  You need to call GetLastError() to find out why GetFileAttributes() is failing.

     

    This app created the file. A few lines later, it looks for the file, and GetLastError reports 2: ERROR_FILE_NOT_FOUND

    But the file exists, in that same location. It is openable in Excel, and can be resaved from Excel. And after that, I still get a fail on FileExists().

     

     
     

  4. 1 minute ago, David Heffernan said:

    INVALID_FILE_ATTRIBUTES is what you'd get if the file did not exist. It doesn't mean there is a problem with the file attributes. 

    Agreed. I did not word the title well.

    However, the file does exist, and the result from FileExists is incorrect as its call to GetFileAttributes returns INVALID_FILE_ATTRIBUTES.

    Adding a delay as a check accomplishes nothing, it is not a matter of the write not having completed.


  5. I am calling the DevExpress ExportGridToXLSX, and it produces the spreadsheet no problem. The difficulty comes after, as I want to open it in FlexCel to insert a header, it fails. I have this snippet:
      ExportGridToXLSX(fn, grdMain);
      b := FileExists(fn);
    I have tested in a small program, and FileExists returns True. But in WOMS, form the Daily Grid, it returns false. In both cases, the xlsx file opens in Excel without a problem.
     
    Going deeper, the failure of FileExists is because the call it makes to GetFileAttributes returns INVALID_FILE_ATTRIBUTES.
     
    Any thoughts?
     


  6. 8 minutes ago, Uwe Raabe said:

    The IDE theming support in 10.2.3 is much more buggy and quirky than in the newer versions. I'm sorry, but I am not going to fix that as long as the workaround is to simply re-open that dialog.

    Understood. But I identified it, and wanted to let you know.

    • Thanks 1

  7. Lately I found that I was getting psychedelic fringes on things in the editor, so switched to dark mode. However, I noticed that the MMX Properties dialog has a problem in the topic tree. It appears as though all topics are selected, and is quite unreadable. This seems to occur only the first time the dialog is presented in a session.  MMX 15.0.33 build 2403 in Delphi 10.2.3.


  8. 20 minutes ago, Mr. Daniel said:

    Rename refactoring worked during 1 hour after installation but has suddenly stopped working (the menu is grayed out, and control shift E, show the Find dialog instead of the refactor window). As well as control G, to 'go to' a variable or method declaration, doesn't work anymore.

    What plug-ins have you installed?


  9. 11 minutes ago, timfrost said:

    The first software tools I published were for various microcomputer-supported languages (including PL/1) before Lifeboat Associates persuaded me that C was the future.

    I had the opportunity to play a bit with Whitesmith's C on CP/M, and that persuaded me it would not be my future. I am not sure now how many floppies were involved, but I do remember that compiling hello world -- when it didn't crash -- took about 4 minutes.

    BDS C was fare more usable, but gave a whole new meaning to quirky.

    TP 1.0 on CP/M was a revelation. Purely amazing, and all in a 27K .com file.


  10. 40 minutes ago, David Schwartz said:

    This is a nice article, but it it makes it sound like USCD Pascal and TurboPascal were related and evolved together. And of all the stuff he mentions, they're all academic curiosities now. UCSD Pascal disappeared after TP was introduced, and TP evolved into Delphi. I don't think anybody ever sold Modula or Oberon compilers commercially (although that would have been really nice).

     

    As I recall, UCSD Pascal was released about 18 months before I'd heard of TurboPascal, and there was a huge package of stuff included in it. I believe it was free.

    It was a long time ago, but let me offer a few recollections. 

    I got UCSD Pascal (for CP/M) at a disk copying fest held at Foothill College in Los Altos Hills, CA. Fairly certain it was 1978.

    There was also Sorcim Pascal/M which was 1980-81, I think, and Pascal-MT+ from the same time. Microsoft also released an ISO Pascal which had no I/O, since ISO defined none.

    TP 1.0 (for CP/M) was 1983, and flyers were sent out with cartoon art of "Frank Borland". Looked like a prospector, as I recall. I still have my manual from that. When I called to ask about it, Philippe was answering the phone from his office above the Jaguar repair shop in Scotts Valley. TP 1 came out just after a scandal about JRT Pascal, which had been offered for $29.95, I think, but was apparently quite buggy.

    Some of the UK Borland team went off on their own when Borland elected not to market Modula-2. And how many here realize that Quattro Pro was written in Modula-2? But there were, in fact, versions of Modula-2 published by Borland, and I used to have one that ran on my LittleBoard Z80.

    The commercial Modula-2 was under the name Topspeed. And they also offered Topspeed C++.  See this page: http://www.edm2.com/index.php/TopSpeed_Modula-2   Also see: https://en.wikipedia.org/wiki/Modula-2

    • Like 3

  11. Also, as far as I know, many (most?) component packages ignore the possibility of "Install for All Users." Some claim (falsely) to support it. 

     

    Not usually an issue, but some months ago, I was setting up a new VM to be used by members of our team, and it would have been convenient to install the 8 devs as users, then install everything to be for all users. Each could then make the VM personal by removing the other users.

×