Hello,
SDK documentation explains that we need to make a host application and then deploy.
Because the dlls of the sdk are not signed (I am talking about acmgd.dll) we cannot compile the project in our solution, therefore we cannot create this host application. Is there any way we can get the dlls signed? or is there any other work around? I saw this article:
but I am not sure if this still apply to the realDWG2015
Thank you
Solved! Go to Solution.
Solved by Balaji_Ram. Go to Solution.
Solved by Balaji_Ram. Go to Solution.
acmgd.dll it is part of AutoCAD, not from RealDWG, please go to your RealDWG installation folder, in there you can see all the avail assemblies. hth
acdbmgd.dll in RealDwg SDK should be the same as the one coming with AutoCAD. Up to the latest version of AutoCAD, 2015, its PIAs for .NET API are not signed. There is nothing you can do about it: if your assemblies depend on unsigned assemblies, your assemblies are not sign-able.
Autodesk may or may not provide signed PIAs in future version, but you can only wait and see.
Norman Yuan
I still have not installed RealDWG 2015, but i checked and AcDbMgd.dll cannot be installed in the \Inc folder -- That folder should be only use for the C++ header files.
I do not know if it is possible what you are asking, you may need to go to Tech Soft 3D and see if they can answer your question. HTH
Normally you will need just to install RealDWG with your serial#, then just be able to reference acdbmgd.dll (from your RealDWG installation folder), use Copy Local to True, have your Host class derived from HostApplicationServices (Host : HostApplicationServices), on this there may be some samples out there or this customization forums.
Found a url link for you:
From there you should be able to add your own commands and build it.
Hello LE3,
I am asking about signing of the dlls, dont know why you response that. Anyway, I did that already but still I need the dlls to be signed. Is there anyway to achieve this? Can I sign it by myself?
Thank you
Is it possible for someone to sign the dlls by themselves or there are any legal issues on doing that?
Can't help you anymore on this, wait to see if someone from adesk or other possible RealDWG users end up answering. We use RealDWG for in-house.
Good luck.
I don't presume to speak for Autodesk, but I suppose the terms and conditions of your RealDWG license should be fully honored in addition to the laws of copyright.
Hello Owen,
Thank you for your answer. I guess we all agree with your statement. However, I wonder if what you really mean is that because of the license term and conditions and copyright laws is actually not possible to sign the dlls (so you really now about it). Otherwise your comment does not really say too much.
Hello Camilo,
In the Devblog post that you mentioned in your OP, please look at the comment by Albert from the AutoCAD Engineering team.
It explains the reason for not signing the dlls that are part of the SDK. This also holds for dlls that are part of RealDWG SDK.
Can you explain how the dll strong name causes the build issue that you are having with your product ?
Are you trying to strong name your assemblies that have dependencies on assemblies from RealDWG SDK and if so, what is the reason for doing that ?
Is it for registering your assembly in GAC ?
In my opinion, since your host application can always resolve dependencies from its own folder, there is not much benefit by strong naming your assemblies and registering in GAC. Even if you plan to have multiple versions in the same system, if each deployment of your RealDWG application has a different version of your assembly, there should be no problem.
But, please do let me know if there are any other reasons.
Regards,
Balaji
Hello Balaji,
Thank you for your answer.
Regarding your questions. We can actually build our solution if we disable the signing. However, we would like to get the Microsoft desktop apps certification for Windows 7, Windows 8, and Windows 8.1 and one requirement is that our assemblies must be signed, and for that we need that third party libraries that we use are signed as well. We use many third party libraries and this is the first one that does not provide .NET signing. Also, some of our partners demand our product to be signed as well.
@cgcamilo wrote:However, I wonder if what you really mean is that because of the license term and conditions and copyright laws is actually not possible to sign the dlls (so you really now about it).
I do not know the terms of your license, and I do not know the copyright laws of your territory, however I presume that you could find somebody that does. What I meant is that it would be more appropriate to ask such a person, since we here cannot know.
Thanks for clarifying.
Sorry, but it will not be possible for our engineering team to assign a strong name for the SDK assemblies at present.
None of the assemblies from AutoCAD, Revit, RealDWG provide a strong name.
The reason for it is already explained in the blog post and is a result of a well thought-over decision by our engineering team after weighing its pros and cons. In short, the benefit of providing a strong name was not significant and so was not considered a priority.
Providing a strong name on your own, should involve disassembling it which is not supported and I would not attempt it.
Regards,
Balaji
Thank you for the answers and to all people that participated.
I will then use the native API instead of the .NET.
If you mean Microsoft's Certification then it's not strong-name signing, it is Authenticode signing. See https://msdn.microsoft.com/library/windows/desktop/hh749939.aspx and especially https://msdn.microsoft.com/library/windows/desktop/hh801887.aspx - you need a code-signing certifcate. It's a very different thing.