XNA in Internet Explorer?

I was surprised to find out that XNA doesn't work in Internet Explorer as a WinForm Control. I know I must be smoking crack, but somewhere a long the line I got the impression that XNA would enable a 3D environment in Internet Explorer. If we can put Ink on the Web, http://www.code-magazine.com/Article.aspx quickid=0512062, then I think we should be able to put a 3D environment on the web as well

Anyone know of a way to get XNA or Direct X working as an element of Internet Explorer

Thanks,
Johnny



Answer this question

XNA in Internet Explorer?

  • douner001

    I am very confused here.

    Calling WIn32 APIs in a usercontrol is not allowed as part of the default security settings. That requires Full Trust as does Managed DirectX. So your control should not even run. I'll drop you an email offline as I don't want to dig into this in the forum.



  • UK_2006

    i have unpacked all the files and uploadet to my webserver

    if you dont want to install the sample , here is the source code

    http://www.3devolution.net/Portals/0/Directxmdx.rar

    the doc is written in danish ,and it is written by my friend , but you can look at the code

    just compile the thing and put is up on your remote or local server and run the aspx page

    sample before is just the install and it create a virtual website on your local webserver in install all the source code under iis



  • Muhammad Masood

     Michael Hansen wrote:
    http://www.3devolution.net/DevBlog/tabid/90/EntryID/5/Default.aspx

    "Captain Solo" ! His first name wouldn't happen to be Han, would it  

    Also, you really should get someone that has a better command of the English language to do the text for your site. It's a bit hard to take it seriously with so many grammatical errors.



  • ShawnE

    This topic has come up MANY times with Managed DirectX. The real problem isn't the direct access its the level of testing that is required to ensure safety. Remember the DirectX team has to have priorities like all teams and there is no scenarios with DirectX for web games - its mostly about usage for the very large PC and Xbox game developers. The amount of security testing that has to go into an API to ensure it is safe for use is HUGE. I'm sure if enough people, or rather enough big companies, ask for this feature it will be prioritised higher.

    As for danger - I could easily write an app that takes over the full screen and makes it look like you are interacting with the desktop when you are not. DirectInput gives you low level access to keyboard - can you say keyborad sniffer Thats just off the top of my head. At worst its pretty easy to crash some PCs by sending bad data to drivers - while its not a security issue it could be seen as a DoS attack.

    (Yes I know DirectInput is not in XNA and possibly XNA is a little safer but the points still stand)



  • gatekeeper6838

    If I understand you correctly you are running the MDX code on the server and pushing an image down to the client. This is VERY different to what the original person is asking.

    Running actual MDX/XNA code on the client in a browser is impossible unless you totally compromise your PCs security settings (and no I'm nto going to tell you how to do that)



  • TriciaPB

    Neither XNA nor DirectX are enabled to work in IE. There are significant security issues running a DirectX application (which has direct hardware access) from inside an Internet browser.



  • Joudoki

    We are investigating what it will take to enable this scenario, and appreciate your input.

    But you're welcome to discuss with the IE team about the security issues. I believe they will differ with your opinion However, I've said it was a "significant" security issue, not an "impossible" one :)



  • JNG

    well that is not true

    this will run mdx 1.0 c# in a usercontrol inside internet explore

    http://www.3devolution.net/Portals/0/aspnetdirectx.zip

    you need Net Framework 1.0 and the managed directx 1.0

    now you can make games like flash and shockware or java applet and ogengl , just forget all that

    on plugin this usercontrol in your bin folder of your website and run the aspx page

    it coms in full source code this sample

    a verry basic sample it render a triangle in the user control and there is a imput box on the aspx page where you can put

    a rotatetion value in and the triangle rotate after that

    good luck

    note ...............this sample has not direct ascces to the hardware it use the hardware to render a buffer in the memory and then the memory is copied to the aspx usercontrol and displayed on the screen

     

    it can be done , just belive

     

     

     

     



  • brottmayer

    Well I can't see your source since I'm a little dubious about running an MSI package that claims to circumvent .Net security. Are you updating any security settings in that MSI package

  • Dudets

    i will not comprimize any .Net security settings



  • RAGOpoR

    yes you need a webserver remote or local

    yes i have allso converted to xna and is works

    i can all so run xna inside media player like a plugin

    ha.ha.ha

    i have to clean up the source for xna a i realese them

    zman have you seen my othere sample

    http://www.3devolution.net/DevBlog/tabid/90/EntryID/5/Default.aspx

     

     



  • Chronusus

    I dont get this. There already exists other 3rd party 3D plugins that use DirectX (shockwave for example) - so how come this works - or does this plugin also pose a security risk

    Windows Presentation Foundation can run inside a browser as an XBAP. It runs in a sandbox environment with certain features removed for security purposes. Again couldn't XNA be run in a similar way

    I was surprised when XNA was released only to find no plugin was available for IE. In this day and age people *WANT* 3D inside their browser. The possibilities for online-gaming are endless and yet here we are once again talking about security.

    I know these things take a long time to develop and test but its a shame nobody at Microsoft had the foresight to do this whilst the whole Managed Direct X / XNA concept was evolving.


  • Paul Monaghan

    no i am not update any .Net security it call the harware to render and the hardware render to a memory buffer and then

    i use win32 blitbilt to copy the final buffer on to the usercontrol



  • Helio Gama Faria Filho

    David Weller - MSFT wrote:

    There are significant security issues running a DirectX application (which has direct hardware access) from inside an Internet browser.

    Well that's a total bummer. I hope MSFT takes a look at providing this type of support in the future. I know I'm not the only one asking this question as it appears in the forums every 3 to 4 weeks or so.

    While I say this with a smile, I do take exception to the excuse of "direct hardware access". This simply isn't true. If I'm programming to an interface, XNA or DirectX, then I do not have direct hardware access and there's nothing stopping MSFT from creating more secure librarys that have security built into them. Anything MSFT thinks is too dangerious to be used in a Web browser can be filtered out through the XNA library (interface). Even simple sprite library access would be better then no access at all :(

    Just to clarify for those who will surely indicate I have direct hardware access; I would simply ask how do I obtain the memory address of the video buffer and then write to it using a direct memory access method Something a long the lines of Poke(&H23FF, videoBuffer) would be all the proof I need. Also direct hardware access would mean that I have to account for the differences between the XBox hardware and the PC's hardware, which is something XNA does for us. The advent of the content pipeline seems to further indicate there's no direct hardware access in XNA; there are simply interfaces in XNA that give us rapid hardware access.

    Thank you for the responce David. I hope my posting doesn't get you down, I just think a Web friendly XNA library is totally possible in managed code environment.

    Johnny


  • XNA in Internet Explorer?