Introduction<o:p>
This article demonstrates how to play an swf file (flash) in
asp.net. <o:p>
There is some additional requirement that browser must have plug-in
installed in order make this work.
In this project you need to upload a swf
file and then click on the uplaod file to run the uploaded file.<o:p>
Using the code<o:p>
It is very simple to create and to paly swf file.<o:p>
Following are the steps to create and play swf file. <o:p>
- Step
1. Open Microsoft Visual Studio. Create a web site and named it
PlaySwfFile.<o:p>
- Step
2. Create an .aspx file and named it PlaySwfFile.aspx. <o:p>
- Step
3. Design the form that looks like this. <o:p>
-
- Step
4. Or copy and paste the code in PlaySwfFile.aspx
file inside the <body> tag <o:p>
<form id="form1" runat="server">
<table width="410px">
<tr>
<td align="center" valign="top">
<table border="0" cellpadding="2" cellspacing="3" style="width: 400px;">
<tr>
<td valign="top" style="width: 150px">
</td>
<td align="left" valign="top" style="width: 200px">
<asp:Label ID="lblMsg" CssClass="tdMessage" Text ="" runat="server"></asp:Label></td>
</tr>
<tr>
<td valign="top" class="tdText" align="left">
<nobr> Select a file</nobr> </td>
<td valign="top" style="text-align: left">
<asp:FileUpload ID="fUpload" runat="server" Width="300px" /></td>
</tr>
<tr>
<td align="left" valign="top">
<asp:Button ID="btnUpload" runat="server" Text="Upload" OnClick="btnUpload_Click" /></td>
<td align="left" valign="top">
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0"
width="200" height="100">
<param name="movie" value="<% =swfFileName%>" />
<param name="quality" value="high" />
<embed src="<% =swfFileName%>" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer"
type="application/x-shockwave-flash" width="200" height="100"></embed>
</object>
</td>
</tr>
</table>
</td>
</tr>
</table>
</form>
// Now Add a namespace System.IO; to the PlaySwfFile.aspx.cs file
// Declare a variable above page_load() method
public string swfFileName = "";
protected void btnUpload_Click(object sender, EventArgs e)
{
if (fUpload.FileContent.Length >0 && IsVaildFile())
{
string Path = GetUplaodImagePhysicalPath();
DirectoryInfo dirUploadImage = new DirectoryInfo(Path);
if (dirUploadImage.Exists == false)
{
dirUploadImage.Create();
}
string fileUrl = Path + fUpload.PostedFile.FileName;
fUpload.PostedFile.SaveAs(fileUrl);
swfFileName = "image/" + fUpload.PostedFile.FileName;
}
}
private bool IsVaildFile()
{
string swfExt = System.IO.Path.GetExtension(fUpload.PostedFile.FileName);
switch (swfExt)
{
case ".swf":
return true;
default:
{
lblMsg.Text = "Please select only swf file.";
return false;
}
}
}
string GetUplaodImagePhysicalPath()
{
return System.Web.HttpContext.Current.Request.PhysicalApplicationPath + "image\\";
}
}
<o:p>
Now run the project and upoad a swf file and click on upload
button. you will get the result.<o:p>
Points to Remember <o:p>
In the .cs page you will get a public variable named swfFileName.
This is the variable which is used in the aspx page to assign as the source of
<object>. <o:p>
Here <object> serves as swf player.<o:p>
In aspx file the public variable swfFileName is accessed as <%
=swfFileName%> <o:p>
<o:p>