|
Rank: Advanced Member Groups: Member
Joined: 12/9/2014 Posts: 79
|
I have an ActiveX wrapper of your control to replace IE Activex in our VFP apps.
C# "automatically" exports properties but not methods of classes not declared explicitely.
My wrapper a property called "Document" that returns m_WebView.GetDOMWindow().document. In VFP, I can do this:
oleBrowser.Document.body.innerHTML(for ex.)
but i cant do:
oleBrowser.Document.getElementById()
One option, is recreate in my wrapper all your classes with their properties and methods and copy "data" of your object to my exposed class object. The other option is adapt my wrapper and their use on VFP to this limitation. I choose second becacuse generically is sufficient and i dont have problems.
However, the new 2015 version is causing problems to my wrapper. I cant access properties in major situations. For ex. with new version i cant do: oleBrowser.Document.body.innerHTML. For now, i create a MyDom.Document class, and my property Document now returns return: new MyDOM.Document(m_WebView.GetDOMWindow().document);
Im having problems with EventsArgs too. For ex. in AfterReceiveHeaders, in 2014 i can do from VFP: lcMethod = e.Request.Method. But in 2015 i cant. However, in LoadCompleted, in 2015, i can still do e.Task.Method
From what i have read, i think that you add (expressly or by VS bug) [ComVisible(false)] to your classes. If not, maybe other similar change has broken this functionality.
I would like you can fix it. Otherwise, i have to recreate all your classes.
Thanks for your work.
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,229
|
Hi,
We have posted a new build that should fix this issue. You can download the new build from our download page.
Thanks!
|
|
Rank: Advanced Member Groups: Member
Joined: 12/9/2014 Posts: 79
|
Thanks! I test as soon as possible.
|
|
Rank: Advanced Member Groups: Member
Joined: 12/9/2014 Posts: 79
|
I finished testing and all works like a charm again.
Thank you very much! Great work!
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,229
|
Great. Thanks for confirming that it works for you!
|
|
Rank: Advanced Member Groups: Member
Joined: 12/9/2014 Posts: 79
|
New version 2015.1.92.6 breaks COM Interop in EO.Webbrowser.dll
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,229
|
Hi, We did not change anything related to COM from the previous build. Can you create a test app and send it us? See here for more details: http://www.essentialobjects.com/forum/test_project.aspxThanks!
|
|
Rank: Advanced Member Groups: Member
Joined: 12/9/2014 Posts: 79
|
I updated to new 94.2 version and still crash. I test using your GACTools to register in GAC your dlls too. My wrapper targets .NET 4 Client profile, but I test targeting .Net 2 too. When VS2013 try to register with regasm and generate TLB of my wrapper, it throws error:
Code: C#
error MSB3211: The assembly 'EO.WebBrowser, Version=15.1.94.2, Culture=neutral, PublicKeyToken=e92353a6bf73fffc' is not registered for COM interop. Register it with regasm.exe /tlb.
error MSB3212: The assembly "E:\EOWBAxControl\Release\EoWbAxControl.dll" could not be converted to a type library. Type library exporter encountered an error while processing 'EoWbAxControl.AxEoWbAxControlEvents.LoadCompleted(ea), EoWbAxControl'. Error: Error loading type library/DLL.
When I try to register(in previous fixed 84 version I can do it), regasm throws error:
Code: C#
RegAsm : error RA0000 : Unable to locate input assembly 'EO.WebBrowser.dll' or one of its dependencies.
On another hand, in changelogs of new 94.2 appears IsActive() method created in 92.6 version but removed in the new.
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,229
|
Hi,
We tested this RegAsm with 94.2 and it seems to work fine here. Our steps are:
1. Start command prompt using "Microsoft Visual Studio 2012 -> Visual Studio Command Tools -> Developer Command Prompt for VS 2012" shortcut. This opens the command prompt for .NET 4.0;
2. Run "RegAsm EO.WebBrowser.dll";
This completes successfully. Can you try the same steps and see if it works for you?
IsActive() has been changed to property IsCreated in 94.2. We feel this is more accurate since IsActive can be confused as meaning the WebView currently has the input focus.
Thanks!
|
|
Rank: Advanced Member Groups: Member
Joined: 12/9/2014 Posts: 79
|
Hi, it is very strange.
I follow your steps and works. After I run "RegAsm EO.WebBrowser.dll /tlb" and shows a warning in DOM.Collection, but works fine.
Now I can compile new version.
Maybe only need restart my computer.
In any case, Thanks!
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,229
|
Hi,
Great to hear that it works for you. The warning about DOM.Collection is normal because it's a generic type.
Thanks!
|
|