Search code examples
c#wpfflashwindowsformshostaxshockwaveflash

How do I access the Flash Player settings in an AxShockwaveFlash control?


I'm using a WindowsFormsHost to host an AxShockwaveFlash control in a WPF application. I've been having lag issues with Flash's multi-touch capabilities, so I wanted to check the Flash Player settings to see if hardware acceleration is enabled. However, I can't seem to do that.

Flash context menu with grayed-out settings button

Does anyone know why Settings is grayed out or how I can access them? Here is my code:

        WindowsFormsHost host = new WindowsFormsHost();
        {
            Width  = 1920;
            Height = 1080;
        }
        AxShockwaveFlash flash = new AxShockwaveFlash();
        {
            Width =  host.Width;
            Height = host.Height;
        }
        TouchCanvas.Children.Add(host);
        host.Child = flash;

        flash.Movie = "C:/Program Files/MyFolder/MyFlash.swf";

Solution

  • It turns out the settings weren't accessible because Flash Player has minimum required dimensions for displaying popups like settings. You can see the flaw right here in my code. I was initializing these items incorrectly. It should be

        AxShockwaveFlash flash = new AxShockwaveFlash()
        {
            Width =  host.Width,
            Height = host.Height
        }
    

    and not

        AxShockwaveFlash flash = new AxShockwaveFlash();
        {
            Width =  host.Width;
            Height = host.Height;
        }