My company wants to try out the library "Thinfinity Virtual UI", to run a Windows Forms application in a browser.
It seems to more or less work, though the application crashes everytime an embedded browser is attached to the form (Cefsharp), see attached image.
I am not able to catch the error in the try/catch.
Any ideas how to remedy/debug this issue?
I tried searching the web for a solution/alternative to CefSharp, looking at error logs, inserting the try/catch. I also wrote to the company, but so far I get no reply.
This is Luke and I work at Cybele Software where we developed Thinfinity VirtualUI to help Windows developers converting their Legacy Windows Applications into modern Web Applications by just modifying one single line of code and adding our libraries.
Unfortunately, as it is, WebView and Chromium are not supported in our propietary protocol. But do not worry, we have 2 valid workarounds.
Using our HTMLDOC demo. Link to our GitHub HERE
This demo shows how to programatically create an iframe inside your application (using HTMLDOC.CreateComponent) , and how to communicate back and forward between the application and the website running inside that iframe, using Javascript Remote Objects (JSRO)
Using our 'Third Party Applications' Feature. Link on how to enable this HERE
Be aware that to enable this feature, you'll need to have our Thinfinity Broker and your app running on a Windows Server. Basically, with this option, you'll be using a Microsoft feature called 'Desktop Duplication' where we can eventually render any Third Party application with the help of Remote Desktop Services.
I hope this does the trick for you and don't hesitate on contacting us about this or any other doubt you may have about our products :)
Thank you!
Related
I'm trying to convert a WPF oneclick installed application and so everything should be pretty straight forward. However, whenever I run the debug project, I get
'The parameter is incorrect'
in a message box popup and I can never run the app.
This happens for my app while trying to debug, all the samples from github, and even the DAC application from the Windows Store. The error pops up even once the app is installed and showing in my application list.
I'm on the latest build of the Creators Update.
There are various errors in the event viewers, but they seem to be a common occurence for WinRT apps.
Any ideas at all?
If you have the WPF project in VS2017, I'd recommend to package directly from VS without using the DAC. see the article for more information https://learn.microsoft.com/en-us/windows/uwp/porting/desktop-to-uwp-packaging-dot-net
The problem appears to be related to the May Security Update. I restored Windows to the factory defaults and everything works fine.
However, once I install the the May Security Update to address this bug with Sql Server and Filestreams, the Desktop Bridge Debugging project stops working.
I'm going to throw out a random guess that it's related to the Microsoft Malicious Software Removal Tool, as the event viewer logs mentioned an issue with the 'parameter is incorrect' referring to the Microsoft.MRT.
Of course it could be anything, and as only 7500 people have even downloaded the Desktop Bridge Debugging project in the first place, I doubt it's high on the list of Microsoft Developer Priorities.
And to be completely honest, it's really probably my fault for not rewriting the app as a UWP app, after rewriting it as a Windows Forms app, and as a Silverlight app, and as a WPF app and on and on and on. Although, I'm not sure how many glasses of Kool Aid are left in the punch bowl for me.
I can understand how UI automation can help retrieve information from text boxes within windows forms applications. How can I retrieve information however from command prompt tools and web browsers? I have a telnet session that I would like to read data from as well as a simple web based tool with plain html. Any ideas?
I could be wrong, but I don't think there's an easy way to interact with console programs using the UIA API, and web browsers, while possible, would be time-consuming to deal with. But other libraries can help.
Are you using C#? If so, for console applications, you can probably use the Process class if your automated test are simple - here's an old post about the same topic:
Command line automation – expect equivalent
I'm actually still searching for a free Expect-like C# library. Haven't spent too much time looking yet, though.
For web automation, I suggest using the Selenium C# client driver - as far as I know, it should do what you need:
http://seleniumhq.org/docs/03_webdriver.html
http://seleniumhq.org/download/
I have a silverlight application, now I want make it run as a mac OSX app, perhaps aiming to sell on app store. Since I'm completely a newbie in mac developing, is it possible to make this silverlight app run like a native app?
Maybe there is some way to make a browser shell, and embed that silverlight on a html to show it. is there any way make it more native without a browser control, and I want to disable the right click "silverlight" popup.
More over, since silverlight cannot access local file system directly, any good idea to do this? First came into my mind is put a webservice module in the app, so that this app acts both client(silverlight) and server, and then process the local file on server module.
The most you can do is have it run as a Silverlight Out Of Browser application (see a bit more detailed explanation here). This mode is pretty much like running in a chromeless browser, however it is still running in the same sandbox and you have very limited resource access.
Apps running this way will definitely not have the native OS/X app feel, neither will they be started similarly and you won't be able to sell it on the Apple App Store.
If you want to target Mac desktops and deliver a native experience I'm afraid currently Objective C or a framework on top of that is the only viable choice.
I am concurrently running several different out of browser elevated applications and sending messages between them.
Is there a way for me to check to see if a specific one of those elevated out of browser Silverlight apps are currently running and if not programmatically start that app for the user? preferably without automation. If via automation, how?
Thanks!
After continuing to search for answers on this problem I finally found this post: link
It is a bit of a hack and will not work on a Mac (for now) but it's a start.
I thought I would share it back in case others here were interested.
Check out Tim Heuer's post http://timheuer.com/blog/archive/2010/03/25/using-sllauncher-for-silent-install-silverlight-application.aspx on how you can launch OOB applications. It would be necessary to use automation to run sllauncher.exe. As for detecting if OOB aplication is allready running I'd look to local messaging api. I haven't worked with it myself, so I can only suggest to give it a try.
We are planning to build a new integration component that can provide us access to user's machine installed apps from our web site.
The first word that came to me was ActiveX, but our expertise with the technology was not the best in the past.
Thinkink a lit bit more, the work Silverlight also came to my head, but the full trust thing was one of the few things I remembered reading about the technology..
The question is: is there a way that Silverlight (2, 3, 4, whatever) can run as a full trusted application from within the browser?
Links are appreciated.
Filipe
Unfortunately, no. Full trust is a feature of Silverlight 4, currently in beta, and is restricted to out-of-browser applications.
Additionally, full trust SL4 applications do not have unrestricted access to the system (particularly file system), though this may change before before release (if I have anything to do with it).
Edit: If you are considering ActiveX (which is Windows/IE only), you might want to have a look at WPF, since it can run full trust from the browser (if it's in a trusted zone).
No, like Richard said, this is not at all possible inside the browser, even in SL4. There is a sandbox, and you live in it. You can talk to web services, other Silverlight applications or the browser.
By talking to the browser, I mean you can talk to the DOM and the Javascript engine. We needed to launch a Windows application and communicate to it via Silverlight. We accomplished this by putting a small ActiveX control in the web page. It is responsible for launching the WinForms application and handling inter-process communication to it.
This method has many drawbacks: It can only work in IE, and it only works in Windows. You might also run into permissions issues. The ActiveX component needs to be installed along with the desktop application, or as an additional download. The deployment story there is pretty awful, if you ask me.
In our case, the analysts were willing to deal with the restrictions for the re-usability of an existing application, and we consider it to be an optional feature.
Does it have to be a web application? sounds like you want a desktop app. It can be easiliy distributed with one Click deployment. Will work on windows only but since you were considering ActiveX sounds like that's what you need.
Well - if you're hosting the silverlight control from an ASP.NET application - Believe you have access to
Request.ServerVariables["AUTH_USER"];
...and you can pass that on to your control as a parameter.
D