incompatibility with high-res-screenshot code

see the pic to show the screenshots another guy and myself are getting from the high res screenshot code recently. the grey color is the same as the hierarchy background.

it seems the script works on some installs of Unity3d and not on other, maybe 3.55?3519-screen_2550x3300_2012-09-12_12-29-13.jpg

using UnityEngine;
using System.Collections;

public class HiResScreenShots : MonoBehaviour {
    public int resWidth = 2550; 
    public int resHeight = 3300;

    private bool takeHiResShot = false;

    public static string ScreenShotName(int width, int height) {
        return string.Format("{0}/screenshots/screen_{1}x{2}_{3}.png", 
                             Application.dataPath, 
                             width, height, 
                             System.DateTime.Now.ToString("yyyy-MM-dd_HH-mm-ss"));
    }

    public void TakeHiResShot() {
        takeHiResShot = true;
    }

    void LateUpdate() {
        takeHiResShot |= Input.GetKeyDown("k");
        if (takeHiResShot) {
            RenderTexture rt = new RenderTexture(resWidth, resHeight, 24);
            camera.targetTexture = rt;
            Texture2D screenShot = new Texture2D(resWidth, resHeight, TextureFormat.RGB24, false);
            camera.Render();
            RenderTexture.active = rt;
            screenShot.ReadPixels(new Rect(0, 0, resWidth, resHeight), 0, 0);
            camera.targetTexture = null;
            RenderTexture.active = null; // JC: added to avoid errors
            Destroy(rt);
            byte[] bytes = screenShot.EncodeToPNG();
            string filename = ScreenShotName(resWidth, resHeight);
            System.IO.File.WriteAllBytes(filename, bytes);
            Debug.Log(string.Format("Took screenshot to: {0}", filename));
            takeHiResShot = false;
        }
    }
}

this is not entirely the solution although it may be, I don’t know why it doesn’t say there is a bug when you actually run it, only when you try and build it

Assets/Scripts/HiResScreenShots.cs(35,28): error CS0117: `System.IO.File' does not contain a definition for `WriteAllBytes'

I had the same problem with the free version of Unity running on my Laptop. Once back at my main workstation where I run Unity Pro 4.5.2 everything worked perfectly. So it might be the script makes use of a pro feature?