{
ver_ex_number = atom.readShort();
patom.writeShort(id,ver_ex_number);
+
+ // version check
+ if (!servMgr->noVersionCheck
+ && !strncmp(ver_ex_prefix, PCP_CLIENT_VERSION_EX_PREFIX, 2)
+ && ver_ex_number > PCP_CLIENT_VERSION_EX_NUMBER)
+ {
+ strcpy(servMgr->downloadURL, PCP_CLIENT_DIST_URL);
+ peercastApp->notifyMessage(ServMgr::NT_UPGRADE,"\90V\82µ\82¢\83o\81[\83W\83\87\83\93\82ÌPeercast\82ª\8c\9f\8fo\82³\82ê\82Ü\82µ\82½\81B\8dX\90V\82ð\8am\94F\82µ\82Ä\82\82¾\82³\82¢\81B");
+
+ LOG_DEBUG("PCP got version check: %d / %d", ver_ex_number, PCP_CLIENT_VERSION_EX_NUMBER);
+ }
}else if (id == PCP_HOST)
{
ChanHit hit;
PeercastInstance *peercastInst=NULL;
PeercastApplication *peercastApp=NULL;
-int version_ex = 0;
+int version_ex = 1; // VERSION_EX\97L\8cø\89»
// ---------------------------------
void APICALL PeercastInstance::init()
topmostGui = false;
startWithGui = false;
preventSS = false;
+ noVersionCheck = false;
chanLog="";
iniFile.writeBoolValue("topmostGui", servMgr->topmostGui);
iniFile.writeBoolValue("startWithGui", servMgr->startWithGui);
iniFile.writeBoolValue("preventSS", servMgr->preventSS);
+ iniFile.writeBoolValue("noVersionCheck", servMgr->noVersionCheck);
#endif
int i;
servMgr->startWithGui = iniFile.getBoolValue();
else if (iniFile.isName("preventSS"))
servMgr->preventSS = iniFile.getBoolValue();
+ else if (iniFile.isName("noVersionCheck"))
+ servMgr->noVersionCheck = iniFile.getBoolValue();
#endif
// debug
bool topmostGui; // \8dÅ\91O\96Ê
bool startWithGui; // \8bN\93®\8e\9e\82ÉGUI
bool preventSS; // \83X\83N\83\8a\81[\83\93\83Z\81[\83o\81[\82ð\97}\8e~
+ bool noVersionCheck; // bcstAtom\82É\82æ\82é\83o\81[\83W\83\87\83\93\83`\83F\83b\83N\82ð\8ds\82í\82È\82¢
int maxRelaysIndexTxt; // for PCRaw (relay)
static const char *PCX_AGENTVP = "PeerCast/0.1218(VP0027)";
static const char *PCX_VERSTRING = "v0.1218(VP0027)";
-extern int version_ex; // PP\94Å\8ag\92£\8b@\94\\97L\8cø\89»\83t\83\89\83O(\82½\82Ô\82ñ)\81©\91å\89R[VERSION_EX\97L\8cø\89»\83t\83\89\83O]
+extern int version_ex; // VERSION_EX\97L\8cø\89»\83t\83\89\83O
#if 1 /* for VP extend version */
//#define VERSION_EX 1
static const char *PCP_CLIENT_VERSION_EX_PREFIX = "IM"; // 2bytes only
-static const int PCP_CLIENT_VERSION_EX_NUMBER = 35;
+static const int PCP_CLIENT_VERSION_EX_NUMBER = 36;
static const char *PCX_AGENTEX = "PeerCast/0.1218(IM0035)";
static const char *PCX_VERSTRING_EX = "v0.1218(IM0035)";
+
+static const char *PCP_CLIENT_DIST_URL = "http://peercastim.s353.xrea.com/";
#endif
// ------------------------------------------------
{
//hInst = hInstance;
- version_ex = 1; // PP\94Å\8ag\92£\8b@\94\\82ð\96³\8cø\82É\81©\91å\89R\81B\83o\81[\83W\83\87\83\93\95\\8bL\82ðEX\82É
-
//iniFileName.set(".\\peercast.ini");
WIN32_FIND_DATA fd; //JP-EX
hInst = hInstance;
- version_ex = 1; // PP\94Å\8ag\92£\8b@\94\\82ð\96³\8cø\82É\81©\91å\89R\81B\83o\81[\83W\83\87\83\93\95\\8bL\82ðEX\82É
-
iniFileName.set(".\\peercast.ini");
WIN32_FIND_DATA fd; //JP-EX
CheckMenuItem(trayMenu, ID_POPUP_PREVENT_SS, MF_UNCHECKED|MF_BYCOMMAND);
}
+ // \83o\81[\83W\83\87\83\93\83`\83F\83b\83N\82Ì\97L\96³
+ if (servMgr->noVersionCheck)
+ {
+ CheckMenuItem(trayMenu, ID_POPUP_NO_VER_CHECK, MF_CHECKED|MF_BYCOMMAND);
+ } else
+ {
+ CheckMenuItem(trayMenu, ID_POPUP_NO_VER_CHECK, MF_UNCHECKED|MF_BYCOMMAND);
+ }
+
SetForegroundWindow(hWnd);
bool skipMenu=false;
peercastInst->saveSettings();
break;
+ case ID_POPUP_NO_VER_CHECK:
+ // \83o\81[\83W\83\87\83\93\83`\83F\83b\83N\82Ì\97L\96³
+ if (servMgr->noVersionCheck)
+ {
+ servMgr->noVersionCheck = false;
+ CheckMenuItem(trayMenu, ID_POPUP_NO_VER_CHECK, MF_UNCHECKED|MF_BYCOMMAND);
+ } else
+ {
+ servMgr->noVersionCheck = true;
+ CheckMenuItem(trayMenu, ID_POPUP_NO_VER_CHECK, MF_CHECKED|MF_BYCOMMAND);
+ }
+ peercastInst->saveSettings();
+ break;
+
case ID_POPUP_EXIT_CONFIRM:
case IDM_EXIT:
DestroyWindow(hWnd);
MENUITEM "\8fí\82É\8eè\91O\82É\95\\8e¦", ID_POPUP_TOPMOST
MENUITEM "\8bN\93®\8e\9e\81AGUI\82ð\95\\8e¦", ID_POPUP_START_WITH_GUI
MENUITEM "\94z\90M\8e\9e\81AScreenSaver\82ð\97}\8e~", ID_POPUP_PREVENT_SS, GRAYED
+ MENUITEM "\83o\81[\83W\83\87\83\93\83`\83F\83b\83N\82ð\8ds\82í\82È\82¢", ID_POPUP_NO_VER_CHECK
END
MENUITEM SEPARATOR
POPUP "\8fI\97¹"
#define ID_POPUP_TRAFFIC 32832
#define ID_32833 32833
#define ID_POPUP_PREVENT_SS 32834
+#define ID_32835 32835
+#define ID_POPUP_NO_VER_CHECK 32836
#define IDC_STATIC -1
// Next default values for new objects
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 144
-#define _APS_NEXT_COMMAND_VALUE 32835
+#define _APS_NEXT_COMMAND_VALUE 32837
#define _APS_NEXT_CONTROL_VALUE 1025
#define _APS_NEXT_SYMED_VALUE 110
#endif
{
ver_ex_number = atom.readShort();
patom.writeShort(id,ver_ex_number);
+
+ // version check
+ if (!servMgr->noVersionCheck
+ && !strncmp(ver_ex_prefix, PCP_CLIENT_VERSION_EX_PREFIX, 2)
+ && ver_ex_number > PCP_CLIENT_VERSION_EX_NUMBER)
+ {
+ strcpy(servMgr->downloadURL, PCP_CLIENT_DIST_URL);
+ peercastApp->notifyMessage(ServMgr::NT_UPGRADE,"\90V\82µ\82¢\83o\81[\83W\83\87\83\93\82ÌPeercast\82ª\8c\9f\8fo\82³\82ê\82Ü\82µ\82½\81B\8dX\90V\82ð\8am\94F\82µ\82Ä\82\82¾\82³\82¢\81B");
+
+ LOG_DEBUG("PCP got version check: %d / %d", ver_ex_number, PCP_CLIENT_VERSION_EX_NUMBER);
+ }
}else if (id == PCP_HOST)
{
ChanHit hit;
PeercastInstance *peercastInst=NULL;
PeercastApplication *peercastApp=NULL;
-int version_ex = 0;
+int version_ex = 1; // VERSION_EX\97L\8cø\89»
// ---------------------------------
void APICALL PeercastInstance::init()
topmostGui = false;
startWithGui = false;
preventSS = false;
+ noVersionCheck = false;
chanLog="";
iniFile.writeBoolValue("topmostGui", servMgr->topmostGui);
iniFile.writeBoolValue("startWithGui", servMgr->startWithGui);
iniFile.writeBoolValue("preventSS", servMgr->preventSS);
+ iniFile.writeBoolValue("noVersionCheck", servMgr->noVersionCheck);
#endif
int i;
servMgr->startWithGui = iniFile.getBoolValue();
else if (iniFile.isName("preventSS"))
servMgr->preventSS = iniFile.getBoolValue();
+ else if (iniFile.isName("noVersionCheck"))
+ servMgr->noVersionCheck = iniFile.getBoolValue();
#endif
// debug
bool topmostGui; // \8dÅ\91O\96Ê
bool startWithGui; // \8bN\93®\8e\9e\82ÉGUI
bool preventSS; // \83X\83N\83\8a\81[\83\93\83Z\81[\83o\81[\82ð\97}\8e~
+ bool noVersionCheck; // bcstAtom\82É\82æ\82é\83o\81[\83W\83\87\83\93\83`\83F\83b\83N\82ð\8ds\82í\82È\82¢
int maxRelaysIndexTxt; // for PCRaw (relay)
static const char *PCX_AGENTVP = "PeerCast/0.1218(VP0027)";
static const char *PCX_VERSTRING = "v0.1218(VP0027)";
-extern int version_ex; // PP\94Å\8ag\92£\8b@\94\\97L\8cø\89»\83t\83\89\83O(\82½\82Ô\82ñ)\81©\91å\89R[VERSION_EX\97L\8cø\89»\83t\83\89\83O]
+extern int version_ex; // VERSION_EX\97L\8cø\89»\83t\83\89\83O
#if 1 /* for VP extend version */
//#define VERSION_EX 1
static const char *PCP_CLIENT_VERSION_EX_PREFIX = "IM"; // 2bytes only
-static const int PCP_CLIENT_VERSION_EX_NUMBER = 35;
+static const int PCP_CLIENT_VERSION_EX_NUMBER = 36;
static const char *PCX_AGENTEX = "PeerCast/0.1218(IM0035)";
static const char *PCX_VERSTRING_EX = "v0.1218(IM0035)";
+
+static const char *PCP_CLIENT_DIST_URL = "http://peercastim.s353.xrea.com/";
#endif
// ------------------------------------------------
{
//hInst = hInstance;
- version_ex = 1; // PP\94Å\8ag\92£\8b@\94\\82ð\96³\8cø\82É\81©\91å\89R\81B\83o\81[\83W\83\87\83\93\95\\8bL\82ðEX\82É
-
//iniFileName.set(".\\peercast.ini");
WIN32_FIND_DATA fd; //JP-EX
hInst = hInstance;
- version_ex = 1; // PP\94Å\8ag\92£\8b@\94\\82ð\96³\8cø\82É\81©\91å\89R\81B\83o\81[\83W\83\87\83\93\95\\8bL\82ðEX\82É
-
iniFileName.set(".\\peercast.ini");
WIN32_FIND_DATA fd; //JP-EX
CheckMenuItem(trayMenu, ID_POPUP_PREVENT_SS, MF_UNCHECKED|MF_BYCOMMAND);
}
+ // \83o\81[\83W\83\87\83\93\83`\83F\83b\83N\82Ì\97L\96³
+ if (servMgr->noVersionCheck)
+ {
+ CheckMenuItem(trayMenu, ID_POPUP_NO_VER_CHECK, MF_CHECKED|MF_BYCOMMAND);
+ } else
+ {
+ CheckMenuItem(trayMenu, ID_POPUP_NO_VER_CHECK, MF_UNCHECKED|MF_BYCOMMAND);
+ }
+
SetForegroundWindow(hWnd);
bool skipMenu=false;
peercastInst->saveSettings();
break;
+ case ID_POPUP_NO_VER_CHECK:
+ // \83o\81[\83W\83\87\83\93\83`\83F\83b\83N\82Ì\97L\96³
+ if (servMgr->noVersionCheck)
+ {
+ servMgr->noVersionCheck = false;
+ CheckMenuItem(trayMenu, ID_POPUP_NO_VER_CHECK, MF_UNCHECKED|MF_BYCOMMAND);
+ } else
+ {
+ servMgr->noVersionCheck = true;
+ CheckMenuItem(trayMenu, ID_POPUP_NO_VER_CHECK, MF_CHECKED|MF_BYCOMMAND);
+ }
+ peercastInst->saveSettings();
+ break;
+
case ID_POPUP_EXIT_CONFIRM:
case IDM_EXIT:
DestroyWindow(hWnd);
MENUITEM "\8fí\82É\8eè\91O\82É\95\\8e¦", ID_POPUP_TOPMOST
MENUITEM "\8bN\93®\8e\9e\81AGUI\82ð\95\\8e¦", ID_POPUP_START_WITH_GUI
MENUITEM "\94z\90M\8e\9e\81AScreenSaver\82ð\97}\8e~", ID_POPUP_PREVENT_SS, GRAYED
+ MENUITEM "\83o\81[\83W\83\87\83\93\83`\83F\83b\83N\82ð\8ds\82í\82È\82¢", ID_POPUP_NO_VER_CHECK
END
MENUITEM SEPARATOR
POPUP "\8fI\97¹"
#define ID_POPUP_TRAFFIC 32832
#define ID_32833 32833
#define ID_POPUP_PREVENT_SS 32834
+#define ID_32835 32835
+#define ID_POPUP_NO_VER_CHECK 32836
#define IDC_STATIC -1
// Next default values for new objects
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 144
-#define _APS_NEXT_COMMAND_VALUE 32835
+#define _APS_NEXT_COMMAND_VALUE 32837
#define _APS_NEXT_CONTROL_VALUE 1025
#define _APS_NEXT_SYMED_VALUE 110
#endif