Author |
|
jhiey Intermediate
Joined: August 03 2010 Posts: 15
|
Posted: August 03 2010 at 8:30am | IP Logged
|
|
|
We're currently using LMEVoipManaged.dll for our .Net application. But we need the LMEVoipManaged dll to be strong named. Any steps how we can achieve this? We already tried ILDASM/ILASM - no success.
Thanks!
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: August 03 2010 at 8:53am | IP Logged
|
|
|
No problem – we can help you.
Are you using a trial or a purchased/licensed product image?
If you purchased a license, email your “CustomerLog.html” LME license file to “supportgroup” at the lanscapecorp.com domain and reference this post in your email.
Before we give you support – we need to know who you are and your company name. :)
Thanks,
Randal
|
Back to Top |
|
|
jhiey Intermediate
Joined: August 03 2010 Posts: 15
|
Posted: August 03 2010 at 9:23am | IP Logged
|
|
|
I just sent you an email containing the information you required.
Thanks!
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: August 03 2010 at 1:45pm | IP Logged
|
|
|
Hello jhiey,
Thanks for sending the license validation. Yes – your company is a valued customer of ours!
Unfortunately, we have not gone through the process of generating strong names for .NET managed assemblies we develop. This includes all the .NET VOIP code we develop here – including the managed code wrapper for the LME (VOIP Media Engine).
From what we know, you should be able to take any .NET assembly and generate a strong name for it using tools that are part of the latest Microsoft platform SDK – namely the “assembly linker”. You should be able to do this with the LME managed code wrapper DLL also.
You probably already know this information, but a few good places to locate for the “how to” answer is:
CodeProject - Strong Names Explained:
http://www.codeproject.com/KB/security/StrongNameExplained.a spx
MSDN - Strong-Named Assemblies:
http://msdn.microsoft.com/en-us/library/wd40t7ad.aspx
MSDN - How to: Sign an Assembly with a Strong Name:
http://msdn.microsoft.com/en-us/library/xc31ft41.aspx
Other Note:
We are having a scheduled company “shutdown” starting this afternoon until this upcoming Sunday evening. During this time, all support responses and order processing will be on-hold. We are working on upgrading our infrastructure and regret the delay this will cause in answering your questions.
We plan to be back in full operation starting this Monday morning August 9, 2010.
Post as many questions to this thread as you want – we will start again to work with you on this issue then.
I regret the delay but appreciate your understanding.
Thank you,
Randal
|
Back to Top |
|
|
jhiey Intermediate
Joined: August 03 2010 Posts: 15
|
Posted: August 04 2010 at 8:34am | IP Logged
|
|
|
(Correct me if I'm wrong) I'm not so sure if i can really use AL for that purposes since I don't have a copy of the module I am going to create my signed dll from.
To be able to generate the signed dll, I use this command:
AL /out:LMEVoipManagedSigned.dll LMEVoipManaged.netmodule /keyfile:LMEVoipManagedSigned.snk
What's missing is this LMEVoipManaged.netmodule. Also not sure if this is included in your SDK.
That's why I was wondrin how you created the LMEVoipManaged.dll. Was it compiled/built in .Net? If yes, then there's a good chance that you can create the signed assembly by just referencing to an snk (without us having to reverse engineer your codes).
I'm running out of options since I need this done this week. By the way, I'm creating a Custom ActiveX component that could be used from the browser(IE). Another option would be if you already have created an ActiveX component(for IE) and/or Plugin(for Mozilla), is there any way we can also get hold of this?
Thanks!
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: August 09 2010 at 10:40am | IP Logged
|
|
|
Hi jhiey,
We are back in “full swing” from our scheduled temporary shutdown. Thank you for your patience.
…good explanation in your previous post. Like I mentioned, we have never had to sign an assembly with a strong name. It seems to be a simple process though…
My only question is:
What exactly is the “*.netmodule” file and how is it created
If we need to get this file to you, we will. If we need to add this file to the LME distribution, we will.
If you know how the “*.netmodule” file gets created, let me know. As usual, the platform SDK documentation is not clear. We build the .NET LME API wrapper using the VS2008 tool chain.
In the meantime, I am researching how the “*.netmodule” gets created. I suspect it is an output file from the LS managed code wrapper build process. At the moment, our build of the LME .NET wrapper code does not generate this file.
Post if you know the answer.
Again, please excuse the delay in this post.
Thank you,
Randal
|
Back to Top |
|
|
jhiey Intermediate
Joined: August 03 2010 Posts: 15
|
Posted: August 09 2010 at 1:23pm | IP Logged
|
|
|
Btw, are you using VS C++ or is the LMEVoipManaged created using VS C++?
Not sure if you also tried this to generate the strong-named assembly:
http://www.codeproject.com/Articles/35678/How-to-sign-Cplusp lus-CLI-assemblies-with-a-strong.aspx
For the netmodule, I don't think there is an easy way using the VS IDE. I was only able to find this example:
http://blogs.microsoft.co.il/blogs/sasha/archive/2010/05/08/ using-netmodules-for-reducing-compilation-costs.aspx
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: August 10 2010 at 8:58am | IP Logged
|
|
|
The managed code “wrapper” of the LME is built using the Visual Studio 2008 tool chain.
Thanks for the other two links. I will review the info as soon as I complete this post. If any other thoughts come to mind, don’t hesitate to post again.
Randal
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: August 10 2010 at 1:15pm | IP Logged
|
|
|
Hi Georgi,
We rebuilt the v6.0.0.16 LME managed code wrapper DLL so that it now has a strong name assigned. I will email you offline and let you know how you can download a new DLL image. If you can, download this new image (LMEVoipManaged.dll) and perform your appropriate testing to see if everything is working. Please post back to this thread with your results. The LME’s managed code wrapper DLL will now have a “strong name” assigned for all future releases.
I am glad you pointed out the “strong name” issue. It eventually would have been reported by someone else probably sometime in the near future.
Great job!
Randal
|
Back to Top |
|
|
jhiey Intermediate
Joined: August 03 2010 Posts: 15
|
Posted: August 10 2010 at 3:07pm | IP Logged
|
|
|
Hi Randal,
Thanks! I received the signed DLL already but when I try to integrate with our sample application and the activeX application, we're getting an error. Same when I try to use the sample applications included in your SDK. The error is: "A procedure imported by 'LMEVoipManaged, Version=6.0.3874.21692, Culture=neutral, PublicKeyToken=5f27d1cea93c460c' could not be loaded.".
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: August 10 2010 at 3:17pm | IP Logged
|
|
|
OK, we will take a look. I will repost when we know more. Please post again if you resolve this before we do.
By the way, what LME .NET VOIP sample did you test with?
Hmmm…. strange….
|
Back to Top |
|
|
jhiey Intermediate
Joined: August 03 2010 Posts: 15
|
Posted: August 11 2010 at 6:29am | IP Logged
|
|
|
We're using the MultiLine Phone VS2008 and CallDialer VS2008 for testing.
I'll try to test it in another machine.
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: August 11 2010 at 7:47am | IP Logged
|
|
|
Hi Georgi,
Thanks for your last post.
We are working again this morning to track down the problem. Will repost when I have more information….
Randal
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: August 11 2010 at 9:06am | IP Logged
|
|
|
Hi Georgi,
Hmmm… something does not sound right here...
The managed code applications that are supplied with the VOIP Media Engine SDK all work with the managed code wrapper as expected “out of the box”. I just tested building both sample apps you specified above.
If for some reason the native code “LMEVoip.dll” cannot be found, you will get the following error displayed when attempting to run the multi-line phone sample app under VS2008 debugger:
Is this what you are seeing?
If not, what on your end is different when you attempt to run the sample app?
I think I do not have the whole picture…. If the SDK samples do not work, we need to fix that first and then move on to your specific issue.
Thanks,
Randal
|
Back to Top |
|
|
jhiey Intermediate
Joined: August 03 2010 Posts: 15
|
Posted: August 11 2010 at 10:03am | IP Logged
|
|
|
Yes that's the same error we are encountering. We were also able to build them all successfully. It's only in runtime when we encounter that error.
Were you able to fix that error or were you able to build and run the applications?
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: August 11 2010 at 10:34am | IP Logged
|
|
|
Good, at least we are seeing the same error. :)
Yes – We are able to run all the managed code executables using the “strong named” version of the managed code wrapper DLL (LMEVoipManaged.dll).
The error means the “LMEVoip.dll” cannot be found when your app starts executing.
Managed code apps requited both LME DLLs to be present. The DLLs are named:
LMEVoip.dll <--- The native code LME
LMEVoipManaged.dll <--- The managed code “wrapper”
Make sure these DLLs are in your PATH or are in the same directory as your VOIP application.
Randal
|
Back to Top |
|
|
jhiey Intermediate
Joined: August 03 2010 Posts: 15
|
Posted: August 11 2010 at 11:16am | IP Logged
|
|
|
Where did you place the LMEVoip?
For us, we placed the two dlls in this directory:
C:\Program Files\LanScape\VOIP Media Engine\Release 6\Software Examples\Managed Code\Bin\Debug
and even here:
C:\Program Files\LanScape\VOIP Media Engine\Release 6\Bin
but still unsuccessful. Can you also send us the LMEVoip.dll that you used?
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: August 11 2010 at 11:52am | IP Logged
|
|
|
If you install the LME distribution image, normally everything will be set up properly (i.e. the PATH to the two DLLs will be added to your host machine’s system PATH environment variable). You may want to check this to make sure this is set up properly.
To verify the DLL install PATH, open a DOS command prompt and type:
VerifyInstallPath.bat
You should see:
“LanScape VOIP Media Engine has been installed.”
If you do not get this result, add this to your PATH:
C:\Program Files\LanScape\VOIP Media Engine\Release 6\Bin
Alternatively you can place the two DLLs wherever you want. Put them in the same directory as your executable. That will work every time.
If you place the DLLs somewhere else, update your system PATH environment variable to “point” to that location.
Sending you the LMEVoip.dll image won’t do any good. It’s the same binary image you already are using (v6.0.0.16).
Seeing the two DLLs are at these two locations:
C:\Program Files\LanScape\VOIP Media Engine\Release 6\Software Examples\Managed Code\Bin\Debug
C:\Program Files\LanScape\VOIP Media Engine\Release 6\Bin
Make sure one of those paths are in your PATH environment variable. Only one location needs to be added to the PATH.
We are almost there... :)
|
Back to Top |
|
|
jhiey Intermediate
Joined: August 03 2010 Posts: 15
|
Posted: August 12 2010 at 10:04am | IP Logged
|
|
|
Same thing, we're still getting the same error. We verified the DLL install path and it's correct.
Can you send us the two DLL's(LMEVoip & LMEVoipManaged) you used for testing? Or if possible, could you send us the zipped file for the sample application you used for testing or a new SDK installer with the updated DLL's?
Thanks!
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: August 12 2010 at 10:20am | IP Logged
|
|
|
What do you get if you place the two DLLs in the same dir as your multi-line phone sample app and then execute the app from a console window?
|
Back to Top |
|
|
jhiey Intermediate
Joined: August 03 2010 Posts: 15
|
Posted: August 12 2010 at 11:06am | IP Logged
|
|
|
You mean, what if I place the two dll's in this folder: "C:\Program Files\LanScape\VOIP Media Engine\Release 6\Software Examples\Managed Code\Bin\Debug"? I get this error if I do so: "MultiLine Phone has encountered a problem and needs to close. We are sorry for the inconvenience."
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: August 12 2010 at 12:04pm | IP Logged
|
|
|
Ok, that means the operating system tried to load and execute your sample app and that all the DLLs were found. It is blowing up in some other way.
Did you rebuild the sample app using a valid .NET license file????
You should be able to start the sample app now in the VS IDE. Make sure the debugger executable path is set to the same dir where your DLL and built EXE reside. This should be:
"C:\Program Files\LanScape\VOIP Media Engine\Release 6\Software Examples\Managed Code\Bin\Debug”
|
Back to Top |
|
|
jhiey Intermediate
Joined: August 03 2010 Posts: 15
|
Posted: August 13 2010 at 6:58am | IP Logged
|
|
|
Yes the sample app is using a valid .NET license file (We were able to run it using the old DLL. The only change was the reference to the new LMEVoipManaged dll.).
Sorry to rush you but we are already running out of time. It would really help us if you can send the zipped file of the updated software examples included in the sdk (using the newly built LMEVoipManaged.dll and the old LMEVoip.dll). We just want to rule out if the issue is with the compatibility of newly built LMEVoipManaged dll with the old LMEVoip dll.
Thanks!
|
Back to Top |
|
|
support Administrator
Joined: January 26 2005 Location: United States Posts: 1666
|
Posted: August 13 2010 at 8:43am | IP Logged
|
|
|
Yes – you are correct. Too much time already has been spent…
I will get an “engineering release” image ready for FTP download. Will repost when it is ready. This is a time bombed image so only use it for R+D purposes. We will have to issue an official product image to your group when it is available.
Randal
|
Back to Top |
|
|
jhiey Intermediate
Joined: August 03 2010 Posts: 15
|
Posted: August 13 2010 at 8:50am | IP Logged
|
|
|
Sure, no problem. Thank you so much.
|
Back to Top |
|
|