I'm building a LMS system using Sharepoint (WSS 3.0) with the Sharepoint Learning Kit (SLK). One of the requirements is to be able to host Silverlight content within the SCORM package. Has anyone done this before? I haven't been able to find much (anything) online that talks about how to do this. Most of the content tools that exist for SCORM are able to handle Flash, but I haven't come across anything that will do Silverlight.
If all else fails, I'll try to manually build a SCORM package, but I'd really like to find some examples or howtos of doing this with Silverlight first.
Has anyone done this before?
I haven't done it personally before, but from a SCORM perspective the content is a black box. It shouldn't matter if it is implemented in Flash, Silverlight, or whatever. The complex part about using plug-in technologies with SCORM is establishing communication with the SCORM API via JavaScript. In Flash, it can be tricky to communicate establish a communication link between the Flash movie and JavaScript in the browser. It looks like this is a straightforward process in Silverlight.
Check out SCORM CLOUD, and then build an API to talk to it. http://www.scorm.com/
Hope this helps,
Dan Linstedt
http://danLinstedt.com
Related
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!
Is it possible to only use a managed dynamic language such as javascript in a Silverlight application, with no server side compilation before deploying to the client? I'm looking for 0 server side compilation of any code here - would like the entire application to be 100% compiled/interpreted in the browser. I skimmed through the DLR specs but I didn't notice such an option.
Technically the answer is yes. Silverlight is a pure client side technology that runs a cut down, secure CLR in a plug in. The Silverlight API is accessible scripting languages including Javascript, F#, IronPython and IronRuby.
However, it is questionable whether you should progress because there doesn't seem to be any community or support around this. Furthermore, Silverlight is in support mode and you have to consider whether it is worthwhile investing your energy in such a dimly lit corner.
There are a few technology demonstrations by Jimmy Schementi here. Also check out the references in DLR Wikipedia entry. The old silverlight forums used to have an entire subforum dedicated to Javascript and Silverlight. This is now gone. Consider that as a warning if you decide to progress in this direction.
A few years back, there was an SDK that included a working IronPython and IronRuby with Silverlight, some demos and build scripts. Look for Chiron, which packages scripts and xaml into a single .xap (zip) file. This is in the DLR. There were some cool examples which demonstrated a python and ruby interpreter running in the client side in a Silverlight plugin.
Alternatively, you can develop most of your application in a typed language and then expose parts of it to javascript via a Javascript bridge. The MSDN has some short write up on how to do this.
I am looking for a way by which I can automate my application build on Silverlight.
I need to use Selenium as required, can anyone tell a process or any good tutorial by which I can achieve what I require.
Thanks in advance.
Take a look at:
http://code.google.com/p/silverlight-selenium/
and
Silverlight testing: Watin vs Selenium comparison
Also bear in mind that Silverlight's future looks uncertain:
http://www.hightechnewstoday.com/apr-2011-high-tech-news-archives/74-apr-13-2011-high-tech-news.shtml and http://www.electronista.com/articles/11/11/09/microosft.may.axe.silverlight.after.major.release/
etc. etc.
So you may prefer to consider HTML5 for future projects after completing your current Silverlight project, as HTML5 has a brighter future because of its cross browser support and efficiency compared with proprietary technologies like Flash and Silverlight.
I suggest Sikulix which a desktop automation tool using which you can automate almost everything. which uses text interpretation of image so that us can locate your component.
If you are using python selenium i suggest to use pyautogui which is nice python package to automate silverlight web pages.
Are ActiveX applets as a technology supported by Microsoft dead?
What are the alternatives to ActiveX to create extremely rich internet applications using Microsoft Technologies? (Silverlight does not cut it for me, as it doesnt give me access to serial ports - or does it?)
You can of course still make ActiveX applications, but know that they will only work with Internet Explorer, unless users of other browsers install hosting plugins, that aren't all that good anyway.
In either case, a web application that requires access to a serial port? Are you sure you're not better off with a desktop application instead? A simple refresh and you've cut off that serial port.
Not all applications belong in the browser.
If you want to launch an application via a web browser that can access the serial ports, one option would be to use Java Web Start with JavaFX as the rich interface API, and Java Communications for the serial port access. You could end up with a cross-platform application at the end as well.
Or just write a native application using your favoured Windows toolkit if you absolutely are restricted to using Microsoft tools.
ActiveX as technology is very much alive, and will remain for many years to come. But its usage for Internet is dead. ActiveX is to be only used from within windows stand-alone applications.
ActiveX as of 2015 is a dead technology that even the maker is no longer interested in continuing to use it. Here is something to read.
No, Silverlight is designed from the ground up to be completely sandboxed, no way to bypasss that (thank god).
If you need that kind of access, but are looking for an easy deployment, I would suggest building a Clickonce application.
There are restrictions, because I think by default they are not full trust, but that's the best you will get.
It's also going to be the only easy route if you need printing (unless you are willing to round-trip to a server to generate a PDF file).
If you need direct access to some hardware (like for a POS software with cash drawer, receipt printer etc), you need to go "desktop". Clickonce can give you some deployment options, XBAPs can give you the "browser experience", but you are going to have to make compromises based on what your "hardware access needs" are.
EDIT:
I didn't notice the Silverlight exclusion in the original question. My comment it not really applicable. Sorry!
I don't know that I would call ActiveX dead just yet, but I would be cautious if you are planning to build an application based upon this technology. My recommendation would be to use Silverlight. This provides much of the functionality that is commonly desired in ActiveX controls, but uses the newer .NET technologies.
There is alot of talk about using Silverlight for media playback, but it has many powerful feature that can also be used to create Line-of-Business applications as well. In fact there is a great podcast episode on DotNetRocks that discusses this exact subject.
Here are a few more links that might point you in the right direction:
Microsoft Silverlight Getting Started
Silverlight 2 and a Glimpse of Silverlight 3 by Scott Guthrie
To the best of my knowledge, Silverlight 4 still doesn't give you direct access to serial ports, but it does give you access to any local web cam and microphones now. You could presumably also run Silverlight 4 out-of-browser, which gives you access to COM objects, and you could write a quick-and-dirty COM object which wrapped serial port access. That said, I also agree with what folks said above about not all applications belonging in the browser.
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