Jump to content

Anders Melander

Members
  • Content Count

    2279
  • Joined

  • Last visited

  • Days Won

    117

Everything posted by Anders Melander

  1. Anders Melander

    Best components for creating windows service apps

    My experience too.
  2. Anders Melander

    .Net VCL for Delphi

    So basically a suite of Delphi components that wraps some .NET controls which wraps the exact same Win32 controls that the corresponding VCL wraps...? Maybe you should move your post to the Third-Party group.
  3. Anders Melander

    Drag and Drop Component Suite + Drop to Outlook not working

    Explorer (e.g. the desktop) supports FileContents/FileGroupDescriptor and many other application does as well. If your files are mostly virtual (i.e. they are generated from a database or the like) and are only saved to disk in order to be able to drag them, then FileContents/FileGroupDescriptor is actually the right choice. In that case make FileContents/FileGroupDescriptor your primary format and only write the data to disk if the drop target requests CF_HDROP/Filename.
  4. Anders Melander

    Drag and Drop Component Suite + Drop to Outlook not working

    I just realized that I've already released a newer version of the tracer. It's in the Demos folder: https://github.com/DelphiPraxis/The-Drag-and-Drop-Component-Suite-for-Delphi/tree/master/Demos/TargetAnalyzer It lacks the ability to save the trace though. Everything appears fine judging from the trace; The drop targets (I'm assuming you dragged across some other drop targets before you dropped on Outlook) queries for various formats during the drag and after the drop the target (Outlook) asks for the "Filename" and CF_HDROP formats. My guess was initially that there either something wrong with the particular file you're dragging which caused Outlook to reject it or that the data returned by the drop source was corrupted somehow (you could use the SourceAnalyzer demo to check the data). But then I found this: Drag & Drop files from 32bit winforms application to 64bit Outlook TLDR; It appears to be a known problem in Windows which apparently hasn't been fixed yet. According to one of the comments a possible solution is to use the FileContents and FileGroupDescriptor formats instead. See the VirtualFile, VirtualFileStream, SyncSource and AsyncSource with Filestreams demos for examples of how to do that. AFAIR you can add these formats to your existing drop source with an Adapter, but I can't remember how to do that. There's probably a demo about it. Here's another thread about the problem but here they don't seem to have realized it's a 32/64 bit issue: Issue with file drag/drop to Outlook in Windows 10
  5. Anders Melander

    Source Export question

    FWIW, the Drop Source Analyzer demo from The Drag and Drop Component Suite does pretty much the same as InsideClipboard. WRT you problem my guess is that GExperts uses some RTF codes or line delimiters that your target doesn't support. Try pasting via WordPad or a plain RichEdit control instead. They probably don't mess as much with the RTF as Word does.
  6. Anders Melander

    Drag and Drop Component Suite + Drop to Outlook not working

    Try diagnosing the problem with the attached utility: Drag from the Drop Source pane and drop onto Outlook. You should be able to see what data Outlook asks for. If you compare the sequence when dropping on a 32-bit Outlook to that of a 64-bit, then maybe it becomes clear what's going on. DragDropTracer.zip
  7. Anders Melander

    Drag and Drop Component Suite + Drop to Outlook not working

    What data types (text, filenames, bitmap etc) are you dragging? Edit: Never mind. I see from the ticket that you're dragging files.
  8. Anders Melander

    Component installs

    I use the policy that all projects must be completely self-contained. Each project has a complete copy (source and installer) of the all the in-house and third party libraries used. The project search path points to the local copies. I always build from the source. dcu, exe and bpl files goes into local project folders. Everything is under version control. Getting a project setup on a new system is just a matter of fetching the project from version control, running any necessary 3rd party installers (usually just for design time functionality) and installing the bpls. Since the different projects tend to use the same libraries the two last steps are usually just done once. I don't care about what the installers do because I don't use their dcu-files or their search paths. The project itself contains it all. Never had problems with duplicate dcus (since I started doing it this way, that is). There's of course the problem that different projects might use different versions of design-time components, but that is a bit outside the scope of your question. WRT the VM solution I used it a while ago and it actually worked very well. I used Hyper-V with one VM per project. The only problem was that it got a bit tiresome to have to install the same tools in each and every VM whenever there was a change in the toolset.
  9. Anders Melander

    Code formatter in CnPack

    True. I'm more worried about those that would use something like this just because it's a new smart way of doing stuff, regardless of whether it's a suitable pattern to use - and then I have to clean up after them. But then again, they pay me good money to do so 🙂
  10. Anders Melander

    Code formatter in CnPack

    Oh, I thought you meant the "else after end" style but I guess you're shooting at "else...if" in general. Well yes, I guess a more flexible case would be nice, but I can also imagine the horrors people would create with it.
  11. Anders Melander

    Code formatter in CnPack

    Pattern matching? You'll have to explain that one.
  12. Anders Melander

    Code formatter in CnPack

    I see. Thanks. No need for a war; We all know there's only "One True Style" - and it's the one we use ourselves 🙂
  13. Anders Melander

    Code formatter in CnPack

    Just out of curiosity, as I use this style myself, why do you "hate" it?
  14. Anders Melander

    Line numbers in code editor

    This is were the option is found in 10.2.3:
  15. Anders Melander

    Saving a large project takes soooo Loooonnnnggg..

    I'm not saying that the feature doesn't make sense. I'm saying that it doesn't make sense that these settings can be edited more than one place and that one of the places is the global Components, Install Packages dialog. After all if I still get confused about this after using Delphi for 24 years, then there's either something wrong with the UI or I'm just slow. Change the global dialog so it doesn't edit the project package list and instead make it clear that it's editing the default options and there's no confusion. Even better, and I remember this was discussed ad nauseam some twenty years ago, but if the package list had been opt-in instead of opt-out then much of these package juggling problems wouldn't exist.
  16. Anders Melander

    Saving a large project takes soooo Loooonnnnggg..

    I believe you, but that makes absolutely no sense from a usability perspective. You're saying that the Design packages list in project options is working on the same settings as the Design packages list in the Component, Install Packages dialog (which is where one used to install packages globally). [checking...] You're right. The dialog even says "Project options". Amazing!
  17. Anders Melander

    Saving a large project takes soooo Loooonnnnggg..

    That typically doesn't stick. For some reason Delphi enables the packages again sooner or later. It's been like that for as long as I can remember.
  18. Anders Melander

    Saving a large project takes soooo Loooonnnnggg..

    It so happens I have written a tutorial on that exact topic. Here it is: Disabling Live Bindings, The Tutorial Google "disable live bindings". [the end]
  19. Anders Melander

    Saving a large project takes soooo Loooonnnnggg..

    Sorry. Didn't read your description properly. I thought it was the save that was slow. I've encountered projects that took a long time closing but I can't remember what I did to solve it. I don't know if Live Bindings can affect close performance like they do open. One of my clients has a project where one of the datamodules has almost 200 datasets and thousands of persisted fields. Before I disabled Live Bindings there it took in the neighborhood of 15 minutes to just open this datamodule. Now, with Live Bindings disabled it takes less than a second. Anyway, you can easily get a call stack of the Delphi IDE with Process Explorer. Double click bds.exe, view threads, double click the thread with the highest CPU usage. That should give you (or us, if you post the call stack here) a clue about what it's doing.
  20. Anders Melander

    ToDo items should have a separate syntax color in the editor

    Pfft! You did ask for opinions, did you not? For me the use case would be that I'm either looking for TODOs or I'm focused on something else. If I'm looking for TODOs then the existing functionality is just fine. If I'm focused on something else then I'll read the comments anyway and I don't need the extra distraction.
  21. Anders Melander

    ToDo items should have a separate syntax color in the editor

    You have View, Tool Windows, To-do list. That's pretty visible...
  22. Anders Melander

    Saving a large project takes soooo Loooonnnnggg..

    My bet would be cloud storage: Try disabling iTunes, GDrive, OneDrive, DropBox etc. if you have them. For some reason these don't show up in Process Explorer (probably because they work on a too low level), but in my experience they can completely kill system performance. Every so often members of my family will ask for a new computer because it's gotten so slow they can't use it. I've tried, in vain, to explain to them that hardware doesn't get slower with age (my main workstation is actually the oldest in the household) but they persist. So I just uninstall or disable the various cloud storage services they use and just like that their system runs like new again.
  23. Anders Melander

    Delphi compiler need to be opensourced

    I'm pretty sure many of the countries on the receiving end of US' forced friendship has a different view on that. Look to me like the US is actually also guilty of most of the issues you listed. I don't mind the US looking after its own interests, just don't pretend it's doing anything but that. China is a complex issue. Sure it's bad in some areas, but it's slowly improving. It's a huge country and rapid change would cause the country to implode.
  24. Anders Melander

    Delphi compiler need to be opensourced

    Didn't you mean to capitalize "US"? And on that note I can't see how what China is trying to do is different from what the US is already doing to the rest of the world...
  25. Anders Melander

    Delphi compiler need to be opensourced

    It's not possible to downvote in JIRA.
×