问题
So here I am, first time windows developer (done java swing, iphone, flash/flex) and I'm confused by what technology Microsoft wants me to use for in browser rich applications. The application I'm designing is a file uploader that supports drag and drop from the filesystem, seems easy, I already implemented this already in Java and I figured it'd be even easier using Microsoft's tools but which deployment platform to use...
Silverlight: Great for video, lightweight applications, tons of controls and widgets, runs in browser, its just like Flash, awesome. No drag-and-drop filesystem access, boo.
ClickOnce: You can deploy a full-fledged windows application with all the bells and whistles, however it won't run inside the browser even for a web-only deployment, it opens in a new window, boo.
In browser DLLs: These work exactly like the old ActiveX applications which is great, except the only way a user can run them is by adding the site as a trusted site via the security panel and modifying their .Net security using caspol which isn't an acceptable deployment strategy. You should be able to just prompt the user to trust, just like a Java app.
ActiveX: Does almost everything a full-fledged windows application can, including full filesystem access, runs inside a browser, awesome. For some reason this is a deprecated technology nobody talks about or uses anymore, seems like you can only generate ActiveX cab/ocx files from really old VS versions (2003) or VB6.
So is what I want just unattainable? Can I not have full filesystem access with drag and drop, in an app that is run inside the browser without having the user jump through hoops to run it? I'm trying to find a good reason for the problems I'm running into to explain to my coworkers.
回答1:
Sounds like you want a WPF Browser Application (XBAPs). These apps run within the browser, but have full support for the .NET Framework and WPF (and potentially even full trust, if granted by the user). The only thing to really detract from that is that they only run on Windows (clearly) and only within IE7/FireFox (with a plugin).
Side note: Silverlight 3 applications can in fact be run from the desktop, without the need for a browser window.
回答2:
Why do you feel the need to limit yourself to Microsoft technologies? I'm a big Microsoft/.NET fan, but I also believe in using the right tool for the job. If Java works, then use it. If Flash works, then use it.
来源:https://stackoverflow.com/questions/1309451/what-is-microsofts-roadmap-for-in-browser-applications-silverlight-clickonce