NAG_INITIAL_SETUP,
NAG_IMPORT_DECRYPTION_CHAIN,
NAG_DELETE_DKDM,
+ NAG_32_ON_64,
NAG_COUNT
};
return "";
}
+
+/** @return true if this process is a 32-bit one running on a 64-bit-capable OS */
+bool
+running_32_on_64 ()
+{
+#ifdef DCPOMATIC_WINDOWS
+ BOOL p;
+ IsWow64Process (GetCurrentProcess(), &p);
+ return p;
+#endif
+ /* XXX: assuming nobody does this on Linux / OS X */
+ return false;
+}
extern int avio_open_boost (AVIOContext** s, boost::filesystem::path file, int flags);
extern boost::filesystem::path home_directory ();
extern std::string command_and_read (std::string cmd);
+extern bool running_32_on_64 ();
/** @class Waker
* @brief A class which tries to keep the computer awake on various operating systems.
Config::instance()->set_nagged(Config::NAG_INITIAL_SETUP, true);
}
+ if (running_32_on_64 ()) {
+ NagDialog::maybe_nag (
+ _frame, Config::NAG_32_ON_64,
+ _("You are running the 32-bit version of DCP-o-matic on a 64-bit version of Windows. This will limit the memory available to DCP-o-matic and may cause errors. You are strongly advised to install the 64-bit version of DCP-o-matic."),
+ false);
+ }
+
_frame->Show ();
if (!_film_to_load.empty() && boost::filesystem::is_directory (_film_to_load)) {