From edi at agharta.de Thu Mar 3 07:36:16 2005 From: edi at agharta.de (Edi Weitz) Date: Thu, 03 Mar 2005 08:36:16 +0100 Subject: [rdnzl-devel] Re: using RDNZL In-Reply-To: <6.1.2.0.2.20050302172009.03baeeb0@mail.well.com> (Marc LeBrun's message of "Wed, 02 Mar 2005 17:35:34 -0800") References: <6.1.2.0.2.20050302172009.03baeeb0@mail.well.com> Message-ID: Hi! On Wed, 02 Mar 2005 17:35:34 -0800, Marc LeBrun wrote: > Hi! I'm very interested in working with RDNZL. Good... :) > It looks great, but I've hit a snag; perhaps you could help? > > I got the first "message box" example to execute OK (neat!). > However when I tried running the second "apropos" example I got the > following error > > Warning: Returning NULL object from .NET call > Error: Assembly "AproposGUI" not found > > (I compiled aproposgui.DLL in the RDNZL examples directory) You compiled it? It should have been distributed with the tarball already. > I'm probably doing something stupid, but at this point I'm fairly > clueless about all this, so am not sure what to do next. > > Any ideas how I might proceed? You have to put the AproposGui.dll file somewhere where the .NET runtime looks for it when loading assemblies. So either put it in a system directory or in the directory where your Lisp executable starts from. That should do the trick. Let me know if it doesn't work. > (By the way, for some reason the Windows download arrives named > rdnzl.tar.tar, which chokes WinZip. Manually changing it to > rdnzl.tar.gz makes everything copacetic. I think I've seen this > before with tar files--don't know if it's because of something I'm > doing or not, but thought you might want to know...) No idea. I guess it's your browser changing the file's suffix without asking you. By the way, there's a mailing list for RDNZL questions: Cheers, Edi. -- Dr. Edmund Weitz Hamburg Germany From cox at franz.com Thu Mar 3 19:47:09 2005 From: cox at franz.com (Charles A. Cox) Date: Thu, 3 Mar 2005 11:47:09 -0800 Subject: [rdnzl-devel] Re: using RDNZL In-Reply-To: <4226C10F.3030907@franz.com> (ja) References: <6.1.2.0.2.20050302172009.03baeeb0@mail.well.com> <4226C10F.3030907@franz.com> Message-ID: <200503031947.j23Jl9M04679@gemini.franz.com> > Hi Marc, thanks for using the RDNZL interface, I forward your letter to > Charley as he is the engineer that did the ACL port.. Jans Edi Weitz gave pretty much the same answer I would. The simplest thing is to put "AproposGUI.dll" into either the Allegro CL directory or into a system directory. For Edi: I notice that specifying a full pathname for AproposGui.dll to the import-types function still causes an error. This seems to be happening because System.Reflection.Assembly.LoadWithPartialName won't take full pathnames (?). If that's the case, maybe import-types could be beefed up to check if the argument is a full pathname and instead invoke Load or LoadFrom. ?? Charley --- Charles A. Cox, Franz Inc. 555 12th Street, Suite 1450 Internet: cox at franz.com Oakland, CA 94607 WWW: http://www.franz.com/ Phone: (510) 452-2000; FAX: (510) 452-0182 From edi at agharta.de Sat Mar 5 22:32:36 2005 From: edi at agharta.de (Edi Weitz) Date: Sat, 05 Mar 2005 23:32:36 +0100 Subject: [rdnzl-devel] Re: using RDNZL In-Reply-To: <200503031947.j23Jl9M04679@gemini.franz.com> (Charles A. Cox's message of "Thu, 3 Mar 2005 11:47:09 -0800") References: <6.1.2.0.2.20050302172009.03baeeb0@mail.well.com> <4226C10F.3030907@franz.com> <200503031947.j23Jl9M04679@gemini.franz.com> Message-ID: Hi Charley! Sorry for the delay. On Thu, 3 Mar 2005 11:47:09 -0800, "Charles A. Cox" wrote: > For Edi: > > I notice that specifying a full pathname for AproposGui.dll to the > import-types function still causes an error. This seems to be > happening because System.Reflection.Assembly.LoadWithPartialName > won't take full pathnames (?). Yep, that's the reason. > If that's the case, maybe import-types could be beefed up to check > if the argument is a full pathname and instead invoke Load or > LoadFrom. ?? I used to do this in earlier (unreleased) versions of RDNZL but abandoned that approach when I found out that assemblies loaded with LoadFrom are kind of "second class" citizens in .NET. For example, you can't use the reflection machinery to get at the types loaded that way if you only have the type's (fully qualified) name. I remember reading an online article explaining the problem but I can't find the link right now. Anyway, I think we shouldn't do that. If a user wants to invoke LoadFrom or Load he should do so explicitely and he should (hopefully) be aware of the consequences. Does that seem like the right decision to you? Cheers, Edi.