External movie doesn't play second time after refreshing

I used a preloader to play an external movie that loops. Both files are uploaded to a site. When I open the preloader in my browser the first time, everything works fine. The preloader loads correctly and plays the external movie automatically, which continues to loop correctly. So no problems so far.

Now, here’s where problems begins:

If I refresh the browser or close it, and try to view the preloader/external movie again, nothing gets shown. I can manually play the external movie by right-clicking and selecting Play from the menu.

The only other way I can view the preloader/external movie again is if I delete the preloader from the cache and refresh/restart the browser.

My external movie does not have a stop in the first frame and it is uneditable so I can’t add that in. However, the preloader should start playing the external movie when it is in the cache.

Can someone please tell me what is going on???

Thanks.

Here is the script in the preloader:

Frame 1:


[SIZE=1]mcLoader = [/SIZE][SIZE=1][COLOR=#000084]new [/COLOR][/SIZE][SIZE=1]MovieClipLoader ();[/SIZE]
[SIZE=1]loadListener = [/SIZE][SIZE=1][COLOR=#000084]new Object[/COLOR][/SIZE][SIZE=1] ();[/SIZE]
[SIZE=1]mcLoader.[/SIZE][SIZE=1][COLOR=#000084]addListener[/COLOR][/SIZE][SIZE=1](loadListener);[/SIZE]
[SIZE=1]mcLoader.loadClip([/SIZE][SIZE=1][COLOR=#0000ff]"slideshow.swf"[/COLOR][/SIZE][SIZE=1], ptgt);[/SIZE]
[SIZE=1]loadListener.onLoadStart = [/SIZE][SIZE=1][COLOR=#000084]function [/COLOR][/SIZE][SIZE=1]() {[/SIZE]
[SIZE=1]ptgt.[/SIZE][SIZE=1][COLOR=#000084]stop[/COLOR][/SIZE][SIZE=1]();[/SIZE]
[SIZE=1]};[/SIZE]
[SIZE=1]ptgt._lockroot = [/SIZE][SIZE=1][COLOR=#000084]true[/COLOR][/SIZE][SIZE=1];[/SIZE]

[SIZE=1]//[ Frame 1 ][/SIZE]
[SIZE=1][COLOR=#000084]tellTarget ([/COLOR][/SIZE][SIZE=1][COLOR=#0000ff]"_parent"[/COLOR][/SIZE][SIZE=1]) {[/SIZE]
[SIZE=1][COLOR=#000084]stop[/COLOR][/SIZE][SIZE=1]();[/SIZE]
[SIZE=1]};[/SIZE]
[SIZE=1]stm = [/SIZE][SIZE=1][COLOR=#000084]getTimer[/COLOR][/SIZE][SIZE=1]();[/SIZE]
[SIZE=1]prcnt = 0;[/SIZE]
[SIZE=1]bmsg0 = 0;[/SIZE]
[SIZE=1]bmsg1 = 0;[/SIZE]
[SIZE=1]//[ Frame 2 ][/SIZE]
[SIZE=1]btl = [/SIZE][SIZE=1][COLOR=#000084]_parent[/COLOR][/SIZE][SIZE=1].ptgt.[/SIZE][SIZE=1][COLOR=#000084]getBytesLoaded[/COLOR][/SIZE][SIZE=1]();[/SIZE]
[SIZE=1]btt = [/SIZE][SIZE=1][COLOR=#000084]_parent[/COLOR][/SIZE][SIZE=1].ptgt.[/SIZE][SIZE=1][COLOR=#000084]getBytesTotal[/COLOR][/SIZE][SIZE=1]();[/SIZE]
[SIZE=1]frl = [/SIZE][SIZE=1][COLOR=#000084]_parent[/COLOR][/SIZE][SIZE=1].ptgt.[/SIZE][SIZE=1][COLOR=#000084]_framesloaded[/COLOR][/SIZE][SIZE=1];[/SIZE]
[SIZE=1]frt = [/SIZE][SIZE=1][COLOR=#000084]_parent[/COLOR][/SIZE][SIZE=1].ptgt.[/SIZE][SIZE=1][COLOR=#000084]_totalframes[/COLOR][/SIZE][SIZE=1];[/SIZE]
[SIZE=1][COLOR=#000084]if[/COLOR][/SIZE][SIZE=1] (btt > 1024) {[/SIZE]
[SIZE=1]prcnt = btl / btt;[/SIZE]
[SIZE=1][COLOR=#000084]if[/COLOR][/SIZE][SIZE=1] (prcnt >= 1) {[/SIZE]
[SIZE=1][COLOR=#000084]stop[/COLOR][/SIZE][SIZE=1]();[/SIZE]
[SIZE=1][COLOR=#000084]tellTarget ([/COLOR][/SIZE][SIZE=1][COLOR=#0000ff]"_parent"[/COLOR][/SIZE][SIZE=1]) {[/SIZE]
[SIZE=1][COLOR=#000084]gotoAndPlay [/COLOR][/SIZE][SIZE=1]([/SIZE][SIZE=1][COLOR=#0000ff]"loaderdone"[/COLOR][/SIZE][SIZE=1]);[/SIZE]
[SIZE=1]};[/SIZE]
[SIZE=1]}[/SIZE]
[SIZE=1]}[/SIZE][SIZE=1][COLOR=#000084] else[/COLOR][/SIZE][SIZE=1] {[/SIZE]
[SIZE=1][COLOR=#000084]prevFrame[/COLOR][/SIZE][SIZE=1]();[/SIZE]
[SIZE=1][COLOR=#000084]play[/COLOR][/SIZE][SIZE=1]();[/SIZE]
[SIZE=1]}[/SIZE]
[SIZE=1]//[ Frame 3 ][/SIZE]
[SIZE=1]btl = [/SIZE][SIZE=1][COLOR=#000084]_parent[/COLOR][/SIZE][SIZE=1].ptgt.[/SIZE][SIZE=1][COLOR=#000084]getBytesLoaded[/COLOR][/SIZE][SIZE=1]();[/SIZE]
[SIZE=1]btt = [/SIZE][SIZE=1][COLOR=#000084]_parent[/COLOR][/SIZE][SIZE=1].ptgt.[/SIZE][SIZE=1][COLOR=#000084]getBytesTotal[/COLOR][/SIZE][SIZE=1]();[/SIZE]
[SIZE=1]frl = [/SIZE][SIZE=1][COLOR=#000084]_parent[/COLOR][/SIZE][SIZE=1].ptgt.[/SIZE][SIZE=1][COLOR=#000084]_framesloaded[/COLOR][/SIZE][SIZE=1];[/SIZE]
[SIZE=1]frt = [/SIZE][SIZE=1][COLOR=#000084]_parent[/COLOR][/SIZE][SIZE=1].ptgt.[/SIZE][SIZE=1][COLOR=#000084]_totalframes[/COLOR][/SIZE][SIZE=1];[/SIZE]
[SIZE=1]prcnt = btl / btt;[/SIZE]
[SIZE=1][COLOR=#000084]if[/COLOR][/SIZE][SIZE=1] (prcnt >= 1) {[/SIZE]
[SIZE=1]prcnt = 1;[/SIZE]
[SIZE=1]}[/SIZE][SIZE=1][COLOR=#000084] else[/COLOR][/SIZE][SIZE=1][COLOR=#000084]if[/COLOR][/SIZE][SIZE=1] (prcnt < 0) {[/SIZE]
[SIZE=1]prcnt = 0;[/SIZE]
[SIZE=1]}[/SIZE]
[SIZE=1]pl0.[/SIZE][SIZE=1][COLOR=#000084]text[/COLOR][/SIZE][SIZE=1] = [/SIZE][SIZE=1][COLOR=#000084]int[/COLOR][/SIZE][SIZE=1] (prcnt * 100) + [/SIZE][SIZE=1][COLOR=#0000ff]"%"[/COLOR][/SIZE][SIZE=1];[/SIZE]
[SIZE=1][COLOR=#000084]if[/COLOR][/SIZE][SIZE=1] (prcnt >= 1) {[/SIZE]
[SIZE=1][COLOR=#000084]gotoAndPlay [/COLOR][/SIZE][SIZE=1](5);[/SIZE]
[SIZE=1]}[/SIZE]
[SIZE=1][COLOR=#000084]if[/COLOR][/SIZE][SIZE=1] (bmsg0 == 0) {[/SIZE]
[SIZE=1]bmsg0 = 1;[/SIZE]
[SIZE=1]}[/SIZE]
[SIZE=1][COLOR=#000084]if[/COLOR][/SIZE][SIZE=1] (bmsg1 == 0) {[/SIZE]
[SIZE=1]bmsg1 = 1;[/SIZE]
[SIZE=1]}[/SIZE]
[SIZE=1]//[ Frame 4 ][/SIZE]
[SIZE=1][COLOR=#000084]prevFrame[/COLOR][/SIZE][SIZE=1]();[/SIZE]
[SIZE=1][COLOR=#000084]play[/COLOR][/SIZE][SIZE=1]();[/SIZE]
[SIZE=1]//[ Frame 5 ][/SIZE]
[SIZE=1][COLOR=#000084]stop[/COLOR][/SIZE][SIZE=1]();[/SIZE]
[SIZE=1][COLOR=#000084]tellTarget ([/COLOR][/SIZE][SIZE=1][COLOR=#0000ff]"_parent"[/COLOR][/SIZE][SIZE=1]) {[/SIZE]
[SIZE=1][COLOR=#000084]play[/COLOR][/SIZE][SIZE=1]();[/SIZE]
[SIZE=1]};[/SIZE]

Frame 2:


[SIZE=1][COLOR=#000084]tellTarget ([/COLOR][/SIZE][SIZE=1][COLOR=#0000ff]"ptgt"[/COLOR][/SIZE][SIZE=1]) {[/SIZE]
[SIZE=1][COLOR=#000084]play[/COLOR][/SIZE][SIZE=1]();[/SIZE]
[SIZE=1]};[/SIZE]

Frame 3:


[SIZE=1][COLOR=#000084]stop[/COLOR][/SIZE][SIZE=1]();[/SIZE]