If you used lately the MediaCoder software to transcode your family videos, you could not help but notice that your transcoding is interrupted by a nag window, asking for a $25 donation. You can get rid of this window by either entering a registration code you receive after donating, or by doing "a simple math". And while that screen is on, the transcoding stops, which means that you need to check every now and then if the window popped up or not.
 



Now, MediaCoder is based on Mozilla Public License (MPL), which is compatible with GNU General Public License (GPL). This software is only a GUI for codecs, which are actually based on the GPL license. That means that this software should be free, without any nag windows or any other "features" asking for money.

Do not get me wrong, I am not against paid software, and as an author of some of them, e.g YouPlayer, I know it is very rewarding to see that your work is appreciated by users, e.g. in a form of donation. But a nag screen that is blocking the main use of software is not the way to go.

Let me say this, MediaCoder is a good software. But because it is based on MPL and using GNU GPL components, it should be free, without putting any nag screens in front of a user, and versions of licences range from $25 up to $439!

Fortunately, there is a way to walk around this nag screen, and for this we will use AutoIt. The following code will check every second if the nag window has popped up, and if so, it will do the math for you and will press Continue.

; Script removing the nag screen in MediaCoder.
; The script tries to find the nag window every 5 seconds. If it finds it,
; it reads all the window contents, then calculates the math, enters it,
; and presses Continue.
; Source from http://wojwa.com

#include <StringConstants.au3>

$num_solved = 0
OnAutoItExitRegister("onExitSummary")

Func onExitSummary()
  $msg = ""
  If @exitCode == 1 Then
    $msg = "No instance of MediaCoder found. "
  EndIf

  $msg &= "Exiting..." & @CRLF & "Solved " & $num_solved & " MediaCoder equations."
  MsgBox(0, "Remove nag screen", $msg)
EndFunc

while 1
  If Not ProcessExists("MediaCoder.exe") Then
    Exit 1
  EndIf

  $windows = WinList()

  For $i = 1 to $windows[0][0] Step 1
    If Not StringInStr($windows[$i][0], "Continue in") = 0 Then
      $winText = WinGetText($windows[$i][0])
      $matches = StringRegExp($winText, ".* math:(.+)=.*", $STR_REGEXPARRAYMATCH)
      $mathResult = Execute($matches[0])
      ControlSend($windows[$i][0], "", "Edit2", $mathResult)
      ControlClick($windows[$i][0], "Continue", "Button2")
      $num_solved += 1
    EndIf
  Next
  Sleep(5000)
WEnd

Save it to file named remove_nag_screen.au3 and run. I hope you will find this little snippet helpful.