Jump to content

David Heffernan

Members
  • Content Count

    3586
  • Joined

  • Last visited

  • Days Won

    176

Everything posted by David Heffernan

  1. David Heffernan

    Connection string encryption

    So you don't mind if the security is easily circumvented?
  2. David Heffernan

    Connection string encryption

    Although do anticipate that any hacker will be able to see the plain text when you decrypt in memory.
  3. David Heffernan

    Random Access Violation?

    So often this is caused by a defect in your code. You supply an argument that is invalid. Perhaps an object that has already been destroyed. So full fastmm4 debug is useful. You would debug this by trying to create a minimal example that reproduces the issue. That's the starting point.
  4. David Heffernan

    Random Access Violation?

    No reason at all to suspect that multithreading is the issue here. You aren't likely to get good leads from people making random guesses. Hard debugging is the way forward.
  5. The WOL packet is also being routed it would seem.
  6. David Heffernan

    Random Access Violation?

    One of many possible explanations, but far from the only one.
  7. How many ports do you have open on your public facing router?
  8. David Heffernan

    FastMM4 and option "AlwaysClearFreedMemory"

    That's surely not the right solution to the problem. The right solution is to implement the critical code following standard security practices. And to then get it audited by a security expert.
  9. David Heffernan

    Boolean evaluation

    This point about interop has merit, however, Boolean is the wrong type for interop. You need LongBool.
  10. David Heffernan

    Boolean evaluation

    It would have been trivial to solve if only you'd used the debugger. Make it your next mission to learn how to use the debugger.
  11. David Heffernan

    Boolean evaluation

    It's simple. Why write if SomeBool = True then when you can write If SomeBool then It simply adds nothing.
  12. David Heffernan

    Boolean evaluation

    Why is it so hard to reach the conclusion that aUser.Administrator is false? Instead of being helpless here, you can get help from us by providing a minimal reproduction. Easier still would be simply to debug your program. Have you done that?
  13. David Heffernan

    Boolean evaluation

    Never compare to False or True. Instead write if someBool then Or if not someBool then That's not your problem though. Your problem is quite simple. It's the most obvious explanation. You are mistaken, in fact aUser.Administrator is false. It's that simple.
  14. David Heffernan

    Why is ShowMesssage blocking all visible forms?

    Yeah, modal dialogs and popup are deeply invasive. Find a different way to let the user know.
  15. David Heffernan

    'stdcall' for 32-bit vs. 64-bit?

    As discussed above the conditional code simply adds clutter for no benefit. The compiler has already handled the issue for you. Remove the conditional, and let the compiler ignore stdcall in x64. A second point is the use of the export directive. It is also always ignored (a hangover from 16 bit days). Again it should be removed. Therefore the best practise would be to write: procedure MyProc; stdcall; And that's it. Obviously you still need the exports list somewhere.
  16. David Heffernan

    Minimising Mainform but leaving sub forms normal

    It depends on the window ownership (aka popup parent) relationships between your forms. What is that in your case?
  17. David Heffernan

    'stdcall' for 32-bit vs. 64-bit?

    The ifdef is pointless and wasteless. On x64 stdcall is, like all calling conventions, ignored. So remove the ifdef and leave stdcall there for the platform that it has meaning.
  18. This class can't be used without the compare type being specified.
  19. This seems bogus. Define "really core" please.
  20. You are advocating defining new classes in order to set a single field in the base class. If you can't see what is wrong with that I am surprised. I already said.
  21. OMG, take a poor idea, and make it much worse
  22. That's a false goal. Remove that goal from your life. Following it will be making your code worse.
  23. It works. But better to have one constructor that accepts an argument. Think of the time you need to decide at runtime which path to take. Then your way is hopeless.
  24. David Heffernan

    How should I organize cross platform code?

    Ugh, the code you write shouldn't need those ifdefs. That the entire point of you using the libraries provided by others, like Emba. They present a common interface to you. That's the entire point of cross platform coding.
×