Jump to content

David Heffernan

Members
  • Content Count

    3517
  • Joined

  • Last visited

  • Days Won

    175

Posts posted by David Heffernan


  1. The reason you don't call FileExists is that CreateFile will fail and GetLastError will tell you that the file does not exist.

     

    You have tell us why you believe that CreateFile should fail in the scenario that concerns you. Another program already opened the file? With what flags? 

     

    Rather than have us spend time trying to guess how to recreate the problem, can you provide a complete console app that reproduces the issue. 


  2. Why do you call FileExists? A single call to CreateFile can tell you what you need. The code as it stands won't tell you whether or not the file is in use. What is hdl? Use THandle as stated above. 

     

    As for the problem, debug it! Use GetLastError if CreateFile fails. If CreateFile succeeds then there's presumably something wrong with your logic. 


  3. 3 hours ago, Mike Torrettinni said:

    I'm not too fond of Vista dialogs, they seem very rigid, not flexible enough to fit in the software design.

    That's an odd comment. For dialogs with a message, and couple of checkboxes or buttons then they are perfectly flexible.

     

    If you want to customise every individual form then what are you even asking? Just design each one in the designer. 


  4. Any developer or organisation that cares about quality should be flexible enough to accept bug reports from a variety of channels.

     

    Clearly if the reporter can enter a high quality report in the project bug tracker, then that is the ideal. But in reality that is not always possible. Sometimes these reports are unclear and imprecise and the project owner has to edit the report.  And sometimes the reporter just won't take the required steps. Sometimes the reporter is stubborn and for inexplicable reasons refuses to give their email address and a password to sourceforge  😉

     

    But what developer would here of a bug in their software and not want to fix it?  Any developer that is prepared to let bugs pass if they aren't in the tracker should just give up.

     

    Incidentally, it grinds my gears that Emba killed QC without transferring open reports to the replacement. On numerous occasions I have been asked by Emba staff to resubmit to QP the litany of open floating point related bugs that I submitted to QC.  It makes no sense to me at all that any developers that care about quality would do that.

    • Like 3

  5. We can help you but we need you to provide clear information. If you want to continue posting random scraps of information that mean nothing to us (we don't have your code, or a minimal reproduction), the posts in this thread are not actionable.

     

    As somebody who has experience debugging memory I can assure you that you are going about it the wrong way. We can for sure help, but it requires you to provide clear information and take a more structured approach. If you don't want to do that, and wish to continue with trial and error, that's fine. But please don't consume bandwidth here by posting scraps of information that means nothing to us. 

     

    Remember that this is a public forum. Every post you make is broadcast. We don't to spend our time sifting through posts looking for the useful actionable content.


  6. Dude, you've got a memory corruption somewhere, and the behaviour of such bugs is often not repeatable. Change something in one place, and the bug is hidden, only to pop up somewhere else.

     

    I suggest that you stop posting here unless you have something concrete to share, and ask for help. Why are you posting you trial and error debugging in a public forum?

     

    Do you know what valgrind is?


  7. We are doing just that. These continued postings are just noise for us. Clearly you have a problem but unless you can provide a clear reproducible case then your latest piece of guesswork doesn't warrant an update here. 

     

    These bugs can be hard to track down. That's why we use tools like valgrind. They track them down instantly. 

    • Like 1
×