[tomboy-list] Crash at startup on Vista
Sandy Armstrong
sanfordarmstrong at gmail.com
Wed Jun 24 12:09:04 PDT 2009
(CC'ing tomboy-list; don't forget to reply-all)
On Tue, Jun 23, 2009 at 3:02 AM, James Chaldecott<james at swythan.co.uk> wrote:
> Good call about removing the files from "C:\Windows". No idea why I
> didn't try that before. Moving libpng13.dll out of C:\Windows gets
> Tomboy starting OK.
Well, that's good to hear.
> Sounds like you'll want to know what dlls the other bug reporters have
> got loaded. SysInternals have a utility called ListDlls that will do
> the job.
>
> Details/download here:
> http://technet.microsoft.com/en-us/sysinternals/bb896656.aspx
> Can be run directly from here: http://live.sysinternals.com/listdlls.exe
Excellent, thanks for sharing this tool!
> For reference, if I run:
> listdlls tomboy > tomboy-dlls.txt
>
> ... I now get the attached file.
Very cool, this tool rocks.
> Would you recommend doing what you do with unmanaged dlls to other
> apps that can't deploy their dependencies to the same folder as the
> executable? I'm thinking of Electric Sheep (which is the offender on
> my system). It's a screensaver, so IIUC the executable really does
> have to be installed into %SystemRoot%, but putting its unmanaged
> dependencies in there is what breaks Tomboy.
>
> I guess the process is:
> 1) Install unmanaged dependencies to a common location (e.g.
> %ProgramFiles%\ElectricSheep\lib\)
> 2) Record the path to the dependencies in a registry key, or similar.
> 2) Install executable binary wherever it needs to be (e.g. %SystemRoot%)
> 3) Early in the startup of the executable, programmatically add the
> value in the registry key from #2 to the start of PATH, before loading
> the libraries normally.
Well, everybody has different situations. But that's what I would do
if I were them, as it's kind of uncool to break other apps. Of
course, there could be additional ways for gtk-sharp or Tomboy to
protect themselves from this. I don't fully understand the
implications of this bug suggesting that gtk-sharp use
SetDllDirectory, but it could be a step in the right direction:
https://bugzilla.novell.com/show_bug.cgi?id=473564
Thanks for digging into this, James. It's good to know that Tomboy
can still break in this situation. I'll try to work with the
gtk-sharp windows installer guys to figure out what to do.
Sandy
More information about the Tomboy-list
mailing list