by investigating the project i try to understand the references as to how they were added, as project or as dll.
Only difference i found is in the properties of the references in the solution explorer. if a reference added as a dll, it has one more property named specific version. compare the images i attached.
I dont know if i can rely on this finding though.
any ideas?

Recommended Answers

All 6 Replies

When you create a smart cab project(probably the same in setup project), if your referencing project does not use any namespace or class from the referenced project, smart cab project wont output the referenced dll although it appears in the detected dependencies section.

>> by investigating the project i try to understand the references as to how they were added, as project or as dll

Its the same thing. The "SpecificVersion" doesn't appear in your referenced projects because it knows the version since it is part of the solution and compiled with your project, it merely pulls out the version at compile time. What are you trying to do here?

commented: the reason is not to be a sponsor but to get rid of ads i think :) +7

i have an issue, although i add the primary outputs of some projects to my smart cab project, it does not output the depended dll files. it is wierd, i didnt understand what might be the cause.

The .msi installer auto-detects dependencies but excludes dependant DLLs that are part of the .NET framework. If you're not using the standard MSI builder then that functionality is not included which I am guessing is there case here. There are dependency walker utilities out there that will do this for you but I think you have to pay for them. The properties available to each library also depend on the type of library it is.

Add a reference to:
C:\WINDOWS\system32\ieframe.dll

versus:
C:\Program Files\Microsoft SQL Server\100\SDK\Assemblies\Microsoft.SqlServer.ConnectionInfo.dll

commented: reputationCallBack(serkan) +7

What i noticed is, after you build the smart cab project, you need to refresh dependencies by right clicking and selecting refresh dependencies from the context menu. then you need the build once more, then it really embeds the dependencies. it is wierd again but it solved the output problem.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.