This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Re: Managed DLLs and external references
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 09, 2010
02:33 PM
Managed DLLs and external references
Hello,
I've got a C# managed DLL that makes a call to a helper DLL, which in turn has calls to some other DLL (my managed DLL needs to make some calls to the application DLLs I'm installing to get some tasks done.) Both of these DLLs are added to the C# DLL I'm calling so I can use them as needed. I then have the dlls listed as Dependency1, 2, etc. This is actually working great and doing what I want.
The problem is now whenever I add a CA, and I try to browse the classes and Methods in the Method Browser for my managed DLL, Installshield complains it can't find one of the references I have added to the project. If I click ok, the Method browser shows nothing. As a workaround I have copied the referenced DLLs to the InstallShield System folder, but I'm thinking there has to be a better way than that to do it as it's not a very portable solution. Any ideas? Are there any reference path areas somewhere I am missing?
Thank you!
-Mike
I've got a C# managed DLL that makes a call to a helper DLL, which in turn has calls to some other DLL (my managed DLL needs to make some calls to the application DLLs I'm installing to get some tasks done.) Both of these DLLs are added to the C# DLL I'm calling so I can use them as needed. I then have the dlls listed as Dependency1, 2, etc. This is actually working great and doing what I want.
The problem is now whenever I add a CA, and I try to browse the classes and Methods in the Method Browser for my managed DLL, Installshield complains it can't find one of the references I have added to the project. If I click ok, the Method browser shows nothing. As a workaround I have copied the referenced DLLs to the InstallShield System folder, but I'm thinking there has to be a better way than that to do it as it's not a very portable solution. Any ideas? Are there any reference path areas somewhere I am missing?
Thank you!
-Mike
(3) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 09, 2010
08:12 PM
Use WiX DTF instead. Any thing that you add to your C# project ( references with Copy Local True and Project Content including nested folders ) will get packaged up and extracted at runtime relative pathed to the current directory. This makes it very easy to manage all your runtime dependencies.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 13, 2010
11:45 AM
I suspect the reflection-based method browser just doesn't consider dependencies, so they have to be automatically found along the search path or it will fail. This is okay, of course, because you are not required to use the browser. You can type in the name of your method and specify the parameters you wish to pass. You merely get more information for free when the reflection succeeds.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 13, 2010
12:25 PM
With DTF, if you want to use late bound calls you can add your dependency as a project item | content instead of a reference and the file will be packaged up and made available.
![](/skins/images/D60DF682EA37BF37032955CE10F3F0BB/responsive_peak/images/icon_anonymous_message.png)