[newbie] Embedding Flash OCX object

E

Exeem

Hi All,

I'm trying to find a way to embbed the flash.ocx object in a Windows Python
application,
I've successfully integrated a flash object with the ocx already installed
on the system using the Activex Wrapper,
but i would like to embbed it inside my application in order to distribute
my application without the need for the user to install the flash player.
It would like also to embbed the flash animation inside my application
without loading it .. i mean directly from the memory.

I've seen that it was possible in C++ or in Delphi, using the
http://www.flashplayercontrol.com/ .. but don't know how to make it in
Python.

Any ideas are welcome

Dan.
 
K

Kartic

The Great 'Exeem' uttered these words on 4/29/2005 2:11 PM:
Hi All,

I'm trying to find a way to embbed the flash.ocx object in a Windows Python
application,
I've successfully integrated a flash object with the ocx already installed
on the system using the Activex Wrapper,
but i would like to embbed it inside my application in order to distribute
my application without the need for the user to install the flash player.
It would like also to embbed the flash animation inside my application
without loading it .. i mean directly from the memory.

I've seen that it was possible in C++ or in Delphi, using the
http://www.flashplayercontrol.com/ .. but don't know how to make it in
Python.

Any ideas are welcome

Dan.


Dan,

wxPython has the capability to embed Flash inside a wxPython panel. It
uses Macromedia's Flash ocx that is installed when installing flash
player on Windows. And it is pretty nifty; take a look at the demo.

From your message, it is appears you are using win32gui functions but I
am unable to tell. So using Win32, I do not know how you can do what you
are trying. But yeah, look into wxPython!

Please let me know if you need more assistance.

Thanks,
-Kartic
 
E

Exeem

Kartic,

Thanks for your reply,

I already use the wxPython to embbed my flash animation

###
from wxPython.lib.activexwrapper import MakeActiveXClass

ActiveXWrapper = MakeActiveXClass(flashActiveXLib.ShockwaveFlash,
eventClass=None, eventObj=self)

Flash = ActiveXWrapper( self, -1, style=wxSUNKEN_BORDER)
####

It work fine and i can control my flash animation from Python without
problem..

But the Wrapper need the flash.ock to be installed on the user system in
order to work,
and i would like to make an executable application that include the
flash.ocx or load it on startup for
users who doesn't have the flash player installed.
I would like also to be able to load a flash animation from memory and not
to load it from external file.

Don't know if you understand me.. Take a look at
http://www.flashplayercontrol.com/ .. I'd like such a solution for Python,
don't know if i can use that dll from Python or make a module myself..

Anyway, thank a lot for your interest

Dan
 
K

Kartic

The Great 'Exeem' uttered these words on 4/30/2005 11:37 AM:
Kartic,

Thanks for your reply,

I already use the wxPython to embbed my flash animation

###
from wxPython.lib.activexwrapper import MakeActiveXClass

ActiveXWrapper = MakeActiveXClass(flashActiveXLib.ShockwaveFlash,
eventClass=None, eventObj=self)

Flash = ActiveXWrapper( self, -1, style=wxSUNKEN_BORDER)
####

It work fine and i can control my flash animation from Python without
problem..

But the Wrapper need the flash.ock to be installed on the user system in
order to work,
and i would like to make an executable application that include the
flash.ocx or load it on startup for
users who doesn't have the flash player installed.
I would like also to be able to load a flash animation from memory and not
to load it from external file.

Don't know if you understand me.. Take a look at
http://www.flashplayercontrol.com/ .. I'd like such a solution for Python,
don't know if i can use that dll from Python or make a module myself..

Anyway, thank a lot for your interest

Dan


Dan,

Ah! I see what you are trying to do. While I don't have a working piece
of code to share with you, I can give you a few ideas that you could
consider:

1. Supply the Macromedia OCX with your app. Try to use the wxActivex
class and if that fails, register your copy of the OCX. You can do this
either using a batch file invoking regsvr32 or use Win32 to register.
The flip side: The flash will be loaded from a file rather than memory.

2. Wrap the flashplayercontrol.com's DLL in an Activex control using VB
and distribute your OCX. And then use wxActivex to access your OCX.

3. Use SWIG to generate Python bindings for the DLL. I have never done
this and I am sure some of the more erudite members of the newsgroup can
shed some light.

4. Call the supplied DLL using Ctypes. In this case, you can convert the
example under the "Features" link of that site in DLL calls using
Ctypes. Question: How will that integrate with wx?

Hope that helped a bit.

Thanks,
-Kartic
 
Z

Zoool

Thanks Kartic,

Don't know if i have understand everything, but i 'll try using your lights,

To integrate a flash movie using wx, here is a piece of code (the Flash.py
is auto-generated by makepy.py)

### testFlash.py
from wxPython.wx import *
import os

if wxPlatform == '__WXMSW__':
from wxPython.lib.activexwrapper import MakeActiveXClass
#import win32com.client.gencache
#import win32com.client
import flash

flashControl = flash

class FlashPanel(wxPanel):
def __init__(self, parent, flashFile):
wxPanel.__init__(self, parent, -1)

sizer = wxBoxSizer(wxVERTICAL)

ActiveXWrapper = MakeActiveXClass(flashControl.ShockwaveFlash)
self.Flash = ActiveXWrapper( self, -1)
self.Flash.Movie = os.path.join(os.getcwd(), flashFile)
self.Flash.Menu=False
self.Flash.OnFSCommand = self.OnFSCommand

sizer.Add(self.Flash, 1, wxEXPAND)
self.SetSizer(sizer)
self.SetAutoLayout(True)

EVT_WINDOW_DESTROY(self, self.OnDestroy)

def OnDestroy(self, evt):
if self.Flash:
self.Flash.Cleanup()
self.Flash = None

def OnFSCommand(self, command, *args):

if command=="openFile":
self.openFile()
if command=="saveFile":
self.saveFile(*args)


def openFile(self):
dlg = wxFileDialog(self, "Choose", "", "", "*.*", wxOPEN)
if dlg.ShowModal()==wxID_OK:
filename = dlg.GetFilename()
dirname = dlg.GetDirectory()
f = open(os.path.join(dirname, filename), "r")
self.Flash.SetVariable("PyReply", f.read())
f.close()
dlg.Destroy()

def saveFile(self, text):
dlg = wxFileDialog(self, "Save As", "", "", "*.*",
wxSAVE|wxOVERWRITE_PROMPT)
if dlg.ShowModal()==wxID_OK:
filename = dlg.GetFilename()
dirname = dlg.GetDirectory()
f = open(os.path.join(dirname, filename), "w")
f.write(text)
f.close()
dlg.Destroy()


if __name__ == '__main__':
class FlashFrame(wxFrame):
def __init__(self):
wxFrame.__init__(self, None, -1, "PyFlash -- Simple File Viewer",
size=(550, 400))
self.flashPanel = FlashPanel(self, "testFlash.swf")

app = wxPySimpleApp()
frame = FlashFrame()
frame.Show(True)
app.MainLoop()
### Flash.py

# -*- coding: mbcs -*-
# Created by makepy.py version 0.4.8
# By python version 2.3.3 (#51, Dec 18 2003, 20:22:39) [MSC v.1200 32 bit
(Intel)]
# From type library '{D27CDB6B-AE6D-11CF-96B8-444553540000}'
# On Tue Mar 16 01:58:37 2004
"""Shockwave Flash"""
makepy_version = '0.4.8'
python_version = 0x20303f0

import win32com.client.CLSIDToClass, pythoncom
import win32com.client.util
from pywintypes import IID
from win32com.client import Dispatch

# The following 3 lines may need tweaking for the particular server
# Candidates are pythoncom.Missing and pythoncom.Empty
defaultNamedOptArg=pythoncom.Empty
defaultNamedNotOptArg=pythoncom.Empty
defaultUnnamedArg=pythoncom.Empty

CLSID = IID('{D27CDB6B-AE6D-11CF-96B8-444553540000}')
MajorVersion = 1
MinorVersion = 0
LibraryFlags = 8
LCID = 0x0

from win32com.client import DispatchBaseClass
class IShockwaveFlash(DispatchBaseClass):
"""Shockwave Flash"""
CLSID = IID('{D27CDB6C-AE6D-11CF-96B8-444553540000}')
coclass_clsid = IID('{D27CDB6E-AE6D-11CF-96B8-444553540000}')

#default_interface = IShockwaveFlash
#default_source = _IShockwaveFlashEvents

def Back(self):
"""method Back"""
return self._oleobj_.InvokeTypes(114, LCID, 1, (24, 0), (),)

def CurrentFrame(self):
"""method CurrentFrame"""
return self._oleobj_.InvokeTypes(128, LCID, 1, (3, 0), (),)

def FlashVersion(self):
"""method FlashVersion"""
return self._oleobj_.InvokeTypes(132, LCID, 1, (3, 0), (),)

def Forward(self):
"""method Forward"""
return self._oleobj_.InvokeTypes(115, LCID, 1, (24, 0), (),)

def FrameLoaded(self, FrameNum=defaultNamedNotOptArg):
"""method FrameLoaded"""
return self._oleobj_.InvokeTypes(131, LCID, 1, (11, 0), ((3,
1),),FrameNum)

def GetVariable(self, name=defaultNamedNotOptArg):
"""method GetVariable"""
# Result is a Unicode object - return as-is for this version of Python
return self._oleobj_.InvokeTypes(152, LCID, 1, (8, 0), ((8, 1),),name)

def GotoFrame(self, FrameNum=defaultNamedNotOptArg):
"""method GotoFrame"""
return self._oleobj_.InvokeTypes(127, LCID, 1, (24, 0), ((3,
1),),FrameNum)

def IsPlaying(self):
"""method IsPlaying"""
return self._oleobj_.InvokeTypes(129, LCID, 1, (11, 0), (),)

def LoadMovie(self, layer=defaultNamedNotOptArg,
url=defaultNamedNotOptArg):
"""method LoadMovie"""
return self._oleobj_.InvokeTypes(142, LCID, 1, (24, 0), ((3, 1), (8,
1)),layer, url)

def Pan(self, x=defaultNamedNotOptArg, y=defaultNamedNotOptArg,
mode=defaultNamedNotOptArg):
"""method Pan"""
return self._oleobj_.InvokeTypes(119, LCID, 1, (24, 0), ((3, 1), (3, 1),
(3, 1)),x, y, mode)

def PercentLoaded(self):
"""method PercentLoaded"""
return self._oleobj_.InvokeTypes(130, LCID, 1, (3, 0), (),)

def Play(self):
"""method Play"""
return self._oleobj_.InvokeTypes(112, LCID, 1, (24, 0), (),)

def Rewind(self):
"""method Rewind"""
return self._oleobj_.InvokeTypes(116, LCID, 1, (24, 0), (),)

def SetVariable(self, name=defaultNamedNotOptArg,
value=defaultNamedNotOptArg):
"""method SetVariable"""
return self._oleobj_.InvokeTypes(151, LCID, 1, (24, 0), ((8, 1), (8,
1)),name, value)

def SetZoomRect(self, left=defaultNamedNotOptArg,
top=defaultNamedNotOptArg, right=defaultNamedNotOptArg,
bottom=defaultNamedNotOptArg):
"""method SetZoomRect"""
return self._oleobj_.InvokeTypes(109, LCID, 1, (24, 0), ((3, 1), (3, 1),
(3, 1), (3, 1)),left, top, right, bottom)

def Stop(self):
"""method Stop"""
return self._oleobj_.InvokeTypes(113, LCID, 1, (24, 0), (),)

def StopPlay(self):
"""method StopPlay"""
return self._oleobj_.InvokeTypes(126, LCID, 1, (24, 0), (),)

def TCallFrame(self, target=defaultNamedNotOptArg,
FrameNum=defaultNamedNotOptArg):
"""method TCallFrame"""
return self._oleobj_.InvokeTypes(155, LCID, 1, (24, 0), ((8, 1), (3,
1)),target, FrameNum)

def TCallLabel(self, target=defaultNamedNotOptArg,
label=defaultNamedNotOptArg):
"""method TCallLabel"""
return self._oleobj_.InvokeTypes(156, LCID, 1, (24, 0), ((8, 1), (8,
1)),target, label)

def TCurrentFrame(self, target=defaultNamedNotOptArg):
"""method TCurrentFrame"""
return self._oleobj_.InvokeTypes(145, LCID, 1, (3, 0), ((8, 1),),target)

def TCurrentLabel(self, target=defaultNamedNotOptArg):
"""method TCurrentLabel"""
# Result is a Unicode object - return as-is for this version of Python
return self._oleobj_.InvokeTypes(146, LCID, 1, (8, 0), ((8, 1),),target)

def TGetProperty(self, target=defaultNamedNotOptArg,
Property=defaultNamedNotOptArg):
"""method TGetProperty"""
# Result is a Unicode object - return as-is for this version of Python
return self._oleobj_.InvokeTypes(154, LCID, 1, (8, 0), ((8, 1), (3,
1)),target, Property)

def TGetPropertyAsNumber(self, target=defaultNamedNotOptArg,
Property=defaultNamedNotOptArg):
"""method TGetPropertyAsNumber"""
return self._oleobj_.InvokeTypes(172, LCID, 1, (5, 0), ((8, 1), (3,
1)),target, Property)

def TGetPropertyNum(self, target=defaultNamedNotOptArg,
Property=defaultNamedNotOptArg):
"""method TGetPropertyNum"""
return self._oleobj_.InvokeTypes(158, LCID, 1, (5, 0), ((8, 1), (3,
1)),target, Property)

def TGotoFrame(self, target=defaultNamedNotOptArg,
FrameNum=defaultNamedNotOptArg):
"""method TGotoFrame"""
return self._oleobj_.InvokeTypes(143, LCID, 1, (24, 0), ((8, 1), (3,
1)),target, FrameNum)

def TGotoLabel(self, target=defaultNamedNotOptArg,
label=defaultNamedNotOptArg):
"""method TGotoLabel"""
return self._oleobj_.InvokeTypes(144, LCID, 1, (24, 0), ((8, 1), (8,
1)),target, label)

def TPlay(self, target=defaultNamedNotOptArg):
"""method TPlay"""
return self._oleobj_.InvokeTypes(147, LCID, 1, (24, 0), ((8, 1),),target)

def TSetProperty(self, target=defaultNamedNotOptArg,
Property=defaultNamedNotOptArg, value=defaultNamedNotOptArg):
"""method TSetProperty"""
return self._oleobj_.InvokeTypes(153, LCID, 1, (24, 0), ((8, 1), (3, 1),
(8, 1)),target, Property, value)

def TSetPropertyNum(self, target=defaultNamedNotOptArg,
Property=defaultNamedNotOptArg, value=defaultNamedNotOptArg):
"""method TSetPropertyNum"""
return self._oleobj_.InvokeTypes(157, LCID, 1, (24, 0), ((8, 1), (3, 1),
(5, 1)),target, Property, value)

def TStopPlay(self, target=defaultNamedNotOptArg):
"""method TStopPlay"""
return self._oleobj_.InvokeTypes(148, LCID, 1, (24, 0), ((8, 1),),target)

def Zoom(self, factor=defaultNamedNotOptArg):
"""method Zoom"""
return self._oleobj_.InvokeTypes(118, LCID, 1, (24, 0), ((3, 1),),factor)

_prop_map_get_ = {
"AlignMode": (121, 2, (3, 0), (), "AlignMode", None),
"AllowScriptAccess": (171, 2, (8, 0), (), "AllowScriptAccess", None),
"BGColor": (140, 2, (8, 0), (), "BGColor", None),
"BackgroundColor": (123, 2, (3, 0), (), "BackgroundColor", None),
"Base": (136, 2, (8, 0), (), "Base", None),
"DeviceFont": (138, 2, (11, 0), (), "DeviceFont", None),
"EmbedMovie": (139, 2, (11, 0), (), "EmbedMovie", None),
"FlashVars": (170, 2, (8, 0), (), "FlashVars", None),
"FrameNum": (107, 2, (3, 0), (), "FrameNum", None),
"InlineData": (191, 2, (13, 0), (), "InlineData", None),
"Loop": (106, 2, (11, 0), (), "Loop", None),
"Menu": (135, 2, (11, 0), (), "Menu", None),
"Movie": (102, 2, (8, 0), (), "Movie", None),
"MovieData": (190, 2, (8, 0), (), "MovieData", None),
"Playing": (125, 2, (11, 0), (), "Playing", None),
"Quality": (105, 2, (3, 0), (), "Quality", None),
"Quality2": (141, 2, (8, 0), (), "Quality2", None),
"ReadyState": (-525, 2, (3, 0), (), "ReadyState", None),
"SAlign": (134, 2, (8, 0), (), "SAlign", None),
"SWRemote": (159, 2, (8, 0), (), "SWRemote", None),
"Scale": (137, 2, (8, 0), (), "Scale", None),
"ScaleMode": (120, 2, (3, 0), (), "ScaleMode", None),
"SeamlessTabbing": (192, 2, (11, 0), (), "SeamlessTabbing", None),
"TotalFrames": (124, 2, (3, 0), (), "TotalFrames", None),
"WMode": (133, 2, (8, 0), (), "WMode", None),
}
_prop_map_put_ = {
"AlignMode": ((121, LCID, 4, 0),()),
"AllowScriptAccess": ((171, LCID, 4, 0),()),
"BGColor": ((140, LCID, 4, 0),()),
"BackgroundColor": ((123, LCID, 4, 0),()),
"Base": ((136, LCID, 4, 0),()),
"DeviceFont": ((138, LCID, 4, 0),()),
"EmbedMovie": ((139, LCID, 4, 0),()),
"FlashVars": ((170, LCID, 4, 0),()),
"FrameNum": ((107, LCID, 4, 0),()),
"InlineData": ((191, LCID, 4, 0),()),
"Loop": ((106, LCID, 4, 0),()),
"Menu": ((135, LCID, 4, 0),()),
"Movie": ((102, LCID, 4, 0),()),
"MovieData": ((190, LCID, 4, 0),()),
"Playing": ((125, LCID, 4, 0),()),
"Quality": ((105, LCID, 4, 0),()),
"Quality2": ((141, LCID, 4, 0),()),
"SAlign": ((134, LCID, 4, 0),()),
"SWRemote": ((159, LCID, 4, 0),()),
"Scale": ((137, LCID, 4, 0),()),
"ScaleMode": ((120, LCID, 4, 0),()),
"SeamlessTabbing": ((192, LCID, 4, 0),()),
"WMode": ((133, LCID, 4, 0),()),
}

class _IShockwaveFlashEvents:
"""Event interface for Shockwave Flash"""
CLSID = CLSID_Sink = IID('{D27CDB6D-AE6D-11CF-96B8-444553540000}')
coclass_clsid = IID('{D27CDB6E-AE6D-11CF-96B8-444553540000}')
_public_methods_ = [] # For COM Server support
_dispid_to_func_ = {
150 : "OnFSCommand",
1958 : "OnProgress",
-609 : "OnReadyStateChange",
}

def __init__(self, oobj = None):
if oobj is None:
self._olecp = None
else:
import win32com.server.util
from win32com.server.policy import EventHandlerPolicy
cpc=oobj._oleobj_.QueryInterface(pythoncom.IID_IConnectionPointContainer)
cp=cpc.FindConnectionPoint(self.CLSID_Sink)
cookie=cp.Advise(win32com.server.util.wrap(self,
usePolicy=EventHandlerPolicy))
self._olecp,self._olecp_cookie = cp,cookie
def __del__(self):
try:
self.close()
except pythoncom.com_error:
pass
def close(self):
if self._olecp is not None:
cp,cookie,self._olecp,self._olecp_cookie =
self._olecp,self._olecp_cookie,None,None
cp.Unadvise(cookie)
def _query_interface_(self, iid):
import win32com.server.util
if iid==self.CLSID_Sink: return win32com.server.util.wrap(self)

# Event Handlers
# If you create handlers, they should have the following prototypes:
# def OnFSCommand(self, command=defaultNamedNotOptArg,
args=defaultNamedNotOptArg): pass
# def OnProgress(self, percentDone=defaultNamedNotOptArg):
# def OnReadyStateChange(self, newState=defaultNamedNotOptArg):


from win32com.client import CoClassBaseClass
class FlashObjectInterface(CoClassBaseClass): # A CoClass
# IFlashObjectInterface Interface
CLSID = IID('{D27CDB71-AE6D-11CF-96B8-444553540000}')
coclass_sources = [
]
coclass_interfaces = [
]

class FlashProp(CoClassBaseClass): # A CoClass
# Macromedia Flash Player Properties
CLSID = IID('{1171A62F-05D2-11D1-83FC-00A0C9089C5A}')
coclass_sources = [
]
coclass_interfaces = [
]

# This CoClass is known by the name 'ShockwaveFlash.ShockwaveFlash.1'
class ShockwaveFlash(CoClassBaseClass): # A CoClass
# Shockwave Flash
CLSID = IID('{D27CDB6E-AE6D-11CF-96B8-444553540000}')
coclass_sources = [
_IShockwaveFlashEvents,
]
default_source = _IShockwaveFlashEvents
coclass_interfaces = [
IShockwaveFlash,
]
default_interface = IShockwaveFlash

IDispatchEx_vtables_dispatch_ = 1
IDispatchEx_vtables_ = [
(('GetDispID', 'bstrName', 'grfdex', 'pid'), 1610743808, (1610743808, (),
[(8, 1, None, None), (19, 1, None, None), (16387, 2, None, None)], 1, 1, 4,
0, 28, (3, 0, None, None), 0)),
(('RemoteInvokeEx', 'id', 'lcid', 'dwFlags', 'pdp', 'pvarRes', 'pei',
'pspCaller', 'cvarRefArg', 'rgiRefArg', 'rgvarRefArg'), 1610743809,
(1610743809, (), [(3, 1, None, None), (19, 1, None, None), (19, 1, None,
None), (36, 1, None, None), (16396, 2, None, None), (36, 2, None, None),
(13, 1, None, "IID('{6D5140C1-7436-11CE-8034-00AA006009FA}')"), (3, 1, None,
None), (16387, 1, None, None), (16396, 3, None, None)], 1, 1, 4, 0, 32, (3,
0, None, None), 0)),
(('DeleteMemberByName', 'bstrName', 'grfdex'), 1610743810, (1610743810, (),
[(8, 1, None, None), (19, 1, None, None)], 1, 1, 4, 0, 36, (3, 0, None,
None), 0)),
(('DeleteMemberByDispID', 'id'), 1610743811, (1610743811, (), [(3, 1, None,
None)], 1, 1, 4, 0, 40, (3, 0, None, None), 0)),
(('GetMemberProperties', 'id', 'grfdexFetch', 'pgrfdex'), 1610743812,
(1610743812, (), [(3, 1, None, None), (19, 1, None, None), (16403, 2, None,
None)], 1, 1, 4, 0, 44, (3, 0, None, None), 0)),
(('GetMemberName', 'id', 'pbstrName'), 1610743813, (1610743813, (), [(3, 1,
None, None), (16392, 2, None, None)], 1, 1, 4, 0, 48, (3, 0, None, None),
0)),
(('GetNextDispID', 'grfdex', 'id', 'pid'), 1610743814, (1610743814, (),
[(19, 1, None, None), (3, 1, None, None), (16387, 2, None, None)], 1, 1, 4,
0, 52, (3, 0, None, None), 0)),
(('GetNameSpaceParent', 'ppunk'), 1610743815, (1610743815, (), [(16397, 2,
None, None)], 1, 1, 4, 0, 56, (3, 0, None, None), 0)),
]

IFlashFactory_vtables_dispatch_ = 0
IFlashFactory_vtables_ = [
]

IFlashObjectInterface_vtables_dispatch_ = 1
IFlashObjectInterface_vtables_ = [
]

IServiceProvider_vtables_dispatch_ = 0
IServiceProvider_vtables_ = [
(('RemoteQueryService', 'guidService', 'riid', 'ppvObject'), 1610678272,
(1610678272, (), [(36, 1, None, None), (36, 1, None, None), (16397, 2, None,
None)], 1, 1, 4, 0, 12, (3, 0, None, None), 0)),
]

IShockwaveFlash_vtables_dispatch_ = 1
IShockwaveFlash_vtables_ = [
(('ReadyState', 'pVal'), -525, (-525, (), [(16387, 10, None, None)], 1, 2,
4, 0, 28, (3, 0, None, None), 0)),
(('TotalFrames', 'pVal'), 124, (124, (), [(16387, 10, None, None)], 1, 2,
4, 0, 32, (3, 0, None, None), 0)),
(('Playing', 'pVal'), 125, (125, (), [(16395, 10, None, None)], 1, 2, 4, 0,
36, (3, 0, None, None), 0)),
(('Playing', 'pVal'), 125, (125, (), [(11, 1, None, None)], 1, 4, 4, 0, 40,
(3, 0, None, None), 0)),
(('Quality', 'pVal'), 105, (105, (), [(16387, 10, None, None)], 1, 2, 4, 0,
44, (3, 0, None, None), 0)),
(('Quality', 'pVal'), 105, (105, (), [(3, 1, None, None)], 1, 4, 4, 0, 48,
(3, 0, None, None), 0)),
(('ScaleMode', 'pVal'), 120, (120, (), [(16387, 10, None, None)], 1, 2, 4,
0, 52, (3, 0, None, None), 0)),
(('ScaleMode', 'pVal'), 120, (120, (), [(3, 1, None, None)], 1, 4, 4, 0,
56, (3, 0, None, None), 0)),
(('AlignMode', 'pVal'), 121, (121, (), [(16387, 10, None, None)], 1, 2, 4,
0, 60, (3, 0, None, None), 0)),
(('AlignMode', 'pVal'), 121, (121, (), [(3, 1, None, None)], 1, 4, 4, 0,
64, (3, 0, None, None), 0)),
(('BackgroundColor', 'pVal'), 123, (123, (), [(16387, 10, None, None)], 1,
2, 4, 0, 68, (3, 0, None, None), 0)),
(('BackgroundColor', 'pVal'), 123, (123, (), [(3, 1, None, None)], 1, 4, 4,
0, 72, (3, 0, None, None), 0)),
(('Loop', 'pVal'), 106, (106, (), [(16395, 10, None, None)], 1, 2, 4, 0,
76, (3, 0, None, None), 0)),
(('Loop', 'pVal'), 106, (106, (), [(11, 1, None, None)], 1, 4, 4, 0, 80,
(3, 0, None, None), 0)),
(('Movie', 'pVal'), 102, (102, (), [(16392, 10, None, None)], 1, 2, 4, 0,
84, (3, 0, None, None), 0)),
(('Movie', 'pVal'), 102, (102, (), [(8, 1, None, None)], 1, 4, 4, 0, 88,
(3, 0, None, None), 0)),
(('FrameNum', 'pVal'), 107, (107, (), [(16387, 10, None, None)], 1, 2, 4,
0, 92, (3, 0, None, None), 0)),
(('FrameNum', 'pVal'), 107, (107, (), [(3, 1, None, None)], 1, 4, 4, 0, 96,
(3, 0, None, None), 0)),
(('SetZoomRect', 'left', 'top', 'right', 'bottom'), 109, (109, (), [(3, 1,
None, None), (3, 1, None, None), (3, 1, None, None), (3, 1, None, None)], 1,
1, 4, 0, 100, (3, 0, None, None), 0)),
(('Zoom', 'factor'), 118, (118, (), [(3, 1, None, None)], 1, 1, 4, 0, 104,
(3, 0, None, None), 0)),
(('Pan', 'x', 'y', 'mode'), 119, (119, (), [(3, 1, None, None), (3, 1,
None, None), (3, 1, None, None)], 1, 1, 4, 0, 108, (3, 0, None, None), 0)),
(('Play',), 112, (112, (), [], 1, 1, 4, 0, 112, (3, 0, None, None), 0)),
(('Stop',), 113, (113, (), [], 1, 1, 4, 0, 116, (3, 0, None, None), 0)),
(('Back',), 114, (114, (), [], 1, 1, 4, 0, 120, (3, 0, None, None), 0)),
(('Forward',), 115, (115, (), [], 1, 1, 4, 0, 124, (3, 0, None, None), 0)),
(('Rewind',), 116, (116, (), [], 1, 1, 4, 0, 128, (3, 0, None, None), 0)),
(('StopPlay',), 126, (126, (), [], 1, 1, 4, 0, 132, (3, 0, None, None),
0)),
(('GotoFrame', 'FrameNum'), 127, (127, (), [(3, 1, None, None)], 1, 1, 4,
0, 136, (3, 0, None, None), 0)),
(('CurrentFrame', 'FrameNum'), 128, (128, (), [(16387, 10, None, None)], 1,
1, 4, 0, 140, (3, 0, None, None), 0)),
(('IsPlaying', 'Playing'), 129, (129, (), [(16395, 10, None, None)], 1, 1,
4, 0, 144, (3, 0, None, None), 0)),
(('PercentLoaded', 'percent'), 130, (130, (), [(16387, 10, None, None)], 1,
1, 4, 0, 148, (3, 0, None, None), 0)),
(('FrameLoaded', 'FrameNum', 'loaded'), 131, (131, (), [(3, 1, None, None),
(16395, 10, None, None)], 1, 1, 4, 0, 152, (3, 0, None, None), 0)),
(('FlashVersion', 'version'), 132, (132, (), [(16387, 10, None, None)], 1,
1, 4, 0, 156, (3, 0, None, None), 0)),
(('WMode', 'pVal'), 133, (133, (), [(16392, 10, None, None)], 1, 2, 4, 0,
160, (3, 0, None, None), 0)),
(('WMode', 'pVal'), 133, (133, (), [(8, 1, None, None)], 1, 4, 4, 0, 164,
(3, 0, None, None), 0)),
(('SAlign', 'pVal'), 134, (134, (), [(16392, 10, None, None)], 1, 2, 4, 0,
168, (3, 0, None, None), 0)),
(('SAlign', 'pVal'), 134, (134, (), [(8, 1, None, None)], 1, 4, 4, 0, 172,
(3, 0, None, None), 0)),
(('Menu', 'pVal'), 135, (135, (), [(16395, 10, None, None)], 1, 2, 4, 0,
176, (3, 0, None, None), 0)),
(('Menu', 'pVal'), 135, (135, (), [(11, 1, None, None)], 1, 4, 4, 0, 180,
(3, 0, None, None), 0)),
(('Base', 'pVal'), 136, (136, (), [(16392, 10, None, None)], 1, 2, 4, 0,
184, (3, 0, None, None), 0)),
(('Base', 'pVal'), 136, (136, (), [(8, 1, None, None)], 1, 4, 4, 0, 188,
(3, 0, None, None), 0)),
(('Scale', 'pVal'), 137, (137, (), [(16392, 10, None, None)], 1, 2, 4, 0,
192, (3, 0, None, None), 0)),
(('Scale', 'pVal'), 137, (137, (), [(8, 1, None, None)], 1, 4, 4, 0, 196,
(3, 0, None, None), 0)),
(('DeviceFont', 'pVal'), 138, (138, (), [(16395, 10, None, None)], 1, 2, 4,
0, 200, (3, 0, None, None), 0)),
(('DeviceFont', 'pVal'), 138, (138, (), [(11, 1, None, None)], 1, 4, 4, 0,
204, (3, 0, None, None), 0)),
(('EmbedMovie', 'pVal'), 139, (139, (), [(16395, 10, None, None)], 1, 2, 4,
0, 208, (3, 0, None, None), 0)),
(('EmbedMovie', 'pVal'), 139, (139, (), [(11, 1, None, None)], 1, 4, 4, 0,
212, (3, 0, None, None), 0)),
(('BGColor', 'pVal'), 140, (140, (), [(16392, 10, None, None)], 1, 2, 4, 0,
216, (3, 0, None, None), 0)),
(('BGColor', 'pVal'), 140, (140, (), [(8, 1, None, None)], 1, 4, 4, 0, 220,
(3, 0, None, None), 0)),
(('Quality2', 'pVal'), 141, (141, (), [(16392, 10, None, None)], 1, 2, 4,
0, 224, (3, 0, None, None), 0)),
(('Quality2', 'pVal'), 141, (141, (), [(8, 1, None, None)], 1, 4, 4, 0,
228, (3, 0, None, None), 0)),
(('LoadMovie', 'layer', 'url'), 142, (142, (), [(3, 1, None, None), (8, 1,
None, None)], 1, 1, 4, 0, 232, (3, 0, None, None), 0)),
(('TGotoFrame', 'target', 'FrameNum'), 143, (143, (), [(8, 1, None, None),
(3, 1, None, None)], 1, 1, 4, 0, 236, (3, 0, None, None), 0)),
(('TGotoLabel', 'target', 'label'), 144, (144, (), [(8, 1, None, None), (8,
1, None, None)], 1, 1, 4, 0, 240, (3, 0, None, None), 0)),
(('TCurrentFrame', 'target', 'FrameNum'), 145, (145, (), [(8, 1, None,
None), (16387, 10, None, None)], 1, 1, 4, 0, 244, (3, 0, None, None), 0)),
(('TCurrentLabel', 'target', 'pVal'), 146, (146, (), [(8, 1, None, None),
(16392, 10, None, None)], 1, 1, 4, 0, 248, (3, 0, None, None), 0)),
(('TPlay', 'target'), 147, (147, (), [(8, 1, None, None)], 1, 1, 4, 0, 252,
(3, 0, None, None), 0)),
(('TStopPlay', 'target'), 148, (148, (), [(8, 1, None, None)], 1, 1, 4, 0,
256, (3, 0, None, None), 0)),
(('SetVariable', 'name', 'value'), 151, (151, (), [(8, 1, None, None), (8,
1, None, None)], 1, 1, 4, 0, 260, (3, 0, None, None), 0)),
(('GetVariable', 'name', 'pVal'), 152, (152, (), [(8, 1, None, None),
(16392, 10, None, None)], 1, 1, 4, 0, 264, (3, 0, None, None), 0)),
(('TSetProperty', 'target', 'property', 'value'), 153, (153, (), [(8, 1,
None, None), (3, 1, None, None), (8, 1, None, None)], 1, 1, 4, 0, 268, (3,
0, None, None), 0)),
(('TGetProperty', 'target', 'property', 'pVal'), 154, (154, (), [(8, 1,
None, None), (3, 1, None, None), (16392, 10, None, None)], 1, 1, 4, 0, 272,
(3, 0, None, None), 0)),
(('TCallFrame', 'target', 'FrameNum'), 155, (155, (), [(8, 1, None, None),
(3, 1, None, None)], 1, 1, 4, 0, 276, (3, 0, None, None), 0)),
(('TCallLabel', 'target', 'label'), 156, (156, (), [(8, 1, None, None), (8,
1, None, None)], 1, 1, 4, 0, 280, (3, 0, None, None), 0)),
(('TSetPropertyNum', 'target', 'property', 'value'), 157, (157, (), [(8, 1,
None, None), (3, 1, None, None), (5, 1, None, None)], 1, 1, 4, 0, 284, (3,
0, None, None), 0)),
(('TGetPropertyNum', 'target', 'property', 'pVal'), 158, (158, (), [(8, 1,
None, None), (3, 1, None, None), (16389, 10, None, None)], 1, 1, 4, 0, 288,
(3, 0, None, None), 0)),
(('TGetPropertyAsNumber', 'target', 'property', 'pVal'), 172, (172, (),
[(8, 1, None, None), (3, 1, None, None), (16389, 10, None, None)], 1, 1, 4,
0, 292, (3, 0, None, None), 0)),
(('SWRemote', 'pVal'), 159, (159, (), [(16392, 10, None, None)], 1, 2, 4,
0, 296, (3, 0, None, None), 0)),
(('SWRemote', 'pVal'), 159, (159, (), [(8, 1, None, None)], 1, 4, 4, 0,
300, (3, 0, None, None), 0)),
(('FlashVars', 'pVal'), 170, (170, (), [(16392, 10, None, None)], 1, 2, 4,
0, 304, (3, 0, None, None), 0)),
(('FlashVars', 'pVal'), 170, (170, (), [(8, 1, None, None)], 1, 4, 4, 0,
308, (3, 0, None, None), 0)),
(('AllowScriptAccess', 'pVal'), 171, (171, (), [(16392, 10, None, None)],
1, 2, 4, 0, 312, (3, 0, None, None), 0)),
(('AllowScriptAccess', 'pVal'), 171, (171, (), [(8, 1, None, None)], 1, 4,
4, 0, 316, (3, 0, None, None), 0)),
(('MovieData', 'pVal'), 190, (190, (), [(16392, 10, None, None)], 1, 2, 4,
0, 320, (3, 0, None, None), 0)),
(('MovieData', 'pVal'), 190, (190, (), [(8, 1, None, None)], 1, 4, 4, 0,
324, (3, 0, None, None), 0)),
(('InlineData', 'ppIUnknown'), 191, (191, (), [(16397, 10, None, None)], 1,
2, 4, 0, 328, (3, 0, None, None), 0)),
(('InlineData', 'ppIUnknown'), 191, (191, (), [(13, 1, None, None)], 1, 4,
4, 0, 332, (3, 0, None, None), 0)),
(('SeamlessTabbing', 'pVal'), 192, (192, (), [(16395, 10, None, None)], 1,
2, 4, 0, 336, (3, 0, None, None), 0)),
(('SeamlessTabbing', 'pVal'), 192, (192, (), [(11, 1, None, None)], 1, 4,
4, 0, 340, (3, 0, None, None), 0)),
]

RecordMap = {
}

CLSIDToClassMap = {
'{D27CDB6C-AE6D-11CF-96B8-444553540000}' : IShockwaveFlash,
'{D27CDB6D-AE6D-11CF-96B8-444553540000}' : _IShockwaveFlashEvents,
'{D27CDB6E-AE6D-11CF-96B8-444553540000}' : ShockwaveFlash,
'{D27CDB71-AE6D-11CF-96B8-444553540000}' : FlashObjectInterface,
'{1171A62F-05D2-11D1-83FC-00A0C9089C5A}' : FlashProp,
}
CLSIDToPackageMap = {}
win32com.client.CLSIDToClass.RegisterCLSIDsFromDict( CLSIDToClassMap )
VTablesToPackageMap = {}
VTablesToClassMap = {
'{D27CDB72-AE6D-11CF-96B8-444553540000}' : 'IFlashObjectInterface',
'{D27CDB6C-AE6D-11CF-96B8-444553540000}' : 'IShockwaveFlash',
'{A6EF9860-C720-11D0-9337-00A0C90DCAA9}' : 'IDispatchEx',
'{D27CDB70-AE6D-11CF-96B8-444553540000}' : 'IFlashFactory',
'{6D5140C1-7436-11CE-8034-00AA006009FA}' : 'IServiceProvider',
}


NamesToIIDMap = {
'_IShockwaveFlashEvents' : '{D27CDB6D-AE6D-11CF-96B8-444553540000}',
'IFlashObjectInterface' : '{D27CDB72-AE6D-11CF-96B8-444553540000}',
'IFlashFactory' : '{D27CDB70-AE6D-11CF-96B8-444553540000}',
'IShockwaveFlash' : '{D27CDB6C-AE6D-11CF-96B8-444553540000}',
'IServiceProvider' : '{6D5140C1-7436-11CE-8034-00AA006009FA}',
'IDispatchEx' : '{A6EF9860-C720-11D0-9337-00A0C90DCAA9}',
}
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads


Members online

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,013
Latest member
KatriceSwa

Latest Threads

Top