Joachim Breitner

screen-message ported to Windows

Published 2010-01-07 in sections English, Digital World.

Over the holidays I investigated how to cross-compile GTK applications for Windows, and managed to port screen-message. I also created an Inno Setup based installer for it that includes the necessary GTK DLLs. You can grab it from the screen-message homepage. The installer optionally binds screen-messages to the key combination Alt-Ctrl-S.

I would have published the binary much earlier if starting the application had not always given the error message

The application failed to initialize properly (0xc000007b). Click on OK to terminate the application.

on Windows, while it worked fine under WINE. It took me a while to find the cause, as there seems to be only one mention of it in the internet: One must not use MinGW’s strip.exe utility on DLLs not created with MinGW, it seems.

I added a “make installer” target to the Makefile to create the installer. If you are curious about how that works, have a look at the source.


Comments

Are there any screenshots of screen-message?
#1 Me am 2010-01-07
Yes, for example on http://screenshots.debian.net/package/sm and on http://debaday.debian.net/2007/07/18/screen-message-use-your-screen-to-communicate/. And there are examples of it in action on https://gallery.debconf.org/v/debconf8/Mugshots/
#2 Joachim Breitner (Homepage) am 2010-01-08
If you used NSIS instead of InnoSetup you could avoid using wine in the installer creation stage.
#3 foo am 2010-01-09
Thanks for the pointer. At a first glance, Inno Setup seemed to be simpler to get started with, and I don’t mind running wine. But I’ll keep the option in mind.
#4 Joachim Breitner (Homepage) am 2010-01-09
wow! Your app is amazing.

I get this error playing:

sm.py:140: GtkWarning: /build/buildd/gtk+2.0-2.19.2/gtk/gtktextview.c:4572: somehow some text lines were modified or scrolling occurred since the last validation of lines on the screen - may be a text widget bug.
gtk.main()
**
Gtk:ERROR:/build/buildd/gtk+2.0-2.19.2/gtk/gtktextview.c:4573:gtk_text_view_paint: code should not be reached
#5 shakaran (Homepage) am 2010-01-11
You seem to be using the python version. This is kept only for historical reasons. The C version is actively developed.
#6 Joachim Breitner (Homepage) am 2010-01-11

Have something to say? You can post a comment by sending an e-Mail to me at <mail@joachim-breitner.de>, and I will include it here.