diff --git a/vncviewer/Win32PixelBuffer.cxx b/vncviewer/Win32PixelBuffer.cxx
index 9fb0414..4871816 100644
--- a/vncviewer/Win32PixelBuffer.cxx
+++ b/vncviewer/Win32PixelBuffer.cxx
@@ -31,6 +31,7 @@
 #include <rfb/LogWriter.h>
 #include <rfb/Exception.h>
 
+#include "i18n.h"
 #include "Win32PixelBuffer.h"
 
 using namespace rfb;
@@ -59,7 +60,7 @@
                             DIB_RGB_COLORS, (void**)&data, NULL, 0);
   if (!bitmap) {
     int err = GetLastError();
-    throw rdr::SystemException("unable to create DIB section", err);
+    throw rdr::SystemException(_("unable to create DIB section"), err);
   }
 }
 
@@ -76,10 +77,10 @@
 
   dc = CreateCompatibleDC(fl_gc);
   if (!dc)
-    throw rdr::SystemException("CreateCompatibleDC failed", GetLastError());
+    throw rdr::SystemException(_("CreateCompatibleDC failed"), GetLastError());
 
   if (!SelectObject(dc, bitmap))
-    throw rdr::SystemException("SelectObject failed", GetLastError());
+    throw rdr::SystemException(_("SelectObject failed"), GetLastError());
 
   if (!BitBlt(fl_gc, x, y, w, h, dc, src_x, src_y, SRCCOPY)) {
     // If the desktop we're rendering to is inactive (like when the screen
@@ -88,7 +89,7 @@
     // with it. For now, we've only seen this error and for this function
     // so only ignore this combination.
     if (GetLastError() != ERROR_INVALID_HANDLE)
-      throw rdr::SystemException("BitBlt failed", GetLastError());
+      throw rdr::SystemException(_("BitBlt failed"), GetLastError());
   }
 
   DeleteDC(dc);
