Excel-DNA & TIBCO Rendezvous

Jan 19, 2016 at 3:56 PM

I have been trying to program an RTD server using Excel-DNA, I have found it extremely useful so far, especially not having to register anything to get it working.

Having 1 issue however!

The server must listen to TIBCO Rendezvous (this is a network messaging system) messages and then parse the message and return the value to excel via RTD. For this to happen the project needs to reference a dll called TIBCO.Rendezvous.dll, which is fine and I have the .DNA file packing it in the xll also. Seems ok.

However, there must also exist a file called TIBCO.Rendezvous.netmodule in the binary directory for the code to work at run time. The file it copied to the build directory when I build the project but throws an error at run time saying that the file cannot be found.
I have tried to include the file in the .dna file like this,
<Reference Path="\\network\path\TIBCO.Rendezvous.netmodule" />
but it still does not work.

Any idea how I could get this to work? What other detail would you need

I was able to get similar code working in a test project without excel DNA.
Jan 19, 2016 at 8:45 PM
Hi Robert,

I assume it works if you don't do the packing?
Does it work if the .netmodule is present in the .xll directory?

The .netmodule file is a bit strange, I don't think it will work with the packing (which just handles AssemblyResolve events).

If it does work when the .netmodule is present (with the Tibco .dll packed) I suggest you store in a resource in your own C# assembly, and unpack it to the ?xll directory on startup(in your AutoOpen()). That should be early enough for Tibco.

Else look at the disassembly of the Tibco library and see how the use that file. Maybe that will give you an idea where to put it.


Jan 20, 2016 at 5:41 AM
Reading about .netmodules here: http://blogs.msdn.com/b/junfeng/archive/2005/02/12/371683.aspx, I wonder if you can't just run link.exe and combine it with the .dll to get a single file assembly.

Jan 20, 2016 at 7:53 AM
HI Govert, thanks for the response!

No, I haven't been able to get it working at all yet. I copied it into the xll directory and a couple of other places (guesses!) but no luck.

I haven't tried not packing the dll and then having the net module and dll in the same directory, Ill try that and see how it goes.

I am going to try your suggestion now and Ill let you know how I get on. I don't how to use link.exe so Ill have to figure that out first!