title: Comparing two images from the clipboard class
body: <p>In a C# winform app. I'm writing a Clipboard log manager that logs text to a log file, (everytime a Ctrl+c/x is pressed the copied/cut text gets appended to the file)
  I also did the same for images, that is, if you press "prtScreen", the screen shot you took will also go to a folder.</p>
  
  <p>I do that by using a timer, inside I have something which 'looks' like this:</p>
  
  <pre><code>if (Clipboard.ContainsImage())
  {
    if (IsClipboardUpdated())
    {
      LogData();
      UpdateLastClipboardData();
    }
  }
  </code></pre>
  
  <p>This is how the rest of the methods look like:</p>
  
  <pre><code>public void UpdateLastClipboardData()
  {
    // ... other updates
    LastClipboardImage = Clipboard.GetImage();
  }
  // This is how I determine if there's a new image in the clipboard...
  public bool IsClipboardUpdated()
  {
    return (LastClipboardImage != Clipboard.GetImage());
  }
  public void LogData()
  {
    Clipboard.GetImage().Save(ImagesLogFolder + "\\Image" + now_hours + "_" + now_mins + "_" + now_secs + ".jpg");  
  }
  </code></pre>
  
  <p>The problem is: inside the update method, "LastClipboardImage != Clipboard.GetImage()" is always returning true!</p>
  
  <p>I even did the following inside the update method:</p>
  
  <pre><code>Image img1 = Clipboard.GetImage();
  Image img2 = Clipboard.GetImage();
  Image img3 = img2;
  bool b1 = img1 == img2; // this returned false. WHY??
  bool b2 = img3 == img2; // this returned true. Makes sense.
  </code></pre>
  
  <p>Please help, the comparison isn't working... why? </p>