Preloading external swf

Hi there, Im trying to preload an external swf. I am using the following code:

Frame 1 of preloader mc:

frloaded = _root.getBytesLoaded() + _level4.getBytesLoaded();
frtotal = _root.getBytesTotal() + _level4.getBytesTotal();
if (frloaded < frtotal) {
	tellTarget ("_root") {
		stop();
	}
}

Frame 2 of preloader mc:

frloaded = _root.getBytesLoaded() + _level4.getBytesLoaded();
frtotal = _root.getBytesTotal() + _level4.getBytesTotal();
if (frloaded < frtotal) {
	tellTarget ("_root") {
		stop();
	}
}

Frame 3 of preloader mc:

gotoAndPlay(2);

So yeah, basically I want the initial preloader to display loading progress for not only the root, but also the loaded mc on _level4.

However, sometimes there is some problems. If I have my preloader mc on the next frame after using loadMovieNum(“home.swf”,4); then it doesnt load home.swf but if I put the preloader mc some 20 frames later, it works fine. However, if home.swf is already loaded (for example if after loading everything I just refresh the page) then it doesnt load. It’s like it needs some time to understand that there is an swf being loaded or something… How can I work around this?

Thanks!