private static void prepareFile()
	{
		try
		{
			// prepare directories if necessary
			File fTmp = new File(EzimConf.getConfDir());
			if (! fTmp.exists() || ! fTmp.isDirectory()) fTmp.mkdirs();

			// attempt lock
			EzimConf.flock = new FileOutputStream
			(
				EzimConf.getLockFilename()
			).getChannel().tryLock();

			if (EzimConf.flock == null)
			{
				throw new Exception
				(
					"Only one program instance can be run at a time."
				);
			}
		}
		catch(Exception e)
		{
			EzimLogger.getInstance().severe(e.getMessage(), e);
			Ezim.exit(1);
		}
	}