• R/O
  • HTTP
  • SSH
  • HTTPS

PeerCastIM: Commit


Commit MetaInfo

Revisão6692fefc16d0da00669c68f7584bfe12c34f40df (tree)
Hora2009-10-22 22:39:03
Autoreru <eru01@user...>
Commitereru

Mensagem de Log

Vss2Git

Mudança Sumário

Diff

--- a/PeerCast.root/PeerCast/core/win32/lib/corelib.vcproj
+++ b/PeerCast.root/PeerCast/core/win32/lib/corelib.vcproj
@@ -17,6 +17,9 @@
1717 <Platform
1818 Name="x64"
1919 />
20+ <Platform
21+ Name="Pocket PC 2003 (ARMV4)"
22+ />
2023 </Platforms>
2124 <ToolFiles>
2225 </ToolFiles>
@@ -173,6 +176,94 @@
173176 />
174177 </Configuration>
175178 <Configuration
179+ Name="Private Release|Pocket PC 2003 (ARMV4)"
180+ OutputDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
181+ IntermediateDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
182+ ConfigurationType="4"
183+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
184+ UseOfMFC="0"
185+ ATLMinimizesCRunTimeLibraryUsage="false"
186+ CharacterSet="2"
187+ >
188+ <Tool
189+ Name="VCPreBuildEventTool"
190+ />
191+ <Tool
192+ Name="VCCustomBuildTool"
193+ />
194+ <Tool
195+ Name="VCXMLDataGeneratorTool"
196+ />
197+ <Tool
198+ Name="VCWebServiceProxyGeneratorTool"
199+ />
200+ <Tool
201+ Name="VCMIDLTool"
202+ TargetEnvironment="1"
203+ />
204+ <Tool
205+ Name="VCCLCompilerTool"
206+ ExecutionBucket="7"
207+ Optimization="2"
208+ InlineFunctionExpansion="1"
209+ AdditionalIncludeDirectories="../../,../../common"
210+ PreprocessorDefinitions="WIN32;NDEBUG;_LIB;PRIVATE_BROADCASTER"
211+ StringPooling="true"
212+ RuntimeLibrary="0"
213+ EnableFunctionLevelLinking="true"
214+ PrecompiledHeaderFile=".\corelib___Win32_Private_Release/corelib.pch"
215+ AssemblerListingLocation=".\corelib___Win32_Private_Release/"
216+ ObjectFile=".\corelib___Win32_Private_Release/"
217+ ProgramDataBaseFileName=".\corelib___Win32_Private_Release/"
218+ WarningLevel="3"
219+ SuppressStartupBanner="true"
220+ />
221+ <Tool
222+ Name="VCManagedResourceCompilerTool"
223+ />
224+ <Tool
225+ Name="VCResourceCompilerTool"
226+ PreprocessorDefinitions="NDEBUG"
227+ Culture="1033"
228+ />
229+ <Tool
230+ Name="VCPreLinkEventTool"
231+ />
232+ <Tool
233+ Name="VCLibrarianTool"
234+ OutputFile=".\corelib___Win32_Private_Release\corelib.lib"
235+ SuppressStartupBanner="true"
236+ />
237+ <Tool
238+ Name="VCALinkTool"
239+ />
240+ <Tool
241+ Name="VCXDCMakeTool"
242+ />
243+ <Tool
244+ Name="VCBscMakeTool"
245+ SuppressStartupBanner="true"
246+ OutputFile=".\corelib___Win32_Private_Release/corelib.bsc"
247+ />
248+ <Tool
249+ Name="VCFxCopTool"
250+ />
251+ <Tool
252+ Name="VCCodeSignTool"
253+ />
254+ <Tool
255+ Name="VCPostBuildEventTool"
256+ />
257+ <DeploymentTool
258+ ForceDirty="-1"
259+ RemoteDirectory=""
260+ RegisterOutput="0"
261+ AdditionalFiles=""
262+ />
263+ <DebuggerTool
264+ />
265+ </Configuration>
266+ <Configuration
176267 Name="Debug|Win32"
177268 OutputDirectory=".\Debug"
178269 IntermediateDirectory=".\Debug"
@@ -325,6 +416,92 @@
325416 />
326417 </Configuration>
327418 <Configuration
419+ Name="Debug|Pocket PC 2003 (ARMV4)"
420+ OutputDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
421+ IntermediateDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
422+ ConfigurationType="4"
423+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
424+ UseOfMFC="0"
425+ ATLMinimizesCRunTimeLibraryUsage="false"
426+ CharacterSet="2"
427+ >
428+ <Tool
429+ Name="VCPreBuildEventTool"
430+ />
431+ <Tool
432+ Name="VCCustomBuildTool"
433+ />
434+ <Tool
435+ Name="VCXMLDataGeneratorTool"
436+ />
437+ <Tool
438+ Name="VCWebServiceProxyGeneratorTool"
439+ />
440+ <Tool
441+ Name="VCMIDLTool"
442+ TargetEnvironment="1"
443+ />
444+ <Tool
445+ Name="VCCLCompilerTool"
446+ ExecutionBucket="7"
447+ Optimization="0"
448+ AdditionalIncludeDirectories="../../,../../common,../../../ui/win32/simple"
449+ PreprocessorDefinitions="WIN32;_DEBUG;_LIB"
450+ MinimalRebuild="true"
451+ RuntimeLibrary="1"
452+ PrecompiledHeaderFile=".\Debug/corelib.pch"
453+ AssemblerListingLocation=".\Debug/"
454+ ObjectFile=".\Debug/"
455+ ProgramDataBaseFileName=".\Debug/"
456+ WarningLevel="3"
457+ SuppressStartupBanner="true"
458+ />
459+ <Tool
460+ Name="VCManagedResourceCompilerTool"
461+ />
462+ <Tool
463+ Name="VCResourceCompilerTool"
464+ PreprocessorDefinitions="_DEBUG"
465+ Culture="1033"
466+ />
467+ <Tool
468+ Name="VCPreLinkEventTool"
469+ />
470+ <Tool
471+ Name="VCLibrarianTool"
472+ OutputFile=".\Debug\corelib.lib"
473+ SuppressStartupBanner="true"
474+ />
475+ <Tool
476+ Name="VCALinkTool"
477+ />
478+ <Tool
479+ Name="VCXDCMakeTool"
480+ />
481+ <Tool
482+ Name="VCBscMakeTool"
483+ SuppressStartupBanner="true"
484+ OutputFile=".\Debug/corelib.bsc"
485+ />
486+ <Tool
487+ Name="VCFxCopTool"
488+ />
489+ <Tool
490+ Name="VCCodeSignTool"
491+ />
492+ <Tool
493+ Name="VCPostBuildEventTool"
494+ />
495+ <DeploymentTool
496+ ForceDirty="-1"
497+ RemoteDirectory=""
498+ RegisterOutput="0"
499+ AdditionalFiles=""
500+ />
501+ <DebuggerTool
502+ />
503+ </Configuration>
504+ <Configuration
328505 Name="Release|Win32"
329506 OutputDirectory=".\Release"
330507 IntermediateDirectory=".\Release"
@@ -362,6 +539,7 @@
362539 StringPooling="true"
363540 RuntimeLibrary="0"
364541 EnableFunctionLevelLinking="true"
542+ EnableEnhancedInstructionSet="1"
365543 PrecompiledHeaderFile=".\Release/corelib.pch"
366544 AssemblerListingLocation=".\Release/"
367545 ObjectFile=".\Release/"
@@ -443,6 +621,7 @@
443621 StringPooling="true"
444622 RuntimeLibrary="0"
445623 EnableFunctionLevelLinking="true"
624+ EnableEnhancedInstructionSet="2"
446625 PrecompiledHeaderFile=".\Release/corelib.pch"
447626 AssemblerListingLocation=".\Release/"
448627 ObjectFile=".\Release/"
@@ -487,6 +666,98 @@
487666 />
488667 </Configuration>
489668 <Configuration
669+ Name="Release|Pocket PC 2003 (ARMV4)"
670+ OutputDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
671+ IntermediateDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
672+ ConfigurationType="4"
673+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
674+ UseOfMFC="0"
675+ ATLMinimizesCRunTimeLibraryUsage="false"
676+ CharacterSet="2"
677+ WholeProgramOptimization="1"
678+ >
679+ <Tool
680+ Name="VCPreBuildEventTool"
681+ />
682+ <Tool
683+ Name="VCCustomBuildTool"
684+ />
685+ <Tool
686+ Name="VCXMLDataGeneratorTool"
687+ />
688+ <Tool
689+ Name="VCWebServiceProxyGeneratorTool"
690+ />
691+ <Tool
692+ Name="VCMIDLTool"
693+ TargetEnvironment="1"
694+ />
695+ <Tool
696+ Name="VCCLCompilerTool"
697+ ExecutionBucket="7"
698+ Optimization="2"
699+ InlineFunctionExpansion="2"
700+ EnableIntrinsicFunctions="true"
701+ FavorSizeOrSpeed="1"
702+ AdditionalIncludeDirectories="../../,../../common"
703+ PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
704+ StringPooling="true"
705+ RuntimeLibrary="0"
706+ EnableFunctionLevelLinking="true"
707+ PrecompiledHeaderFile=".\Release/corelib.pch"
708+ AssemblerListingLocation=".\Release/"
709+ ObjectFile=".\Release/"
710+ ProgramDataBaseFileName=".\Release/"
711+ WarningLevel="3"
712+ SuppressStartupBanner="true"
713+ DebugInformationFormat="3"
714+ />
715+ <Tool
716+ Name="VCManagedResourceCompilerTool"
717+ />
718+ <Tool
719+ Name="VCResourceCompilerTool"
720+ PreprocessorDefinitions="NDEBUG"
721+ Culture="1033"
722+ />
723+ <Tool
724+ Name="VCPreLinkEventTool"
725+ />
726+ <Tool
727+ Name="VCLibrarianTool"
728+ OutputFile=".\Release\corelib.lib"
729+ SuppressStartupBanner="true"
730+ />
731+ <Tool
732+ Name="VCALinkTool"
733+ />
734+ <Tool
735+ Name="VCXDCMakeTool"
736+ />
737+ <Tool
738+ Name="VCBscMakeTool"
739+ SuppressStartupBanner="true"
740+ OutputFile=".\Release/corelib.bsc"
741+ />
742+ <Tool
743+ Name="VCFxCopTool"
744+ />
745+ <Tool
746+ Name="VCCodeSignTool"
747+ />
748+ <Tool
749+ Name="VCPostBuildEventTool"
750+ />
751+ <DeploymentTool
752+ ForceDirty="-1"
753+ RemoteDirectory=""
754+ RegisterOutput="0"
755+ AdditionalFiles=""
756+ />
757+ <DebuggerTool
758+ />
759+ </Configuration>
760+ <Configuration
490761 Name="Private Debug|Win32"
491762 OutputDirectory=".\corelib___Win32_Private_Debug"
492763 IntermediateDirectory=".\corelib___Win32_Private_Debug"
@@ -637,18 +908,1876 @@
637908 Name="VCPostBuildEventTool"
638909 />
639910 </Configuration>
640- </Configurations>
641- <References>
642- </References>
643- <Files>
644- <Filter
645- Name="Core Source"
911+ <Configuration
912+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
913+ OutputDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
914+ IntermediateDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
915+ ConfigurationType="4"
916+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
917+ UseOfMFC="0"
918+ ATLMinimizesCRunTimeLibraryUsage="false"
919+ CharacterSet="2"
646920 >
647- <File
648- RelativePath="..\..\common\channel.cpp"
649- >
921+ <Tool
922+ Name="VCPreBuildEventTool"
923+ />
924+ <Tool
925+ Name="VCCustomBuildTool"
926+ />
927+ <Tool
928+ Name="VCXMLDataGeneratorTool"
929+ />
930+ <Tool
931+ Name="VCWebServiceProxyGeneratorTool"
932+ />
933+ <Tool
934+ Name="VCMIDLTool"
935+ TargetEnvironment="1"
936+ />
937+ <Tool
938+ Name="VCCLCompilerTool"
939+ ExecutionBucket="7"
940+ Optimization="0"
941+ AdditionalIncludeDirectories="../../,../../common"
942+ PreprocessorDefinitions="WIN32;_DEBUG;_LIB;PRIVATE_BROADCASTER"
943+ MinimalRebuild="true"
944+ RuntimeLibrary="1"
945+ PrecompiledHeaderFile=".\corelib___Win32_Private_Debug/corelib.pch"
946+ AssemblerListingLocation=".\corelib___Win32_Private_Debug/"
947+ ObjectFile=".\corelib___Win32_Private_Debug/"
948+ ProgramDataBaseFileName=".\corelib___Win32_Private_Debug/"
949+ WarningLevel="3"
950+ SuppressStartupBanner="true"
951+ />
952+ <Tool
953+ Name="VCManagedResourceCompilerTool"
954+ />
955+ <Tool
956+ Name="VCResourceCompilerTool"
957+ PreprocessorDefinitions="_DEBUG"
958+ Culture="1033"
959+ />
960+ <Tool
961+ Name="VCPreLinkEventTool"
962+ />
963+ <Tool
964+ Name="VCLibrarianTool"
965+ OutputFile=".\corelib___Win32_Private_Debug\corelib.lib"
966+ SuppressStartupBanner="true"
967+ />
968+ <Tool
969+ Name="VCALinkTool"
970+ />
971+ <Tool
972+ Name="VCXDCMakeTool"
973+ />
974+ <Tool
975+ Name="VCBscMakeTool"
976+ SuppressStartupBanner="true"
977+ OutputFile=".\corelib___Win32_Private_Debug/corelib.bsc"
978+ />
979+ <Tool
980+ Name="VCFxCopTool"
981+ />
982+ <Tool
983+ Name="VCCodeSignTool"
984+ />
985+ <Tool
986+ Name="VCPostBuildEventTool"
987+ />
988+ <DeploymentTool
989+ ForceDirty="-1"
990+ RemoteDirectory=""
991+ RegisterOutput="0"
992+ AdditionalFiles=""
993+ />
994+ <DebuggerTool
995+ />
996+ </Configuration>
997+ <Configuration
998+ Name="Release(SSE2)|Win32"
999+ OutputDirectory="$(ConfigurationName)"
1000+ IntermediateDirectory="$(ConfigurationName)"
1001+ ConfigurationType="4"
1002+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
1003+ UseOfMFC="0"
1004+ ATLMinimizesCRunTimeLibraryUsage="false"
1005+ CharacterSet="2"
1006+ WholeProgramOptimization="1"
1007+ >
1008+ <Tool
1009+ Name="VCPreBuildEventTool"
1010+ />
1011+ <Tool
1012+ Name="VCCustomBuildTool"
1013+ />
1014+ <Tool
1015+ Name="VCXMLDataGeneratorTool"
1016+ />
1017+ <Tool
1018+ Name="VCWebServiceProxyGeneratorTool"
1019+ />
1020+ <Tool
1021+ Name="VCMIDLTool"
1022+ />
1023+ <Tool
1024+ Name="VCCLCompilerTool"
1025+ Optimization="2"
1026+ InlineFunctionExpansion="2"
1027+ EnableIntrinsicFunctions="true"
1028+ FavorSizeOrSpeed="1"
1029+ EnableFiberSafeOptimizations="true"
1030+ AdditionalIncludeDirectories="../../,../../common"
1031+ PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
1032+ StringPooling="true"
1033+ RuntimeLibrary="0"
1034+ EnableFunctionLevelLinking="true"
1035+ EnableEnhancedInstructionSet="2"
1036+ PrecompiledHeaderFile=".\Release/corelib.pch"
1037+ AssemblerListingLocation=".\Release/"
1038+ ObjectFile=".\Release/"
1039+ ProgramDataBaseFileName=".\Release/"
1040+ WarningLevel="3"
1041+ SuppressStartupBanner="true"
1042+ DebugInformationFormat="3"
1043+ />
1044+ <Tool
1045+ Name="VCManagedResourceCompilerTool"
1046+ />
1047+ <Tool
1048+ Name="VCResourceCompilerTool"
1049+ PreprocessorDefinitions="NDEBUG"
1050+ Culture="1033"
1051+ />
1052+ <Tool
1053+ Name="VCPreLinkEventTool"
1054+ />
1055+ <Tool
1056+ Name="VCLibrarianTool"
1057+ OutputFile=".\Release\corelib.lib"
1058+ SuppressStartupBanner="true"
1059+ />
1060+ <Tool
1061+ Name="VCALinkTool"
1062+ />
1063+ <Tool
1064+ Name="VCXDCMakeTool"
1065+ />
1066+ <Tool
1067+ Name="VCBscMakeTool"
1068+ SuppressStartupBanner="true"
1069+ OutputFile=".\Release/corelib.bsc"
1070+ />
1071+ <Tool
1072+ Name="VCFxCopTool"
1073+ />
1074+ <Tool
1075+ Name="VCPostBuildEventTool"
1076+ />
1077+ </Configuration>
1078+ <Configuration
1079+ Name="Release(SSE2)|x64"
1080+ OutputDirectory="$(PlatformName)\$(ConfigurationName)"
1081+ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
1082+ ConfigurationType="4"
1083+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
1084+ UseOfMFC="0"
1085+ ATLMinimizesCRunTimeLibraryUsage="false"
1086+ CharacterSet="2"
1087+ WholeProgramOptimization="1"
1088+ >
1089+ <Tool
1090+ Name="VCPreBuildEventTool"
1091+ />
1092+ <Tool
1093+ Name="VCCustomBuildTool"
1094+ />
1095+ <Tool
1096+ Name="VCXMLDataGeneratorTool"
1097+ />
1098+ <Tool
1099+ Name="VCWebServiceProxyGeneratorTool"
1100+ />
1101+ <Tool
1102+ Name="VCMIDLTool"
1103+ TargetEnvironment="3"
1104+ />
1105+ <Tool
1106+ Name="VCCLCompilerTool"
1107+ Optimization="2"
1108+ InlineFunctionExpansion="2"
1109+ EnableIntrinsicFunctions="true"
1110+ FavorSizeOrSpeed="1"
1111+ EnableFiberSafeOptimizations="true"
1112+ AdditionalIncludeDirectories="../../,../../common"
1113+ PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
1114+ StringPooling="true"
1115+ RuntimeLibrary="0"
1116+ EnableFunctionLevelLinking="true"
1117+ EnableEnhancedInstructionSet="2"
1118+ PrecompiledHeaderFile=".\Release/corelib.pch"
1119+ AssemblerListingLocation=".\Release/"
1120+ ObjectFile=".\Release/"
1121+ ProgramDataBaseFileName=".\Release/"
1122+ WarningLevel="3"
1123+ SuppressStartupBanner="true"
1124+ Detect64BitPortabilityProblems="true"
1125+ DebugInformationFormat="3"
1126+ />
1127+ <Tool
1128+ Name="VCManagedResourceCompilerTool"
1129+ />
1130+ <Tool
1131+ Name="VCResourceCompilerTool"
1132+ PreprocessorDefinitions="NDEBUG"
1133+ Culture="1033"
1134+ />
1135+ <Tool
1136+ Name="VCPreLinkEventTool"
1137+ />
1138+ <Tool
1139+ Name="VCLibrarianTool"
1140+ OutputFile=".\Release\corelib.lib"
1141+ SuppressStartupBanner="true"
1142+ />
1143+ <Tool
1144+ Name="VCALinkTool"
1145+ />
1146+ <Tool
1147+ Name="VCXDCMakeTool"
1148+ />
1149+ <Tool
1150+ Name="VCBscMakeTool"
1151+ SuppressStartupBanner="true"
1152+ OutputFile=".\Release/corelib.bsc"
1153+ />
1154+ <Tool
1155+ Name="VCFxCopTool"
1156+ />
1157+ <Tool
1158+ Name="VCPostBuildEventTool"
1159+ />
1160+ </Configuration>
1161+ <Configuration
1162+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
1163+ OutputDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
1164+ IntermediateDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
1165+ ConfigurationType="4"
1166+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
1167+ UseOfMFC="0"
1168+ ATLMinimizesCRunTimeLibraryUsage="false"
1169+ CharacterSet="2"
1170+ WholeProgramOptimization="1"
1171+ >
1172+ <Tool
1173+ Name="VCPreBuildEventTool"
1174+ />
1175+ <Tool
1176+ Name="VCCustomBuildTool"
1177+ />
1178+ <Tool
1179+ Name="VCXMLDataGeneratorTool"
1180+ />
1181+ <Tool
1182+ Name="VCWebServiceProxyGeneratorTool"
1183+ />
1184+ <Tool
1185+ Name="VCMIDLTool"
1186+ TargetEnvironment="1"
1187+ />
1188+ <Tool
1189+ Name="VCCLCompilerTool"
1190+ ExecutionBucket="7"
1191+ Optimization="2"
1192+ InlineFunctionExpansion="2"
1193+ EnableIntrinsicFunctions="true"
1194+ FavorSizeOrSpeed="1"
1195+ AdditionalIncludeDirectories="../../,../../common"
1196+ PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
1197+ StringPooling="true"
1198+ RuntimeLibrary="0"
1199+ EnableFunctionLevelLinking="true"
1200+ PrecompiledHeaderFile=".\Release/corelib.pch"
1201+ AssemblerListingLocation=".\Release/"
1202+ ObjectFile=".\Release/"
1203+ ProgramDataBaseFileName=".\Release/"
1204+ WarningLevel="3"
1205+ SuppressStartupBanner="true"
1206+ DebugInformationFormat="3"
1207+ />
1208+ <Tool
1209+ Name="VCManagedResourceCompilerTool"
1210+ />
1211+ <Tool
1212+ Name="VCResourceCompilerTool"
1213+ PreprocessorDefinitions="NDEBUG"
1214+ Culture="1033"
1215+ />
1216+ <Tool
1217+ Name="VCPreLinkEventTool"
1218+ />
1219+ <Tool
1220+ Name="VCLibrarianTool"
1221+ OutputFile=".\Release\corelib.lib"
1222+ SuppressStartupBanner="true"
1223+ />
1224+ <Tool
1225+ Name="VCALinkTool"
1226+ />
1227+ <Tool
1228+ Name="VCXDCMakeTool"
1229+ />
1230+ <Tool
1231+ Name="VCBscMakeTool"
1232+ SuppressStartupBanner="true"
1233+ OutputFile=".\Release/corelib.bsc"
1234+ />
1235+ <Tool
1236+ Name="VCFxCopTool"
1237+ />
1238+ <Tool
1239+ Name="VCCodeSignTool"
1240+ />
1241+ <Tool
1242+ Name="VCPostBuildEventTool"
1243+ />
1244+ <DeploymentTool
1245+ ForceDirty="-1"
1246+ RemoteDirectory=""
1247+ RegisterOutput="0"
1248+ AdditionalFiles=""
1249+ />
1250+ <DebuggerTool
1251+ />
1252+ </Configuration>
1253+ </Configurations>
1254+ <References>
1255+ </References>
1256+ <Files>
1257+ <Filter
1258+ Name="Core Source"
1259+ >
1260+ <File
1261+ RelativePath="..\..\common\channel.cpp"
1262+ >
1263+ <FileConfiguration
1264+ Name="Private Release|Win32"
1265+ >
1266+ <Tool
1267+ Name="VCCLCompilerTool"
1268+ AdditionalIncludeDirectories=""
1269+ PreprocessorDefinitions=""
1270+ />
1271+ </FileConfiguration>
1272+ <FileConfiguration
1273+ Name="Private Release|x64"
1274+ >
1275+ <Tool
1276+ Name="VCCLCompilerTool"
1277+ AdditionalIncludeDirectories=""
1278+ PreprocessorDefinitions=""
1279+ />
1280+ </FileConfiguration>
1281+ <FileConfiguration
1282+ Name="Private Release|Pocket PC 2003 (ARMV4)"
1283+ >
1284+ <Tool
1285+ Name="VCCLCompilerTool"
1286+ AdditionalIncludeDirectories=""
1287+ PreprocessorDefinitions=""
1288+ />
1289+ </FileConfiguration>
1290+ <FileConfiguration
1291+ Name="Debug|Win32"
1292+ >
1293+ <Tool
1294+ Name="VCCLCompilerTool"
1295+ AdditionalIncludeDirectories=""
1296+ PreprocessorDefinitions=""
1297+ />
1298+ </FileConfiguration>
1299+ <FileConfiguration
1300+ Name="Debug|x64"
1301+ >
1302+ <Tool
1303+ Name="VCCLCompilerTool"
1304+ AdditionalIncludeDirectories=""
1305+ PreprocessorDefinitions=""
1306+ />
1307+ </FileConfiguration>
1308+ <FileConfiguration
1309+ Name="Debug|Pocket PC 2003 (ARMV4)"
1310+ >
1311+ <Tool
1312+ Name="VCCLCompilerTool"
1313+ AdditionalIncludeDirectories=""
1314+ PreprocessorDefinitions=""
1315+ />
1316+ </FileConfiguration>
1317+ <FileConfiguration
1318+ Name="Release|Win32"
1319+ >
1320+ <Tool
1321+ Name="VCCLCompilerTool"
1322+ AdditionalIncludeDirectories=""
1323+ PreprocessorDefinitions=""
1324+ />
1325+ </FileConfiguration>
1326+ <FileConfiguration
1327+ Name="Release|x64"
1328+ >
1329+ <Tool
1330+ Name="VCCLCompilerTool"
1331+ AdditionalIncludeDirectories=""
1332+ PreprocessorDefinitions=""
1333+ />
1334+ </FileConfiguration>
1335+ <FileConfiguration
1336+ Name="Release|Pocket PC 2003 (ARMV4)"
1337+ >
1338+ <Tool
1339+ Name="VCCLCompilerTool"
1340+ AdditionalIncludeDirectories=""
1341+ PreprocessorDefinitions=""
1342+ />
1343+ </FileConfiguration>
1344+ <FileConfiguration
1345+ Name="Private Debug|Win32"
1346+ >
1347+ <Tool
1348+ Name="VCCLCompilerTool"
1349+ AdditionalIncludeDirectories=""
1350+ PreprocessorDefinitions=""
1351+ />
1352+ </FileConfiguration>
1353+ <FileConfiguration
1354+ Name="Private Debug|x64"
1355+ >
1356+ <Tool
1357+ Name="VCCLCompilerTool"
1358+ AdditionalIncludeDirectories=""
1359+ PreprocessorDefinitions=""
1360+ />
1361+ </FileConfiguration>
1362+ <FileConfiguration
1363+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
1364+ >
1365+ <Tool
1366+ Name="VCCLCompilerTool"
1367+ AdditionalIncludeDirectories=""
1368+ PreprocessorDefinitions=""
1369+ />
1370+ </FileConfiguration>
1371+ <FileConfiguration
1372+ Name="Release(SSE2)|Win32"
1373+ >
1374+ <Tool
1375+ Name="VCCLCompilerTool"
1376+ AdditionalIncludeDirectories=""
1377+ PreprocessorDefinitions=""
1378+ />
1379+ </FileConfiguration>
1380+ <FileConfiguration
1381+ Name="Release(SSE2)|x64"
1382+ >
1383+ <Tool
1384+ Name="VCCLCompilerTool"
1385+ AdditionalIncludeDirectories=""
1386+ PreprocessorDefinitions=""
1387+ />
1388+ </FileConfiguration>
1389+ <FileConfiguration
1390+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
1391+ >
1392+ <Tool
1393+ Name="VCCLCompilerTool"
1394+ AdditionalIncludeDirectories=""
1395+ PreprocessorDefinitions=""
1396+ />
1397+ </FileConfiguration>
1398+ </File>
1399+ <File
1400+ RelativePath="..\..\common\gnutella.cpp"
1401+ >
1402+ <FileConfiguration
1403+ Name="Private Release|Win32"
1404+ >
1405+ <Tool
1406+ Name="VCCLCompilerTool"
1407+ AdditionalIncludeDirectories=""
1408+ PreprocessorDefinitions=""
1409+ />
1410+ </FileConfiguration>
1411+ <FileConfiguration
1412+ Name="Private Release|x64"
1413+ >
1414+ <Tool
1415+ Name="VCCLCompilerTool"
1416+ AdditionalIncludeDirectories=""
1417+ PreprocessorDefinitions=""
1418+ />
1419+ </FileConfiguration>
1420+ <FileConfiguration
1421+ Name="Private Release|Pocket PC 2003 (ARMV4)"
1422+ >
1423+ <Tool
1424+ Name="VCCLCompilerTool"
1425+ AdditionalIncludeDirectories=""
1426+ PreprocessorDefinitions=""
1427+ />
1428+ </FileConfiguration>
1429+ <FileConfiguration
1430+ Name="Debug|Win32"
1431+ >
1432+ <Tool
1433+ Name="VCCLCompilerTool"
1434+ AdditionalIncludeDirectories=""
1435+ PreprocessorDefinitions=""
1436+ />
1437+ </FileConfiguration>
1438+ <FileConfiguration
1439+ Name="Debug|x64"
1440+ >
1441+ <Tool
1442+ Name="VCCLCompilerTool"
1443+ AdditionalIncludeDirectories=""
1444+ PreprocessorDefinitions=""
1445+ />
1446+ </FileConfiguration>
1447+ <FileConfiguration
1448+ Name="Debug|Pocket PC 2003 (ARMV4)"
1449+ >
1450+ <Tool
1451+ Name="VCCLCompilerTool"
1452+ AdditionalIncludeDirectories=""
1453+ PreprocessorDefinitions=""
1454+ />
1455+ </FileConfiguration>
1456+ <FileConfiguration
1457+ Name="Release|Win32"
1458+ >
1459+ <Tool
1460+ Name="VCCLCompilerTool"
1461+ AdditionalIncludeDirectories=""
1462+ PreprocessorDefinitions=""
1463+ />
1464+ </FileConfiguration>
1465+ <FileConfiguration
1466+ Name="Release|x64"
1467+ >
1468+ <Tool
1469+ Name="VCCLCompilerTool"
1470+ AdditionalIncludeDirectories=""
1471+ PreprocessorDefinitions=""
1472+ />
1473+ </FileConfiguration>
1474+ <FileConfiguration
1475+ Name="Release|Pocket PC 2003 (ARMV4)"
1476+ >
1477+ <Tool
1478+ Name="VCCLCompilerTool"
1479+ AdditionalIncludeDirectories=""
1480+ PreprocessorDefinitions=""
1481+ />
1482+ </FileConfiguration>
1483+ <FileConfiguration
1484+ Name="Private Debug|Win32"
1485+ >
1486+ <Tool
1487+ Name="VCCLCompilerTool"
1488+ AdditionalIncludeDirectories=""
1489+ PreprocessorDefinitions=""
1490+ />
1491+ </FileConfiguration>
1492+ <FileConfiguration
1493+ Name="Private Debug|x64"
1494+ >
1495+ <Tool
1496+ Name="VCCLCompilerTool"
1497+ AdditionalIncludeDirectories=""
1498+ PreprocessorDefinitions=""
1499+ />
1500+ </FileConfiguration>
1501+ <FileConfiguration
1502+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
1503+ >
1504+ <Tool
1505+ Name="VCCLCompilerTool"
1506+ AdditionalIncludeDirectories=""
1507+ PreprocessorDefinitions=""
1508+ />
1509+ </FileConfiguration>
1510+ <FileConfiguration
1511+ Name="Release(SSE2)|Win32"
1512+ >
1513+ <Tool
1514+ Name="VCCLCompilerTool"
1515+ AdditionalIncludeDirectories=""
1516+ PreprocessorDefinitions=""
1517+ />
1518+ </FileConfiguration>
1519+ <FileConfiguration
1520+ Name="Release(SSE2)|x64"
1521+ >
1522+ <Tool
1523+ Name="VCCLCompilerTool"
1524+ AdditionalIncludeDirectories=""
1525+ PreprocessorDefinitions=""
1526+ />
1527+ </FileConfiguration>
1528+ <FileConfiguration
1529+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
1530+ >
1531+ <Tool
1532+ Name="VCCLCompilerTool"
1533+ AdditionalIncludeDirectories=""
1534+ PreprocessorDefinitions=""
1535+ />
1536+ </FileConfiguration>
1537+ </File>
1538+ <File
1539+ RelativePath="..\..\common\html.cpp"
1540+ >
1541+ <FileConfiguration
1542+ Name="Private Release|Win32"
1543+ >
1544+ <Tool
1545+ Name="VCCLCompilerTool"
1546+ AdditionalIncludeDirectories=""
1547+ PreprocessorDefinitions=""
1548+ />
1549+ </FileConfiguration>
1550+ <FileConfiguration
1551+ Name="Private Release|x64"
1552+ >
1553+ <Tool
1554+ Name="VCCLCompilerTool"
1555+ AdditionalIncludeDirectories=""
1556+ PreprocessorDefinitions=""
1557+ />
1558+ </FileConfiguration>
1559+ <FileConfiguration
1560+ Name="Private Release|Pocket PC 2003 (ARMV4)"
1561+ >
1562+ <Tool
1563+ Name="VCCLCompilerTool"
1564+ AdditionalIncludeDirectories=""
1565+ PreprocessorDefinitions=""
1566+ />
1567+ </FileConfiguration>
1568+ <FileConfiguration
1569+ Name="Debug|Win32"
1570+ >
1571+ <Tool
1572+ Name="VCCLCompilerTool"
1573+ AdditionalIncludeDirectories=""
1574+ PreprocessorDefinitions=""
1575+ />
1576+ </FileConfiguration>
1577+ <FileConfiguration
1578+ Name="Debug|x64"
1579+ >
1580+ <Tool
1581+ Name="VCCLCompilerTool"
1582+ AdditionalIncludeDirectories=""
1583+ PreprocessorDefinitions=""
1584+ />
1585+ </FileConfiguration>
1586+ <FileConfiguration
1587+ Name="Debug|Pocket PC 2003 (ARMV4)"
1588+ >
1589+ <Tool
1590+ Name="VCCLCompilerTool"
1591+ AdditionalIncludeDirectories=""
1592+ PreprocessorDefinitions=""
1593+ />
1594+ </FileConfiguration>
1595+ <FileConfiguration
1596+ Name="Release|Win32"
1597+ >
1598+ <Tool
1599+ Name="VCCLCompilerTool"
1600+ AdditionalIncludeDirectories=""
1601+ PreprocessorDefinitions=""
1602+ />
1603+ </FileConfiguration>
1604+ <FileConfiguration
1605+ Name="Release|x64"
1606+ >
1607+ <Tool
1608+ Name="VCCLCompilerTool"
1609+ AdditionalIncludeDirectories=""
1610+ PreprocessorDefinitions=""
1611+ />
1612+ </FileConfiguration>
1613+ <FileConfiguration
1614+ Name="Release|Pocket PC 2003 (ARMV4)"
1615+ >
1616+ <Tool
1617+ Name="VCCLCompilerTool"
1618+ AdditionalIncludeDirectories=""
1619+ PreprocessorDefinitions=""
1620+ />
1621+ </FileConfiguration>
1622+ <FileConfiguration
1623+ Name="Private Debug|Win32"
1624+ >
1625+ <Tool
1626+ Name="VCCLCompilerTool"
1627+ AdditionalIncludeDirectories=""
1628+ PreprocessorDefinitions=""
1629+ />
1630+ </FileConfiguration>
1631+ <FileConfiguration
1632+ Name="Private Debug|x64"
1633+ >
1634+ <Tool
1635+ Name="VCCLCompilerTool"
1636+ AdditionalIncludeDirectories=""
1637+ PreprocessorDefinitions=""
1638+ />
1639+ </FileConfiguration>
1640+ <FileConfiguration
1641+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
1642+ >
1643+ <Tool
1644+ Name="VCCLCompilerTool"
1645+ AdditionalIncludeDirectories=""
1646+ PreprocessorDefinitions=""
1647+ />
1648+ </FileConfiguration>
1649+ <FileConfiguration
1650+ Name="Release(SSE2)|Win32"
1651+ >
1652+ <Tool
1653+ Name="VCCLCompilerTool"
1654+ AdditionalIncludeDirectories=""
1655+ PreprocessorDefinitions=""
1656+ />
1657+ </FileConfiguration>
1658+ <FileConfiguration
1659+ Name="Release(SSE2)|x64"
1660+ >
1661+ <Tool
1662+ Name="VCCLCompilerTool"
1663+ AdditionalIncludeDirectories=""
1664+ PreprocessorDefinitions=""
1665+ />
1666+ </FileConfiguration>
1667+ <FileConfiguration
1668+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
1669+ >
1670+ <Tool
1671+ Name="VCCLCompilerTool"
1672+ AdditionalIncludeDirectories=""
1673+ PreprocessorDefinitions=""
1674+ />
1675+ </FileConfiguration>
1676+ </File>
1677+ <File
1678+ RelativePath="..\..\common\http.cpp"
1679+ >
1680+ <FileConfiguration
1681+ Name="Private Release|Win32"
1682+ >
1683+ <Tool
1684+ Name="VCCLCompilerTool"
1685+ AdditionalIncludeDirectories=""
1686+ PreprocessorDefinitions=""
1687+ />
1688+ </FileConfiguration>
1689+ <FileConfiguration
1690+ Name="Private Release|x64"
1691+ >
1692+ <Tool
1693+ Name="VCCLCompilerTool"
1694+ AdditionalIncludeDirectories=""
1695+ PreprocessorDefinitions=""
1696+ />
1697+ </FileConfiguration>
1698+ <FileConfiguration
1699+ Name="Private Release|Pocket PC 2003 (ARMV4)"
1700+ >
1701+ <Tool
1702+ Name="VCCLCompilerTool"
1703+ AdditionalIncludeDirectories=""
1704+ PreprocessorDefinitions=""
1705+ />
1706+ </FileConfiguration>
1707+ <FileConfiguration
1708+ Name="Debug|Win32"
1709+ >
1710+ <Tool
1711+ Name="VCCLCompilerTool"
1712+ AdditionalIncludeDirectories=""
1713+ PreprocessorDefinitions=""
1714+ />
1715+ </FileConfiguration>
1716+ <FileConfiguration
1717+ Name="Debug|x64"
1718+ >
1719+ <Tool
1720+ Name="VCCLCompilerTool"
1721+ AdditionalIncludeDirectories=""
1722+ PreprocessorDefinitions=""
1723+ />
1724+ </FileConfiguration>
1725+ <FileConfiguration
1726+ Name="Debug|Pocket PC 2003 (ARMV4)"
1727+ >
1728+ <Tool
1729+ Name="VCCLCompilerTool"
1730+ AdditionalIncludeDirectories=""
1731+ PreprocessorDefinitions=""
1732+ />
1733+ </FileConfiguration>
1734+ <FileConfiguration
1735+ Name="Release|Win32"
1736+ >
1737+ <Tool
1738+ Name="VCCLCompilerTool"
1739+ AdditionalIncludeDirectories=""
1740+ PreprocessorDefinitions=""
1741+ />
1742+ </FileConfiguration>
1743+ <FileConfiguration
1744+ Name="Release|x64"
1745+ >
1746+ <Tool
1747+ Name="VCCLCompilerTool"
1748+ AdditionalIncludeDirectories=""
1749+ PreprocessorDefinitions=""
1750+ />
1751+ </FileConfiguration>
1752+ <FileConfiguration
1753+ Name="Release|Pocket PC 2003 (ARMV4)"
1754+ >
1755+ <Tool
1756+ Name="VCCLCompilerTool"
1757+ AdditionalIncludeDirectories=""
1758+ PreprocessorDefinitions=""
1759+ />
1760+ </FileConfiguration>
1761+ <FileConfiguration
1762+ Name="Private Debug|Win32"
1763+ >
1764+ <Tool
1765+ Name="VCCLCompilerTool"
1766+ AdditionalIncludeDirectories=""
1767+ PreprocessorDefinitions=""
1768+ />
1769+ </FileConfiguration>
1770+ <FileConfiguration
1771+ Name="Private Debug|x64"
1772+ >
1773+ <Tool
1774+ Name="VCCLCompilerTool"
1775+ AdditionalIncludeDirectories=""
1776+ PreprocessorDefinitions=""
1777+ />
1778+ </FileConfiguration>
1779+ <FileConfiguration
1780+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
1781+ >
1782+ <Tool
1783+ Name="VCCLCompilerTool"
1784+ AdditionalIncludeDirectories=""
1785+ PreprocessorDefinitions=""
1786+ />
1787+ </FileConfiguration>
1788+ <FileConfiguration
1789+ Name="Release(SSE2)|Win32"
1790+ >
1791+ <Tool
1792+ Name="VCCLCompilerTool"
1793+ AdditionalIncludeDirectories=""
1794+ PreprocessorDefinitions=""
1795+ />
1796+ </FileConfiguration>
1797+ <FileConfiguration
1798+ Name="Release(SSE2)|x64"
1799+ >
1800+ <Tool
1801+ Name="VCCLCompilerTool"
1802+ AdditionalIncludeDirectories=""
1803+ PreprocessorDefinitions=""
1804+ />
1805+ </FileConfiguration>
1806+ <FileConfiguration
1807+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
1808+ >
1809+ <Tool
1810+ Name="VCCLCompilerTool"
1811+ AdditionalIncludeDirectories=""
1812+ PreprocessorDefinitions=""
1813+ />
1814+ </FileConfiguration>
1815+ </File>
1816+ <File
1817+ RelativePath="..\..\common\icy.cpp"
1818+ >
1819+ <FileConfiguration
1820+ Name="Private Release|Win32"
1821+ >
1822+ <Tool
1823+ Name="VCCLCompilerTool"
1824+ AdditionalIncludeDirectories=""
1825+ PreprocessorDefinitions=""
1826+ />
1827+ </FileConfiguration>
1828+ <FileConfiguration
1829+ Name="Private Release|x64"
1830+ >
1831+ <Tool
1832+ Name="VCCLCompilerTool"
1833+ AdditionalIncludeDirectories=""
1834+ PreprocessorDefinitions=""
1835+ />
1836+ </FileConfiguration>
1837+ <FileConfiguration
1838+ Name="Private Release|Pocket PC 2003 (ARMV4)"
1839+ >
1840+ <Tool
1841+ Name="VCCLCompilerTool"
1842+ AdditionalIncludeDirectories=""
1843+ PreprocessorDefinitions=""
1844+ />
1845+ </FileConfiguration>
1846+ <FileConfiguration
1847+ Name="Debug|Win32"
1848+ >
1849+ <Tool
1850+ Name="VCCLCompilerTool"
1851+ AdditionalIncludeDirectories=""
1852+ PreprocessorDefinitions=""
1853+ />
1854+ </FileConfiguration>
1855+ <FileConfiguration
1856+ Name="Debug|x64"
1857+ >
1858+ <Tool
1859+ Name="VCCLCompilerTool"
1860+ AdditionalIncludeDirectories=""
1861+ PreprocessorDefinitions=""
1862+ />
1863+ </FileConfiguration>
1864+ <FileConfiguration
1865+ Name="Debug|Pocket PC 2003 (ARMV4)"
1866+ >
1867+ <Tool
1868+ Name="VCCLCompilerTool"
1869+ AdditionalIncludeDirectories=""
1870+ PreprocessorDefinitions=""
1871+ />
1872+ </FileConfiguration>
1873+ <FileConfiguration
1874+ Name="Release|Win32"
1875+ >
1876+ <Tool
1877+ Name="VCCLCompilerTool"
1878+ AdditionalIncludeDirectories=""
1879+ PreprocessorDefinitions=""
1880+ />
1881+ </FileConfiguration>
1882+ <FileConfiguration
1883+ Name="Release|x64"
1884+ >
1885+ <Tool
1886+ Name="VCCLCompilerTool"
1887+ AdditionalIncludeDirectories=""
1888+ PreprocessorDefinitions=""
1889+ />
1890+ </FileConfiguration>
1891+ <FileConfiguration
1892+ Name="Release|Pocket PC 2003 (ARMV4)"
1893+ >
1894+ <Tool
1895+ Name="VCCLCompilerTool"
1896+ AdditionalIncludeDirectories=""
1897+ PreprocessorDefinitions=""
1898+ />
1899+ </FileConfiguration>
1900+ <FileConfiguration
1901+ Name="Private Debug|Win32"
1902+ >
1903+ <Tool
1904+ Name="VCCLCompilerTool"
1905+ AdditionalIncludeDirectories=""
1906+ PreprocessorDefinitions=""
1907+ />
1908+ </FileConfiguration>
1909+ <FileConfiguration
1910+ Name="Private Debug|x64"
1911+ >
1912+ <Tool
1913+ Name="VCCLCompilerTool"
1914+ AdditionalIncludeDirectories=""
1915+ PreprocessorDefinitions=""
1916+ />
1917+ </FileConfiguration>
1918+ <FileConfiguration
1919+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
1920+ >
1921+ <Tool
1922+ Name="VCCLCompilerTool"
1923+ AdditionalIncludeDirectories=""
1924+ PreprocessorDefinitions=""
1925+ />
1926+ </FileConfiguration>
1927+ <FileConfiguration
1928+ Name="Release(SSE2)|Win32"
1929+ >
1930+ <Tool
1931+ Name="VCCLCompilerTool"
1932+ AdditionalIncludeDirectories=""
1933+ PreprocessorDefinitions=""
1934+ />
1935+ </FileConfiguration>
1936+ <FileConfiguration
1937+ Name="Release(SSE2)|x64"
1938+ >
1939+ <Tool
1940+ Name="VCCLCompilerTool"
1941+ AdditionalIncludeDirectories=""
1942+ PreprocessorDefinitions=""
1943+ />
1944+ </FileConfiguration>
1945+ <FileConfiguration
1946+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
1947+ >
1948+ <Tool
1949+ Name="VCCLCompilerTool"
1950+ AdditionalIncludeDirectories=""
1951+ PreprocessorDefinitions=""
1952+ />
1953+ </FileConfiguration>
1954+ </File>
1955+ <File
1956+ RelativePath="..\..\common\inifile.cpp"
1957+ >
1958+ <FileConfiguration
1959+ Name="Private Release|Win32"
1960+ >
1961+ <Tool
1962+ Name="VCCLCompilerTool"
1963+ AdditionalIncludeDirectories=""
1964+ PreprocessorDefinitions=""
1965+ />
1966+ </FileConfiguration>
1967+ <FileConfiguration
1968+ Name="Private Release|x64"
1969+ >
1970+ <Tool
1971+ Name="VCCLCompilerTool"
1972+ AdditionalIncludeDirectories=""
1973+ PreprocessorDefinitions=""
1974+ />
1975+ </FileConfiguration>
1976+ <FileConfiguration
1977+ Name="Private Release|Pocket PC 2003 (ARMV4)"
1978+ >
1979+ <Tool
1980+ Name="VCCLCompilerTool"
1981+ AdditionalIncludeDirectories=""
1982+ PreprocessorDefinitions=""
1983+ />
1984+ </FileConfiguration>
1985+ <FileConfiguration
1986+ Name="Debug|Win32"
1987+ >
1988+ <Tool
1989+ Name="VCCLCompilerTool"
1990+ AdditionalIncludeDirectories=""
1991+ PreprocessorDefinitions=""
1992+ />
1993+ </FileConfiguration>
1994+ <FileConfiguration
1995+ Name="Debug|x64"
1996+ >
1997+ <Tool
1998+ Name="VCCLCompilerTool"
1999+ AdditionalIncludeDirectories=""
2000+ PreprocessorDefinitions=""
2001+ />
2002+ </FileConfiguration>
2003+ <FileConfiguration
2004+ Name="Debug|Pocket PC 2003 (ARMV4)"
2005+ >
2006+ <Tool
2007+ Name="VCCLCompilerTool"
2008+ AdditionalIncludeDirectories=""
2009+ PreprocessorDefinitions=""
2010+ />
2011+ </FileConfiguration>
2012+ <FileConfiguration
2013+ Name="Release|Win32"
2014+ >
2015+ <Tool
2016+ Name="VCCLCompilerTool"
2017+ AdditionalIncludeDirectories=""
2018+ PreprocessorDefinitions=""
2019+ />
2020+ </FileConfiguration>
2021+ <FileConfiguration
2022+ Name="Release|x64"
2023+ >
2024+ <Tool
2025+ Name="VCCLCompilerTool"
2026+ AdditionalIncludeDirectories=""
2027+ PreprocessorDefinitions=""
2028+ />
2029+ </FileConfiguration>
2030+ <FileConfiguration
2031+ Name="Release|Pocket PC 2003 (ARMV4)"
2032+ >
2033+ <Tool
2034+ Name="VCCLCompilerTool"
2035+ AdditionalIncludeDirectories=""
2036+ PreprocessorDefinitions=""
2037+ />
2038+ </FileConfiguration>
2039+ <FileConfiguration
2040+ Name="Private Debug|Win32"
2041+ >
2042+ <Tool
2043+ Name="VCCLCompilerTool"
2044+ AdditionalIncludeDirectories=""
2045+ PreprocessorDefinitions=""
2046+ />
2047+ </FileConfiguration>
2048+ <FileConfiguration
2049+ Name="Private Debug|x64"
2050+ >
2051+ <Tool
2052+ Name="VCCLCompilerTool"
2053+ AdditionalIncludeDirectories=""
2054+ PreprocessorDefinitions=""
2055+ />
2056+ </FileConfiguration>
2057+ <FileConfiguration
2058+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
2059+ >
2060+ <Tool
2061+ Name="VCCLCompilerTool"
2062+ AdditionalIncludeDirectories=""
2063+ PreprocessorDefinitions=""
2064+ />
2065+ </FileConfiguration>
2066+ <FileConfiguration
2067+ Name="Release(SSE2)|Win32"
2068+ >
2069+ <Tool
2070+ Name="VCCLCompilerTool"
2071+ AdditionalIncludeDirectories=""
2072+ PreprocessorDefinitions=""
2073+ />
2074+ </FileConfiguration>
2075+ <FileConfiguration
2076+ Name="Release(SSE2)|x64"
2077+ >
2078+ <Tool
2079+ Name="VCCLCompilerTool"
2080+ AdditionalIncludeDirectories=""
2081+ PreprocessorDefinitions=""
2082+ />
2083+ </FileConfiguration>
2084+ <FileConfiguration
2085+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
2086+ >
2087+ <Tool
2088+ Name="VCCLCompilerTool"
2089+ AdditionalIncludeDirectories=""
2090+ PreprocessorDefinitions=""
2091+ />
2092+ </FileConfiguration>
2093+ </File>
2094+ <File
2095+ RelativePath="..\..\common\jis.cpp"
2096+ >
2097+ <FileConfiguration
2098+ Name="Private Release|Win32"
2099+ >
2100+ <Tool
2101+ Name="VCCLCompilerTool"
2102+ AdditionalIncludeDirectories=""
2103+ PreprocessorDefinitions=""
2104+ />
2105+ </FileConfiguration>
2106+ <FileConfiguration
2107+ Name="Private Release|x64"
2108+ >
2109+ <Tool
2110+ Name="VCCLCompilerTool"
2111+ AdditionalIncludeDirectories=""
2112+ PreprocessorDefinitions=""
2113+ />
2114+ </FileConfiguration>
2115+ <FileConfiguration
2116+ Name="Private Release|Pocket PC 2003 (ARMV4)"
2117+ >
2118+ <Tool
2119+ Name="VCCLCompilerTool"
2120+ AdditionalIncludeDirectories=""
2121+ PreprocessorDefinitions=""
2122+ />
2123+ </FileConfiguration>
2124+ <FileConfiguration
2125+ Name="Debug|Win32"
2126+ >
2127+ <Tool
2128+ Name="VCCLCompilerTool"
2129+ AdditionalIncludeDirectories=""
2130+ PreprocessorDefinitions=""
2131+ />
2132+ </FileConfiguration>
2133+ <FileConfiguration
2134+ Name="Debug|x64"
2135+ >
2136+ <Tool
2137+ Name="VCCLCompilerTool"
2138+ AdditionalIncludeDirectories=""
2139+ PreprocessorDefinitions=""
2140+ />
2141+ </FileConfiguration>
2142+ <FileConfiguration
2143+ Name="Debug|Pocket PC 2003 (ARMV4)"
2144+ >
2145+ <Tool
2146+ Name="VCCLCompilerTool"
2147+ AdditionalIncludeDirectories=""
2148+ PreprocessorDefinitions=""
2149+ />
2150+ </FileConfiguration>
2151+ <FileConfiguration
2152+ Name="Release|Win32"
2153+ >
2154+ <Tool
2155+ Name="VCCLCompilerTool"
2156+ AdditionalIncludeDirectories=""
2157+ PreprocessorDefinitions=""
2158+ />
2159+ </FileConfiguration>
2160+ <FileConfiguration
2161+ Name="Release|x64"
2162+ >
2163+ <Tool
2164+ Name="VCCLCompilerTool"
2165+ AdditionalIncludeDirectories=""
2166+ PreprocessorDefinitions=""
2167+ />
2168+ </FileConfiguration>
2169+ <FileConfiguration
2170+ Name="Release|Pocket PC 2003 (ARMV4)"
2171+ >
2172+ <Tool
2173+ Name="VCCLCompilerTool"
2174+ AdditionalIncludeDirectories=""
2175+ PreprocessorDefinitions=""
2176+ />
2177+ </FileConfiguration>
2178+ <FileConfiguration
2179+ Name="Private Debug|Win32"
2180+ >
2181+ <Tool
2182+ Name="VCCLCompilerTool"
2183+ AdditionalIncludeDirectories=""
2184+ PreprocessorDefinitions=""
2185+ />
2186+ </FileConfiguration>
2187+ <FileConfiguration
2188+ Name="Private Debug|x64"
2189+ >
2190+ <Tool
2191+ Name="VCCLCompilerTool"
2192+ AdditionalIncludeDirectories=""
2193+ PreprocessorDefinitions=""
2194+ />
2195+ </FileConfiguration>
2196+ <FileConfiguration
2197+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
2198+ >
2199+ <Tool
2200+ Name="VCCLCompilerTool"
2201+ AdditionalIncludeDirectories=""
2202+ PreprocessorDefinitions=""
2203+ />
2204+ </FileConfiguration>
2205+ <FileConfiguration
2206+ Name="Release(SSE2)|Win32"
2207+ >
2208+ <Tool
2209+ Name="VCCLCompilerTool"
2210+ AdditionalIncludeDirectories=""
2211+ PreprocessorDefinitions=""
2212+ />
2213+ </FileConfiguration>
2214+ <FileConfiguration
2215+ Name="Release(SSE2)|x64"
2216+ >
2217+ <Tool
2218+ Name="VCCLCompilerTool"
2219+ AdditionalIncludeDirectories=""
2220+ PreprocessorDefinitions=""
2221+ />
2222+ </FileConfiguration>
2223+ <FileConfiguration
2224+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
2225+ >
2226+ <Tool
2227+ Name="VCCLCompilerTool"
2228+ AdditionalIncludeDirectories=""
2229+ PreprocessorDefinitions=""
2230+ />
2231+ </FileConfiguration>
2232+ </File>
2233+ <File
2234+ RelativePath="..\..\common\mms.cpp"
2235+ >
2236+ <FileConfiguration
2237+ Name="Private Release|Win32"
2238+ >
2239+ <Tool
2240+ Name="VCCLCompilerTool"
2241+ AdditionalIncludeDirectories=""
2242+ PreprocessorDefinitions=""
2243+ />
2244+ </FileConfiguration>
2245+ <FileConfiguration
2246+ Name="Private Release|x64"
2247+ >
2248+ <Tool
2249+ Name="VCCLCompilerTool"
2250+ AdditionalIncludeDirectories=""
2251+ PreprocessorDefinitions=""
2252+ />
2253+ </FileConfiguration>
2254+ <FileConfiguration
2255+ Name="Private Release|Pocket PC 2003 (ARMV4)"
2256+ >
2257+ <Tool
2258+ Name="VCCLCompilerTool"
2259+ AdditionalIncludeDirectories=""
2260+ PreprocessorDefinitions=""
2261+ />
2262+ </FileConfiguration>
2263+ <FileConfiguration
2264+ Name="Debug|Win32"
2265+ >
2266+ <Tool
2267+ Name="VCCLCompilerTool"
2268+ AdditionalIncludeDirectories=""
2269+ PreprocessorDefinitions=""
2270+ />
2271+ </FileConfiguration>
2272+ <FileConfiguration
2273+ Name="Debug|x64"
2274+ >
2275+ <Tool
2276+ Name="VCCLCompilerTool"
2277+ AdditionalIncludeDirectories=""
2278+ PreprocessorDefinitions=""
2279+ />
2280+ </FileConfiguration>
2281+ <FileConfiguration
2282+ Name="Debug|Pocket PC 2003 (ARMV4)"
2283+ >
2284+ <Tool
2285+ Name="VCCLCompilerTool"
2286+ AdditionalIncludeDirectories=""
2287+ PreprocessorDefinitions=""
2288+ />
2289+ </FileConfiguration>
2290+ <FileConfiguration
2291+ Name="Release|Win32"
2292+ >
2293+ <Tool
2294+ Name="VCCLCompilerTool"
2295+ AdditionalIncludeDirectories=""
2296+ PreprocessorDefinitions=""
2297+ />
2298+ </FileConfiguration>
2299+ <FileConfiguration
2300+ Name="Release|x64"
2301+ >
2302+ <Tool
2303+ Name="VCCLCompilerTool"
2304+ AdditionalIncludeDirectories=""
2305+ PreprocessorDefinitions=""
2306+ />
2307+ </FileConfiguration>
2308+ <FileConfiguration
2309+ Name="Release|Pocket PC 2003 (ARMV4)"
2310+ >
2311+ <Tool
2312+ Name="VCCLCompilerTool"
2313+ AdditionalIncludeDirectories=""
2314+ PreprocessorDefinitions=""
2315+ />
2316+ </FileConfiguration>
2317+ <FileConfiguration
2318+ Name="Private Debug|Win32"
2319+ >
2320+ <Tool
2321+ Name="VCCLCompilerTool"
2322+ AdditionalIncludeDirectories=""
2323+ PreprocessorDefinitions=""
2324+ />
2325+ </FileConfiguration>
2326+ <FileConfiguration
2327+ Name="Private Debug|x64"
2328+ >
2329+ <Tool
2330+ Name="VCCLCompilerTool"
2331+ AdditionalIncludeDirectories=""
2332+ PreprocessorDefinitions=""
2333+ />
2334+ </FileConfiguration>
2335+ <FileConfiguration
2336+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
2337+ >
2338+ <Tool
2339+ Name="VCCLCompilerTool"
2340+ AdditionalIncludeDirectories=""
2341+ PreprocessorDefinitions=""
2342+ />
2343+ </FileConfiguration>
2344+ <FileConfiguration
2345+ Name="Release(SSE2)|Win32"
2346+ >
2347+ <Tool
2348+ Name="VCCLCompilerTool"
2349+ AdditionalIncludeDirectories=""
2350+ PreprocessorDefinitions=""
2351+ />
2352+ </FileConfiguration>
2353+ <FileConfiguration
2354+ Name="Release(SSE2)|x64"
2355+ >
2356+ <Tool
2357+ Name="VCCLCompilerTool"
2358+ AdditionalIncludeDirectories=""
2359+ PreprocessorDefinitions=""
2360+ />
2361+ </FileConfiguration>
2362+ <FileConfiguration
2363+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
2364+ >
2365+ <Tool
2366+ Name="VCCLCompilerTool"
2367+ AdditionalIncludeDirectories=""
2368+ PreprocessorDefinitions=""
2369+ />
2370+ </FileConfiguration>
2371+ </File>
2372+ <File
2373+ RelativePath="..\..\common\mp3.cpp"
2374+ >
2375+ <FileConfiguration
2376+ Name="Private Release|Win32"
2377+ >
2378+ <Tool
2379+ Name="VCCLCompilerTool"
2380+ AdditionalIncludeDirectories=""
2381+ PreprocessorDefinitions=""
2382+ />
2383+ </FileConfiguration>
2384+ <FileConfiguration
2385+ Name="Private Release|x64"
2386+ >
2387+ <Tool
2388+ Name="VCCLCompilerTool"
2389+ AdditionalIncludeDirectories=""
2390+ PreprocessorDefinitions=""
2391+ />
2392+ </FileConfiguration>
2393+ <FileConfiguration
2394+ Name="Private Release|Pocket PC 2003 (ARMV4)"
2395+ >
2396+ <Tool
2397+ Name="VCCLCompilerTool"
2398+ AdditionalIncludeDirectories=""
2399+ PreprocessorDefinitions=""
2400+ />
2401+ </FileConfiguration>
2402+ <FileConfiguration
2403+ Name="Debug|Win32"
2404+ >
2405+ <Tool
2406+ Name="VCCLCompilerTool"
2407+ AdditionalIncludeDirectories=""
2408+ PreprocessorDefinitions=""
2409+ />
2410+ </FileConfiguration>
2411+ <FileConfiguration
2412+ Name="Debug|x64"
2413+ >
2414+ <Tool
2415+ Name="VCCLCompilerTool"
2416+ AdditionalIncludeDirectories=""
2417+ PreprocessorDefinitions=""
2418+ />
2419+ </FileConfiguration>
2420+ <FileConfiguration
2421+ Name="Debug|Pocket PC 2003 (ARMV4)"
2422+ >
2423+ <Tool
2424+ Name="VCCLCompilerTool"
2425+ AdditionalIncludeDirectories=""
2426+ PreprocessorDefinitions=""
2427+ />
2428+ </FileConfiguration>
2429+ <FileConfiguration
2430+ Name="Release|Win32"
2431+ >
2432+ <Tool
2433+ Name="VCCLCompilerTool"
2434+ AdditionalIncludeDirectories=""
2435+ PreprocessorDefinitions=""
2436+ />
2437+ </FileConfiguration>
2438+ <FileConfiguration
2439+ Name="Release|x64"
2440+ >
2441+ <Tool
2442+ Name="VCCLCompilerTool"
2443+ AdditionalIncludeDirectories=""
2444+ PreprocessorDefinitions=""
2445+ />
2446+ </FileConfiguration>
2447+ <FileConfiguration
2448+ Name="Release|Pocket PC 2003 (ARMV4)"
2449+ >
2450+ <Tool
2451+ Name="VCCLCompilerTool"
2452+ AdditionalIncludeDirectories=""
2453+ PreprocessorDefinitions=""
2454+ />
2455+ </FileConfiguration>
2456+ <FileConfiguration
2457+ Name="Private Debug|Win32"
2458+ >
2459+ <Tool
2460+ Name="VCCLCompilerTool"
2461+ AdditionalIncludeDirectories=""
2462+ PreprocessorDefinitions=""
2463+ />
2464+ </FileConfiguration>
2465+ <FileConfiguration
2466+ Name="Private Debug|x64"
2467+ >
2468+ <Tool
2469+ Name="VCCLCompilerTool"
2470+ AdditionalIncludeDirectories=""
2471+ PreprocessorDefinitions=""
2472+ />
2473+ </FileConfiguration>
2474+ <FileConfiguration
2475+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
2476+ >
2477+ <Tool
2478+ Name="VCCLCompilerTool"
2479+ AdditionalIncludeDirectories=""
2480+ PreprocessorDefinitions=""
2481+ />
2482+ </FileConfiguration>
2483+ <FileConfiguration
2484+ Name="Release(SSE2)|Win32"
2485+ >
2486+ <Tool
2487+ Name="VCCLCompilerTool"
2488+ AdditionalIncludeDirectories=""
2489+ PreprocessorDefinitions=""
2490+ />
2491+ </FileConfiguration>
2492+ <FileConfiguration
2493+ Name="Release(SSE2)|x64"
2494+ >
2495+ <Tool
2496+ Name="VCCLCompilerTool"
2497+ AdditionalIncludeDirectories=""
2498+ PreprocessorDefinitions=""
2499+ />
2500+ </FileConfiguration>
2501+ <FileConfiguration
2502+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
2503+ >
2504+ <Tool
2505+ Name="VCCLCompilerTool"
2506+ AdditionalIncludeDirectories=""
2507+ PreprocessorDefinitions=""
2508+ />
2509+ </FileConfiguration>
2510+ </File>
2511+ <File
2512+ RelativePath="..\..\common\nsv.cpp"
2513+ >
2514+ <FileConfiguration
2515+ Name="Private Release|Win32"
2516+ >
2517+ <Tool
2518+ Name="VCCLCompilerTool"
2519+ AdditionalIncludeDirectories=""
2520+ PreprocessorDefinitions=""
2521+ />
2522+ </FileConfiguration>
2523+ <FileConfiguration
2524+ Name="Private Release|x64"
2525+ >
2526+ <Tool
2527+ Name="VCCLCompilerTool"
2528+ AdditionalIncludeDirectories=""
2529+ PreprocessorDefinitions=""
2530+ />
2531+ </FileConfiguration>
2532+ <FileConfiguration
2533+ Name="Private Release|Pocket PC 2003 (ARMV4)"
2534+ >
2535+ <Tool
2536+ Name="VCCLCompilerTool"
2537+ AdditionalIncludeDirectories=""
2538+ PreprocessorDefinitions=""
2539+ />
2540+ </FileConfiguration>
2541+ <FileConfiguration
2542+ Name="Debug|Win32"
2543+ >
2544+ <Tool
2545+ Name="VCCLCompilerTool"
2546+ AdditionalIncludeDirectories=""
2547+ PreprocessorDefinitions=""
2548+ />
2549+ </FileConfiguration>
2550+ <FileConfiguration
2551+ Name="Debug|x64"
2552+ >
2553+ <Tool
2554+ Name="VCCLCompilerTool"
2555+ AdditionalIncludeDirectories=""
2556+ PreprocessorDefinitions=""
2557+ />
2558+ </FileConfiguration>
2559+ <FileConfiguration
2560+ Name="Debug|Pocket PC 2003 (ARMV4)"
2561+ >
2562+ <Tool
2563+ Name="VCCLCompilerTool"
2564+ AdditionalIncludeDirectories=""
2565+ PreprocessorDefinitions=""
2566+ />
2567+ </FileConfiguration>
2568+ <FileConfiguration
2569+ Name="Release|Win32"
2570+ >
2571+ <Tool
2572+ Name="VCCLCompilerTool"
2573+ AdditionalIncludeDirectories=""
2574+ PreprocessorDefinitions=""
2575+ />
2576+ </FileConfiguration>
2577+ <FileConfiguration
2578+ Name="Release|x64"
2579+ >
2580+ <Tool
2581+ Name="VCCLCompilerTool"
2582+ AdditionalIncludeDirectories=""
2583+ PreprocessorDefinitions=""
2584+ />
2585+ </FileConfiguration>
2586+ <FileConfiguration
2587+ Name="Release|Pocket PC 2003 (ARMV4)"
2588+ >
2589+ <Tool
2590+ Name="VCCLCompilerTool"
2591+ AdditionalIncludeDirectories=""
2592+ PreprocessorDefinitions=""
2593+ />
2594+ </FileConfiguration>
2595+ <FileConfiguration
2596+ Name="Private Debug|Win32"
2597+ >
2598+ <Tool
2599+ Name="VCCLCompilerTool"
2600+ AdditionalIncludeDirectories=""
2601+ PreprocessorDefinitions=""
2602+ />
2603+ </FileConfiguration>
2604+ <FileConfiguration
2605+ Name="Private Debug|x64"
2606+ >
2607+ <Tool
2608+ Name="VCCLCompilerTool"
2609+ AdditionalIncludeDirectories=""
2610+ PreprocessorDefinitions=""
2611+ />
2612+ </FileConfiguration>
2613+ <FileConfiguration
2614+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
2615+ >
2616+ <Tool
2617+ Name="VCCLCompilerTool"
2618+ AdditionalIncludeDirectories=""
2619+ PreprocessorDefinitions=""
2620+ />
2621+ </FileConfiguration>
2622+ <FileConfiguration
2623+ Name="Release(SSE2)|Win32"
2624+ >
2625+ <Tool
2626+ Name="VCCLCompilerTool"
2627+ AdditionalIncludeDirectories=""
2628+ PreprocessorDefinitions=""
2629+ />
2630+ </FileConfiguration>
2631+ <FileConfiguration
2632+ Name="Release(SSE2)|x64"
2633+ >
2634+ <Tool
2635+ Name="VCCLCompilerTool"
2636+ AdditionalIncludeDirectories=""
2637+ PreprocessorDefinitions=""
2638+ />
2639+ </FileConfiguration>
2640+ <FileConfiguration
2641+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
2642+ >
2643+ <Tool
2644+ Name="VCCLCompilerTool"
2645+ AdditionalIncludeDirectories=""
2646+ PreprocessorDefinitions=""
2647+ />
2648+ </FileConfiguration>
2649+ </File>
2650+ <File
2651+ RelativePath="..\..\common\ogg.cpp"
2652+ >
2653+ <FileConfiguration
2654+ Name="Private Release|Win32"
2655+ >
2656+ <Tool
2657+ Name="VCCLCompilerTool"
2658+ AdditionalIncludeDirectories=""
2659+ PreprocessorDefinitions=""
2660+ />
2661+ </FileConfiguration>
2662+ <FileConfiguration
2663+ Name="Private Release|x64"
2664+ >
2665+ <Tool
2666+ Name="VCCLCompilerTool"
2667+ AdditionalIncludeDirectories=""
2668+ PreprocessorDefinitions=""
2669+ />
2670+ </FileConfiguration>
2671+ <FileConfiguration
2672+ Name="Private Release|Pocket PC 2003 (ARMV4)"
2673+ >
2674+ <Tool
2675+ Name="VCCLCompilerTool"
2676+ AdditionalIncludeDirectories=""
2677+ PreprocessorDefinitions=""
2678+ />
2679+ </FileConfiguration>
2680+ <FileConfiguration
2681+ Name="Debug|Win32"
2682+ >
2683+ <Tool
2684+ Name="VCCLCompilerTool"
2685+ AdditionalIncludeDirectories=""
2686+ PreprocessorDefinitions=""
2687+ />
2688+ </FileConfiguration>
2689+ <FileConfiguration
2690+ Name="Debug|x64"
2691+ >
2692+ <Tool
2693+ Name="VCCLCompilerTool"
2694+ AdditionalIncludeDirectories=""
2695+ PreprocessorDefinitions=""
2696+ />
2697+ </FileConfiguration>
2698+ <FileConfiguration
2699+ Name="Debug|Pocket PC 2003 (ARMV4)"
2700+ >
2701+ <Tool
2702+ Name="VCCLCompilerTool"
2703+ AdditionalIncludeDirectories=""
2704+ PreprocessorDefinitions=""
2705+ />
2706+ </FileConfiguration>
2707+ <FileConfiguration
2708+ Name="Release|Win32"
2709+ >
2710+ <Tool
2711+ Name="VCCLCompilerTool"
2712+ AdditionalIncludeDirectories=""
2713+ PreprocessorDefinitions=""
2714+ />
2715+ </FileConfiguration>
2716+ <FileConfiguration
2717+ Name="Release|x64"
2718+ >
2719+ <Tool
2720+ Name="VCCLCompilerTool"
2721+ AdditionalIncludeDirectories=""
2722+ PreprocessorDefinitions=""
2723+ />
2724+ </FileConfiguration>
2725+ <FileConfiguration
2726+ Name="Release|Pocket PC 2003 (ARMV4)"
2727+ >
2728+ <Tool
2729+ Name="VCCLCompilerTool"
2730+ AdditionalIncludeDirectories=""
2731+ PreprocessorDefinitions=""
2732+ />
2733+ </FileConfiguration>
2734+ <FileConfiguration
2735+ Name="Private Debug|Win32"
2736+ >
2737+ <Tool
2738+ Name="VCCLCompilerTool"
2739+ AdditionalIncludeDirectories=""
2740+ PreprocessorDefinitions=""
2741+ />
2742+ </FileConfiguration>
2743+ <FileConfiguration
2744+ Name="Private Debug|x64"
2745+ >
2746+ <Tool
2747+ Name="VCCLCompilerTool"
2748+ AdditionalIncludeDirectories=""
2749+ PreprocessorDefinitions=""
2750+ />
2751+ </FileConfiguration>
2752+ <FileConfiguration
2753+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
2754+ >
2755+ <Tool
2756+ Name="VCCLCompilerTool"
2757+ AdditionalIncludeDirectories=""
2758+ PreprocessorDefinitions=""
2759+ />
2760+ </FileConfiguration>
2761+ <FileConfiguration
2762+ Name="Release(SSE2)|Win32"
2763+ >
2764+ <Tool
2765+ Name="VCCLCompilerTool"
2766+ AdditionalIncludeDirectories=""
2767+ PreprocessorDefinitions=""
2768+ />
2769+ </FileConfiguration>
2770+ <FileConfiguration
2771+ Name="Release(SSE2)|x64"
2772+ >
2773+ <Tool
2774+ Name="VCCLCompilerTool"
2775+ AdditionalIncludeDirectories=""
2776+ PreprocessorDefinitions=""
2777+ />
2778+ </FileConfiguration>
6502779 <FileConfiguration
651- Name="Private Release|Win32"
2780+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
6522781 >
6532782 <Tool
6542783 Name="VCCLCompilerTool"
@@ -656,8 +2785,12 @@
6562785 PreprocessorDefinitions=""
6572786 />
6582787 </FileConfiguration>
2788+ </File>
2789+ <File
2790+ RelativePath="..\..\common\pcp.cpp"
2791+ >
6592792 <FileConfiguration
660- Name="Private Release|x64"
2793+ Name="Private Release|Win32"
6612794 >
6622795 <Tool
6632796 Name="VCCLCompilerTool"
@@ -666,7 +2799,7 @@
6662799 />
6672800 </FileConfiguration>
6682801 <FileConfiguration
669- Name="Debug|Win32"
2802+ Name="Private Release|x64"
6702803 >
6712804 <Tool
6722805 Name="VCCLCompilerTool"
@@ -675,7 +2808,7 @@
6752808 />
6762809 </FileConfiguration>
6772810 <FileConfiguration
678- Name="Debug|x64"
2811+ Name="Private Release|Pocket PC 2003 (ARMV4)"
6792812 >
6802813 <Tool
6812814 Name="VCCLCompilerTool"
@@ -684,7 +2817,7 @@
6842817 />
6852818 </FileConfiguration>
6862819 <FileConfiguration
687- Name="Release|Win32"
2820+ Name="Debug|Win32"
6882821 >
6892822 <Tool
6902823 Name="VCCLCompilerTool"
@@ -693,7 +2826,7 @@
6932826 />
6942827 </FileConfiguration>
6952828 <FileConfiguration
696- Name="Release|x64"
2829+ Name="Debug|x64"
6972830 >
6982831 <Tool
6992832 Name="VCCLCompilerTool"
@@ -702,7 +2835,7 @@
7022835 />
7032836 </FileConfiguration>
7042837 <FileConfiguration
705- Name="Private Debug|Win32"
2838+ Name="Debug|Pocket PC 2003 (ARMV4)"
7062839 >
7072840 <Tool
7082841 Name="VCCLCompilerTool"
@@ -711,7 +2844,7 @@
7112844 />
7122845 </FileConfiguration>
7132846 <FileConfiguration
714- Name="Private Debug|x64"
2847+ Name="Release|Win32"
7152848 >
7162849 <Tool
7172850 Name="VCCLCompilerTool"
@@ -719,12 +2852,8 @@
7192852 PreprocessorDefinitions=""
7202853 />
7212854 </FileConfiguration>
722- </File>
723- <File
724- RelativePath="..\..\common\gnutella.cpp"
725- >
7262855 <FileConfiguration
727- Name="Private Release|Win32"
2856+ Name="Release|x64"
7282857 >
7292858 <Tool
7302859 Name="VCCLCompilerTool"
@@ -733,7 +2862,7 @@
7332862 />
7342863 </FileConfiguration>
7352864 <FileConfiguration
736- Name="Private Release|x64"
2865+ Name="Release|Pocket PC 2003 (ARMV4)"
7372866 >
7382867 <Tool
7392868 Name="VCCLCompilerTool"
@@ -742,7 +2871,7 @@
7422871 />
7432872 </FileConfiguration>
7442873 <FileConfiguration
745- Name="Debug|Win32"
2874+ Name="Private Debug|Win32"
7462875 >
7472876 <Tool
7482877 Name="VCCLCompilerTool"
@@ -751,7 +2880,7 @@
7512880 />
7522881 </FileConfiguration>
7532882 <FileConfiguration
754- Name="Debug|x64"
2883+ Name="Private Debug|x64"
7552884 >
7562885 <Tool
7572886 Name="VCCLCompilerTool"
@@ -760,7 +2889,7 @@
7602889 />
7612890 </FileConfiguration>
7622891 <FileConfiguration
763- Name="Release|Win32"
2892+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
7642893 >
7652894 <Tool
7662895 Name="VCCLCompilerTool"
@@ -769,7 +2898,7 @@
7692898 />
7702899 </FileConfiguration>
7712900 <FileConfiguration
772- Name="Release|x64"
2901+ Name="Release(SSE2)|Win32"
7732902 >
7742903 <Tool
7752904 Name="VCCLCompilerTool"
@@ -778,7 +2907,7 @@
7782907 />
7792908 </FileConfiguration>
7802909 <FileConfiguration
781- Name="Private Debug|Win32"
2910+ Name="Release(SSE2)|x64"
7822911 >
7832912 <Tool
7842913 Name="VCCLCompilerTool"
@@ -787,7 +2916,7 @@
7872916 />
7882917 </FileConfiguration>
7892918 <FileConfiguration
790- Name="Private Debug|x64"
2919+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
7912920 >
7922921 <Tool
7932922 Name="VCCLCompilerTool"
@@ -797,7 +2926,7 @@
7972926 </FileConfiguration>
7982927 </File>
7992928 <File
800- RelativePath="..\..\common\html.cpp"
2929+ RelativePath="..\..\common\peercast.cpp"
8012930 >
8022931 <FileConfiguration
8032932 Name="Private Release|Win32"
@@ -818,7 +2947,7 @@
8182947 />
8192948 </FileConfiguration>
8202949 <FileConfiguration
821- Name="Debug|Win32"
2950+ Name="Private Release|Pocket PC 2003 (ARMV4)"
8222951 >
8232952 <Tool
8242953 Name="VCCLCompilerTool"
@@ -827,7 +2956,7 @@
8272956 />
8282957 </FileConfiguration>
8292958 <FileConfiguration
830- Name="Debug|x64"
2959+ Name="Debug|Win32"
8312960 >
8322961 <Tool
8332962 Name="VCCLCompilerTool"
@@ -836,7 +2965,7 @@
8362965 />
8372966 </FileConfiguration>
8382967 <FileConfiguration
839- Name="Release|Win32"
2968+ Name="Debug|x64"
8402969 >
8412970 <Tool
8422971 Name="VCCLCompilerTool"
@@ -845,7 +2974,7 @@
8452974 />
8462975 </FileConfiguration>
8472976 <FileConfiguration
848- Name="Release|x64"
2977+ Name="Debug|Pocket PC 2003 (ARMV4)"
8492978 >
8502979 <Tool
8512980 Name="VCCLCompilerTool"
@@ -854,7 +2983,7 @@
8542983 />
8552984 </FileConfiguration>
8562985 <FileConfiguration
857- Name="Private Debug|Win32"
2986+ Name="Release|Win32"
8582987 >
8592988 <Tool
8602989 Name="VCCLCompilerTool"
@@ -863,7 +2992,7 @@
8632992 />
8642993 </FileConfiguration>
8652994 <FileConfiguration
866- Name="Private Debug|x64"
2995+ Name="Release|x64"
8672996 >
8682997 <Tool
8692998 Name="VCCLCompilerTool"
@@ -871,12 +3000,8 @@
8713000 PreprocessorDefinitions=""
8723001 />
8733002 </FileConfiguration>
874- </File>
875- <File
876- RelativePath="..\..\common\http.cpp"
877- >
8783003 <FileConfiguration
879- Name="Private Release|Win32"
3004+ Name="Release|Pocket PC 2003 (ARMV4)"
8803005 >
8813006 <Tool
8823007 Name="VCCLCompilerTool"
@@ -885,7 +3010,7 @@
8853010 />
8863011 </FileConfiguration>
8873012 <FileConfiguration
888- Name="Private Release|x64"
3013+ Name="Private Debug|Win32"
8893014 >
8903015 <Tool
8913016 Name="VCCLCompilerTool"
@@ -894,7 +3019,7 @@
8943019 />
8953020 </FileConfiguration>
8963021 <FileConfiguration
897- Name="Debug|Win32"
3022+ Name="Private Debug|x64"
8983023 >
8993024 <Tool
9003025 Name="VCCLCompilerTool"
@@ -903,7 +3028,7 @@
9033028 />
9043029 </FileConfiguration>
9053030 <FileConfiguration
906- Name="Debug|x64"
3031+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
9073032 >
9083033 <Tool
9093034 Name="VCCLCompilerTool"
@@ -912,7 +3037,7 @@
9123037 />
9133038 </FileConfiguration>
9143039 <FileConfiguration
915- Name="Release|Win32"
3040+ Name="Release(SSE2)|Win32"
9163041 >
9173042 <Tool
9183043 Name="VCCLCompilerTool"
@@ -921,7 +3046,7 @@
9213046 />
9223047 </FileConfiguration>
9233048 <FileConfiguration
924- Name="Release|x64"
3049+ Name="Release(SSE2)|x64"
9253050 >
9263051 <Tool
9273052 Name="VCCLCompilerTool"
@@ -930,7 +3055,7 @@
9303055 />
9313056 </FileConfiguration>
9323057 <FileConfiguration
933- Name="Private Debug|Win32"
3058+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
9343059 >
9353060 <Tool
9363061 Name="VCCLCompilerTool"
@@ -938,8 +3063,12 @@
9383063 PreprocessorDefinitions=""
9393064 />
9403065 </FileConfiguration>
3066+ </File>
3067+ <File
3068+ RelativePath="..\..\common\rtsp.cpp"
3069+ >
9413070 <FileConfiguration
942- Name="Private Debug|x64"
3071+ Name="Private Release|Win32"
9433072 >
9443073 <Tool
9453074 Name="VCCLCompilerTool"
@@ -947,12 +3076,8 @@
9473076 PreprocessorDefinitions=""
9483077 />
9493078 </FileConfiguration>
950- </File>
951- <File
952- RelativePath="..\..\common\icy.cpp"
953- >
9543079 <FileConfiguration
955- Name="Private Release|Win32"
3080+ Name="Private Release|x64"
9563081 >
9573082 <Tool
9583083 Name="VCCLCompilerTool"
@@ -961,7 +3086,7 @@
9613086 />
9623087 </FileConfiguration>
9633088 <FileConfiguration
964- Name="Private Release|x64"
3089+ Name="Private Release|Pocket PC 2003 (ARMV4)"
9653090 >
9663091 <Tool
9673092 Name="VCCLCompilerTool"
@@ -988,7 +3113,7 @@
9883113 />
9893114 </FileConfiguration>
9903115 <FileConfiguration
991- Name="Release|Win32"
3116+ Name="Debug|Pocket PC 2003 (ARMV4)"
9923117 >
9933118 <Tool
9943119 Name="VCCLCompilerTool"
@@ -997,7 +3122,7 @@
9973122 />
9983123 </FileConfiguration>
9993124 <FileConfiguration
1000- Name="Release|x64"
3125+ Name="Release|Win32"
10013126 >
10023127 <Tool
10033128 Name="VCCLCompilerTool"
@@ -1006,7 +3131,7 @@
10063131 />
10073132 </FileConfiguration>
10083133 <FileConfiguration
1009- Name="Private Debug|Win32"
3134+ Name="Release|x64"
10103135 >
10113136 <Tool
10123137 Name="VCCLCompilerTool"
@@ -1015,7 +3140,7 @@
10153140 />
10163141 </FileConfiguration>
10173142 <FileConfiguration
1018- Name="Private Debug|x64"
3143+ Name="Release|Pocket PC 2003 (ARMV4)"
10193144 >
10203145 <Tool
10213146 Name="VCCLCompilerTool"
@@ -1023,12 +3148,8 @@
10233148 PreprocessorDefinitions=""
10243149 />
10253150 </FileConfiguration>
1026- </File>
1027- <File
1028- RelativePath="..\..\common\inifile.cpp"
1029- >
10303151 <FileConfiguration
1031- Name="Private Release|Win32"
3152+ Name="Private Debug|Win32"
10323153 >
10333154 <Tool
10343155 Name="VCCLCompilerTool"
@@ -1037,7 +3158,7 @@
10373158 />
10383159 </FileConfiguration>
10393160 <FileConfiguration
1040- Name="Private Release|x64"
3161+ Name="Private Debug|x64"
10413162 >
10423163 <Tool
10433164 Name="VCCLCompilerTool"
@@ -1046,7 +3167,7 @@
10463167 />
10473168 </FileConfiguration>
10483169 <FileConfiguration
1049- Name="Debug|Win32"
3170+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
10503171 >
10513172 <Tool
10523173 Name="VCCLCompilerTool"
@@ -1055,7 +3176,7 @@
10553176 />
10563177 </FileConfiguration>
10573178 <FileConfiguration
1058- Name="Debug|x64"
3179+ Name="Release(SSE2)|Win32"
10593180 >
10603181 <Tool
10613182 Name="VCCLCompilerTool"
@@ -1064,7 +3185,7 @@
10643185 />
10653186 </FileConfiguration>
10663187 <FileConfiguration
1067- Name="Release|Win32"
3188+ Name="Release(SSE2)|x64"
10683189 >
10693190 <Tool
10703191 Name="VCCLCompilerTool"
@@ -1073,7 +3194,7 @@
10733194 />
10743195 </FileConfiguration>
10753196 <FileConfiguration
1076- Name="Release|x64"
3197+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
10773198 >
10783199 <Tool
10793200 Name="VCCLCompilerTool"
@@ -1081,8 +3202,12 @@
10813202 PreprocessorDefinitions=""
10823203 />
10833204 </FileConfiguration>
3205+ </File>
3206+ <File
3207+ RelativePath="..\..\common\servent.cpp"
3208+ >
10843209 <FileConfiguration
1085- Name="Private Debug|Win32"
3210+ Name="Private Release|Win32"
10863211 >
10873212 <Tool
10883213 Name="VCCLCompilerTool"
@@ -1091,7 +3216,7 @@
10913216 />
10923217 </FileConfiguration>
10933218 <FileConfiguration
1094- Name="Private Debug|x64"
3219+ Name="Private Release|x64"
10953220 >
10963221 <Tool
10973222 Name="VCCLCompilerTool"
@@ -1099,12 +3224,8 @@
10993224 PreprocessorDefinitions=""
11003225 />
11013226 </FileConfiguration>
1102- </File>
1103- <File
1104- RelativePath="..\..\common\jis.cpp"
1105- >
11063227 <FileConfiguration
1107- Name="Private Release|Win32"
3228+ Name="Private Release|Pocket PC 2003 (ARMV4)"
11083229 >
11093230 <Tool
11103231 Name="VCCLCompilerTool"
@@ -1113,7 +3234,7 @@
11133234 />
11143235 </FileConfiguration>
11153236 <FileConfiguration
1116- Name="Private Release|x64"
3237+ Name="Debug|Win32"
11173238 >
11183239 <Tool
11193240 Name="VCCLCompilerTool"
@@ -1122,7 +3243,7 @@
11223243 />
11233244 </FileConfiguration>
11243245 <FileConfiguration
1125- Name="Debug|Win32"
3246+ Name="Debug|x64"
11263247 >
11273248 <Tool
11283249 Name="VCCLCompilerTool"
@@ -1131,7 +3252,7 @@
11313252 />
11323253 </FileConfiguration>
11333254 <FileConfiguration
1134- Name="Debug|x64"
3255+ Name="Debug|Pocket PC 2003 (ARMV4)"
11353256 >
11363257 <Tool
11373258 Name="VCCLCompilerTool"
@@ -1158,7 +3279,7 @@
11583279 />
11593280 </FileConfiguration>
11603281 <FileConfiguration
1161- Name="Private Debug|Win32"
3282+ Name="Release|Pocket PC 2003 (ARMV4)"
11623283 >
11633284 <Tool
11643285 Name="VCCLCompilerTool"
@@ -1167,7 +3288,7 @@
11673288 />
11683289 </FileConfiguration>
11693290 <FileConfiguration
1170- Name="Private Debug|x64"
3291+ Name="Private Debug|Win32"
11713292 >
11723293 <Tool
11733294 Name="VCCLCompilerTool"
@@ -1175,12 +3296,8 @@
11753296 PreprocessorDefinitions=""
11763297 />
11773298 </FileConfiguration>
1178- </File>
1179- <File
1180- RelativePath="..\..\common\mms.cpp"
1181- >
11823299 <FileConfiguration
1183- Name="Private Release|Win32"
3300+ Name="Private Debug|x64"
11843301 >
11853302 <Tool
11863303 Name="VCCLCompilerTool"
@@ -1189,7 +3306,7 @@
11893306 />
11903307 </FileConfiguration>
11913308 <FileConfiguration
1192- Name="Private Release|x64"
3309+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
11933310 >
11943311 <Tool
11953312 Name="VCCLCompilerTool"
@@ -1198,7 +3315,7 @@
11983315 />
11993316 </FileConfiguration>
12003317 <FileConfiguration
1201- Name="Debug|Win32"
3318+ Name="Release(SSE2)|Win32"
12023319 >
12033320 <Tool
12043321 Name="VCCLCompilerTool"
@@ -1207,7 +3324,7 @@
12073324 />
12083325 </FileConfiguration>
12093326 <FileConfiguration
1210- Name="Debug|x64"
3327+ Name="Release(SSE2)|x64"
12113328 >
12123329 <Tool
12133330 Name="VCCLCompilerTool"
@@ -1216,7 +3333,7 @@
12163333 />
12173334 </FileConfiguration>
12183335 <FileConfiguration
1219- Name="Release|Win32"
3336+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
12203337 >
12213338 <Tool
12223339 Name="VCCLCompilerTool"
@@ -1224,8 +3341,12 @@
12243341 PreprocessorDefinitions=""
12253342 />
12263343 </FileConfiguration>
3344+ </File>
3345+ <File
3346+ RelativePath="..\..\common\servhs.cpp"
3347+ >
12273348 <FileConfiguration
1228- Name="Release|x64"
3349+ Name="Private Release|Win32"
12293350 >
12303351 <Tool
12313352 Name="VCCLCompilerTool"
@@ -1234,7 +3355,7 @@
12343355 />
12353356 </FileConfiguration>
12363357 <FileConfiguration
1237- Name="Private Debug|Win32"
3358+ Name="Private Release|x64"
12383359 >
12393360 <Tool
12403361 Name="VCCLCompilerTool"
@@ -1243,7 +3364,7 @@
12433364 />
12443365 </FileConfiguration>
12453366 <FileConfiguration
1246- Name="Private Debug|x64"
3367+ Name="Private Release|Pocket PC 2003 (ARMV4)"
12473368 >
12483369 <Tool
12493370 Name="VCCLCompilerTool"
@@ -1251,12 +3372,8 @@
12513372 PreprocessorDefinitions=""
12523373 />
12533374 </FileConfiguration>
1254- </File>
1255- <File
1256- RelativePath="..\..\common\mp3.cpp"
1257- >
12583375 <FileConfiguration
1259- Name="Private Release|Win32"
3376+ Name="Debug|Win32"
12603377 >
12613378 <Tool
12623379 Name="VCCLCompilerTool"
@@ -1265,7 +3382,7 @@
12653382 />
12663383 </FileConfiguration>
12673384 <FileConfiguration
1268- Name="Private Release|x64"
3385+ Name="Debug|x64"
12693386 >
12703387 <Tool
12713388 Name="VCCLCompilerTool"
@@ -1274,7 +3391,7 @@
12743391 />
12753392 </FileConfiguration>
12763393 <FileConfiguration
1277- Name="Debug|Win32"
3394+ Name="Debug|Pocket PC 2003 (ARMV4)"
12783395 >
12793396 <Tool
12803397 Name="VCCLCompilerTool"
@@ -1283,7 +3400,7 @@
12833400 />
12843401 </FileConfiguration>
12853402 <FileConfiguration
1286- Name="Debug|x64"
3403+ Name="Release|Win32"
12873404 >
12883405 <Tool
12893406 Name="VCCLCompilerTool"
@@ -1292,7 +3409,7 @@
12923409 />
12933410 </FileConfiguration>
12943411 <FileConfiguration
1295- Name="Release|Win32"
3412+ Name="Release|x64"
12963413 >
12973414 <Tool
12983415 Name="VCCLCompilerTool"
@@ -1301,7 +3418,7 @@
13013418 />
13023419 </FileConfiguration>
13033420 <FileConfiguration
1304- Name="Release|x64"
3421+ Name="Release|Pocket PC 2003 (ARMV4)"
13053422 >
13063423 <Tool
13073424 Name="VCCLCompilerTool"
@@ -1327,12 +3444,8 @@
13273444 PreprocessorDefinitions=""
13283445 />
13293446 </FileConfiguration>
1330- </File>
1331- <File
1332- RelativePath="..\..\common\nsv.cpp"
1333- >
13343447 <FileConfiguration
1335- Name="Private Release|Win32"
3448+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
13363449 >
13373450 <Tool
13383451 Name="VCCLCompilerTool"
@@ -1341,7 +3454,7 @@
13413454 />
13423455 </FileConfiguration>
13433456 <FileConfiguration
1344- Name="Private Release|x64"
3457+ Name="Release(SSE2)|Win32"
13453458 >
13463459 <Tool
13473460 Name="VCCLCompilerTool"
@@ -1350,7 +3463,7 @@
13503463 />
13513464 </FileConfiguration>
13523465 <FileConfiguration
1353- Name="Debug|Win32"
3466+ Name="Release(SSE2)|x64"
13543467 >
13553468 <Tool
13563469 Name="VCCLCompilerTool"
@@ -1359,7 +3472,7 @@
13593472 />
13603473 </FileConfiguration>
13613474 <FileConfiguration
1362- Name="Debug|x64"
3475+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
13633476 >
13643477 <Tool
13653478 Name="VCCLCompilerTool"
@@ -1367,8 +3480,12 @@
13673480 PreprocessorDefinitions=""
13683481 />
13693482 </FileConfiguration>
3483+ </File>
3484+ <File
3485+ RelativePath="..\..\common\servmgr.cpp"
3486+ >
13703487 <FileConfiguration
1371- Name="Release|Win32"
3488+ Name="Private Release|Win32"
13723489 >
13733490 <Tool
13743491 Name="VCCLCompilerTool"
@@ -1377,7 +3494,7 @@
13773494 />
13783495 </FileConfiguration>
13793496 <FileConfiguration
1380- Name="Release|x64"
3497+ Name="Private Release|x64"
13813498 >
13823499 <Tool
13833500 Name="VCCLCompilerTool"
@@ -1386,7 +3503,7 @@
13863503 />
13873504 </FileConfiguration>
13883505 <FileConfiguration
1389- Name="Private Debug|Win32"
3506+ Name="Private Release|Pocket PC 2003 (ARMV4)"
13903507 >
13913508 <Tool
13923509 Name="VCCLCompilerTool"
@@ -1395,7 +3512,7 @@
13953512 />
13963513 </FileConfiguration>
13973514 <FileConfiguration
1398- Name="Private Debug|x64"
3515+ Name="Debug|Win32"
13993516 >
14003517 <Tool
14013518 Name="VCCLCompilerTool"
@@ -1403,12 +3520,8 @@
14033520 PreprocessorDefinitions=""
14043521 />
14053522 </FileConfiguration>
1406- </File>
1407- <File
1408- RelativePath="..\..\common\ogg.cpp"
1409- >
14103523 <FileConfiguration
1411- Name="Private Release|Win32"
3524+ Name="Debug|x64"
14123525 >
14133526 <Tool
14143527 Name="VCCLCompilerTool"
@@ -1417,7 +3530,7 @@
14173530 />
14183531 </FileConfiguration>
14193532 <FileConfiguration
1420- Name="Private Release|x64"
3533+ Name="Debug|Pocket PC 2003 (ARMV4)"
14213534 >
14223535 <Tool
14233536 Name="VCCLCompilerTool"
@@ -1426,7 +3539,7 @@
14263539 />
14273540 </FileConfiguration>
14283541 <FileConfiguration
1429- Name="Debug|Win32"
3542+ Name="Release|Win32"
14303543 >
14313544 <Tool
14323545 Name="VCCLCompilerTool"
@@ -1435,7 +3548,7 @@
14353548 />
14363549 </FileConfiguration>
14373550 <FileConfiguration
1438- Name="Debug|x64"
3551+ Name="Release|x64"
14393552 >
14403553 <Tool
14413554 Name="VCCLCompilerTool"
@@ -1444,7 +3557,7 @@
14443557 />
14453558 </FileConfiguration>
14463559 <FileConfiguration
1447- Name="Release|Win32"
3560+ Name="Release|Pocket PC 2003 (ARMV4)"
14483561 >
14493562 <Tool
14503563 Name="VCCLCompilerTool"
@@ -1453,7 +3566,7 @@
14533566 />
14543567 </FileConfiguration>
14553568 <FileConfiguration
1456- Name="Release|x64"
3569+ Name="Private Debug|Win32"
14573570 >
14583571 <Tool
14593572 Name="VCCLCompilerTool"
@@ -1462,7 +3575,7 @@
14623575 />
14633576 </FileConfiguration>
14643577 <FileConfiguration
1465- Name="Private Debug|Win32"
3578+ Name="Private Debug|x64"
14663579 >
14673580 <Tool
14683581 Name="VCCLCompilerTool"
@@ -1471,7 +3584,7 @@
14713584 />
14723585 </FileConfiguration>
14733586 <FileConfiguration
1474- Name="Private Debug|x64"
3587+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
14753588 >
14763589 <Tool
14773590 Name="VCCLCompilerTool"
@@ -1479,12 +3592,8 @@
14793592 PreprocessorDefinitions=""
14803593 />
14813594 </FileConfiguration>
1482- </File>
1483- <File
1484- RelativePath="..\..\common\pcp.cpp"
1485- >
14863595 <FileConfiguration
1487- Name="Private Release|Win32"
3596+ Name="Release(SSE2)|Win32"
14883597 >
14893598 <Tool
14903599 Name="VCCLCompilerTool"
@@ -1493,7 +3602,7 @@
14933602 />
14943603 </FileConfiguration>
14953604 <FileConfiguration
1496- Name="Private Release|x64"
3605+ Name="Release(SSE2)|x64"
14973606 >
14983607 <Tool
14993608 Name="VCCLCompilerTool"
@@ -1502,7 +3611,20 @@
15023611 />
15033612 </FileConfiguration>
15043613 <FileConfiguration
1505- Name="Debug|Win32"
3614+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
3615+ >
3616+ <Tool
3617+ Name="VCCLCompilerTool"
3618+ AdditionalIncludeDirectories=""
3619+ PreprocessorDefinitions=""
3620+ />
3621+ </FileConfiguration>
3622+ </File>
3623+ <File
3624+ RelativePath="..\..\common\socket.cpp"
3625+ >
3626+ <FileConfiguration
3627+ Name="Private Release|Win32"
15063628 >
15073629 <Tool
15083630 Name="VCCLCompilerTool"
@@ -1511,7 +3633,7 @@
15113633 />
15123634 </FileConfiguration>
15133635 <FileConfiguration
1514- Name="Debug|x64"
3636+ Name="Private Release|x64"
15153637 >
15163638 <Tool
15173639 Name="VCCLCompilerTool"
@@ -1520,7 +3642,7 @@
15203642 />
15213643 </FileConfiguration>
15223644 <FileConfiguration
1523- Name="Release|Win32"
3645+ Name="Private Release|Pocket PC 2003 (ARMV4)"
15243646 >
15253647 <Tool
15263648 Name="VCCLCompilerTool"
@@ -1529,7 +3651,7 @@
15293651 />
15303652 </FileConfiguration>
15313653 <FileConfiguration
1532- Name="Release|x64"
3654+ Name="Debug|Win32"
15333655 >
15343656 <Tool
15353657 Name="VCCLCompilerTool"
@@ -1538,7 +3660,7 @@
15383660 />
15393661 </FileConfiguration>
15403662 <FileConfiguration
1541- Name="Private Debug|Win32"
3663+ Name="Debug|x64"
15423664 >
15433665 <Tool
15443666 Name="VCCLCompilerTool"
@@ -1547,7 +3669,7 @@
15473669 />
15483670 </FileConfiguration>
15493671 <FileConfiguration
1550- Name="Private Debug|x64"
3672+ Name="Debug|Pocket PC 2003 (ARMV4)"
15513673 >
15523674 <Tool
15533675 Name="VCCLCompilerTool"
@@ -1555,12 +3677,8 @@
15553677 PreprocessorDefinitions=""
15563678 />
15573679 </FileConfiguration>
1558- </File>
1559- <File
1560- RelativePath="..\..\common\peercast.cpp"
1561- >
15623680 <FileConfiguration
1563- Name="Private Release|Win32"
3681+ Name="Release|Win32"
15643682 >
15653683 <Tool
15663684 Name="VCCLCompilerTool"
@@ -1569,7 +3687,7 @@
15693687 />
15703688 </FileConfiguration>
15713689 <FileConfiguration
1572- Name="Private Release|x64"
3690+ Name="Release|x64"
15733691 >
15743692 <Tool
15753693 Name="VCCLCompilerTool"
@@ -1578,7 +3696,7 @@
15783696 />
15793697 </FileConfiguration>
15803698 <FileConfiguration
1581- Name="Debug|Win32"
3699+ Name="Release|Pocket PC 2003 (ARMV4)"
15823700 >
15833701 <Tool
15843702 Name="VCCLCompilerTool"
@@ -1587,7 +3705,7 @@
15873705 />
15883706 </FileConfiguration>
15893707 <FileConfiguration
1590- Name="Debug|x64"
3708+ Name="Private Debug|Win32"
15913709 >
15923710 <Tool
15933711 Name="VCCLCompilerTool"
@@ -1596,7 +3714,7 @@
15963714 />
15973715 </FileConfiguration>
15983716 <FileConfiguration
1599- Name="Release|Win32"
3717+ Name="Private Debug|x64"
16003718 >
16013719 <Tool
16023720 Name="VCCLCompilerTool"
@@ -1605,7 +3723,7 @@
16053723 />
16063724 </FileConfiguration>
16073725 <FileConfiguration
1608- Name="Release|x64"
3726+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
16093727 >
16103728 <Tool
16113729 Name="VCCLCompilerTool"
@@ -1614,7 +3732,7 @@
16143732 />
16153733 </FileConfiguration>
16163734 <FileConfiguration
1617- Name="Private Debug|Win32"
3735+ Name="Release(SSE2)|Win32"
16183736 >
16193737 <Tool
16203738 Name="VCCLCompilerTool"
@@ -1623,7 +3741,7 @@
16233741 />
16243742 </FileConfiguration>
16253743 <FileConfiguration
1626- Name="Private Debug|x64"
3744+ Name="Release(SSE2)|x64"
16273745 >
16283746 <Tool
16293747 Name="VCCLCompilerTool"
@@ -1631,12 +3749,8 @@
16313749 PreprocessorDefinitions=""
16323750 />
16333751 </FileConfiguration>
1634- </File>
1635- <File
1636- RelativePath="..\..\common\rtsp.cpp"
1637- >
16383752 <FileConfiguration
1639- Name="Private Release|Win32"
3753+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
16403754 >
16413755 <Tool
16423756 Name="VCCLCompilerTool"
@@ -1644,8 +3758,12 @@
16443758 PreprocessorDefinitions=""
16453759 />
16463760 </FileConfiguration>
3761+ </File>
3762+ <File
3763+ RelativePath="..\..\common\stats.cpp"
3764+ >
16473765 <FileConfiguration
1648- Name="Private Release|x64"
3766+ Name="Private Release|Win32"
16493767 >
16503768 <Tool
16513769 Name="VCCLCompilerTool"
@@ -1654,7 +3772,7 @@
16543772 />
16553773 </FileConfiguration>
16563774 <FileConfiguration
1657- Name="Debug|Win32"
3775+ Name="Private Release|x64"
16583776 >
16593777 <Tool
16603778 Name="VCCLCompilerTool"
@@ -1663,7 +3781,7 @@
16633781 />
16643782 </FileConfiguration>
16653783 <FileConfiguration
1666- Name="Debug|x64"
3784+ Name="Private Release|Pocket PC 2003 (ARMV4)"
16673785 >
16683786 <Tool
16693787 Name="VCCLCompilerTool"
@@ -1672,7 +3790,7 @@
16723790 />
16733791 </FileConfiguration>
16743792 <FileConfiguration
1675- Name="Release|Win32"
3793+ Name="Debug|Win32"
16763794 >
16773795 <Tool
16783796 Name="VCCLCompilerTool"
@@ -1681,7 +3799,7 @@
16813799 />
16823800 </FileConfiguration>
16833801 <FileConfiguration
1684- Name="Release|x64"
3802+ Name="Debug|x64"
16853803 >
16863804 <Tool
16873805 Name="VCCLCompilerTool"
@@ -1690,7 +3808,7 @@
16903808 />
16913809 </FileConfiguration>
16923810 <FileConfiguration
1693- Name="Private Debug|Win32"
3811+ Name="Debug|Pocket PC 2003 (ARMV4)"
16943812 >
16953813 <Tool
16963814 Name="VCCLCompilerTool"
@@ -1699,7 +3817,7 @@
16993817 />
17003818 </FileConfiguration>
17013819 <FileConfiguration
1702- Name="Private Debug|x64"
3820+ Name="Release|Win32"
17033821 >
17043822 <Tool
17053823 Name="VCCLCompilerTool"
@@ -1707,12 +3825,8 @@
17073825 PreprocessorDefinitions=""
17083826 />
17093827 </FileConfiguration>
1710- </File>
1711- <File
1712- RelativePath="..\..\common\servent.cpp"
1713- >
17143828 <FileConfiguration
1715- Name="Private Release|Win32"
3829+ Name="Release|x64"
17163830 >
17173831 <Tool
17183832 Name="VCCLCompilerTool"
@@ -1721,7 +3835,7 @@
17213835 />
17223836 </FileConfiguration>
17233837 <FileConfiguration
1724- Name="Private Release|x64"
3838+ Name="Release|Pocket PC 2003 (ARMV4)"
17253839 >
17263840 <Tool
17273841 Name="VCCLCompilerTool"
@@ -1730,7 +3844,7 @@
17303844 />
17313845 </FileConfiguration>
17323846 <FileConfiguration
1733- Name="Debug|Win32"
3847+ Name="Private Debug|Win32"
17343848 >
17353849 <Tool
17363850 Name="VCCLCompilerTool"
@@ -1739,7 +3853,7 @@
17393853 />
17403854 </FileConfiguration>
17413855 <FileConfiguration
1742- Name="Debug|x64"
3856+ Name="Private Debug|x64"
17433857 >
17443858 <Tool
17453859 Name="VCCLCompilerTool"
@@ -1748,7 +3862,7 @@
17483862 />
17493863 </FileConfiguration>
17503864 <FileConfiguration
1751- Name="Release|Win32"
3865+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
17523866 >
17533867 <Tool
17543868 Name="VCCLCompilerTool"
@@ -1757,7 +3871,7 @@
17573871 />
17583872 </FileConfiguration>
17593873 <FileConfiguration
1760- Name="Release|x64"
3874+ Name="Release(SSE2)|Win32"
17613875 >
17623876 <Tool
17633877 Name="VCCLCompilerTool"
@@ -1766,7 +3880,7 @@
17663880 />
17673881 </FileConfiguration>
17683882 <FileConfiguration
1769- Name="Private Debug|Win32"
3883+ Name="Release(SSE2)|x64"
17703884 >
17713885 <Tool
17723886 Name="VCCLCompilerTool"
@@ -1775,7 +3889,7 @@
17753889 />
17763890 </FileConfiguration>
17773891 <FileConfiguration
1778- Name="Private Debug|x64"
3892+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
17793893 >
17803894 <Tool
17813895 Name="VCCLCompilerTool"
@@ -1785,7 +3899,7 @@
17853899 </FileConfiguration>
17863900 </File>
17873901 <File
1788- RelativePath="..\..\common\servhs.cpp"
3902+ RelativePath="..\..\common\stream.cpp"
17893903 >
17903904 <FileConfiguration
17913905 Name="Private Release|Win32"
@@ -1806,16 +3920,7 @@
18063920 />
18073921 </FileConfiguration>
18083922 <FileConfiguration
1809- Name="Debug|Win32"
1810- >
1811- <Tool
1812- Name="VCCLCompilerTool"
1813- AdditionalIncludeDirectories=""
1814- PreprocessorDefinitions=""
1815- />
1816- </FileConfiguration>
1817- <FileConfiguration
1818- Name="Debug|x64"
3923+ Name="Private Release|Pocket PC 2003 (ARMV4)"
18193924 >
18203925 <Tool
18213926 Name="VCCLCompilerTool"
@@ -1824,7 +3929,7 @@
18243929 />
18253930 </FileConfiguration>
18263931 <FileConfiguration
1827- Name="Release|Win32"
3932+ Name="Debug|Win32"
18283933 >
18293934 <Tool
18303935 Name="VCCLCompilerTool"
@@ -1833,7 +3938,7 @@
18333938 />
18343939 </FileConfiguration>
18353940 <FileConfiguration
1836- Name="Release|x64"
3941+ Name="Debug|x64"
18373942 >
18383943 <Tool
18393944 Name="VCCLCompilerTool"
@@ -1842,7 +3947,7 @@
18423947 />
18433948 </FileConfiguration>
18443949 <FileConfiguration
1845- Name="Private Debug|Win32"
3950+ Name="Debug|Pocket PC 2003 (ARMV4)"
18463951 >
18473952 <Tool
18483953 Name="VCCLCompilerTool"
@@ -1851,7 +3956,7 @@
18513956 />
18523957 </FileConfiguration>
18533958 <FileConfiguration
1854- Name="Private Debug|x64"
3959+ Name="Release|Win32"
18553960 >
18563961 <Tool
18573962 Name="VCCLCompilerTool"
@@ -1859,12 +3964,8 @@
18593964 PreprocessorDefinitions=""
18603965 />
18613966 </FileConfiguration>
1862- </File>
1863- <File
1864- RelativePath="..\..\common\servmgr.cpp"
1865- >
18663967 <FileConfiguration
1867- Name="Private Release|Win32"
3968+ Name="Release|x64"
18683969 >
18693970 <Tool
18703971 Name="VCCLCompilerTool"
@@ -1873,7 +3974,7 @@
18733974 />
18743975 </FileConfiguration>
18753976 <FileConfiguration
1876- Name="Private Release|x64"
3977+ Name="Release|Pocket PC 2003 (ARMV4)"
18773978 >
18783979 <Tool
18793980 Name="VCCLCompilerTool"
@@ -1882,7 +3983,7 @@
18823983 />
18833984 </FileConfiguration>
18843985 <FileConfiguration
1885- Name="Debug|Win32"
3986+ Name="Private Debug|Win32"
18863987 >
18873988 <Tool
18883989 Name="VCCLCompilerTool"
@@ -1891,7 +3992,7 @@
18913992 />
18923993 </FileConfiguration>
18933994 <FileConfiguration
1894- Name="Debug|x64"
3995+ Name="Private Debug|x64"
18953996 >
18963997 <Tool
18973998 Name="VCCLCompilerTool"
@@ -1900,7 +4001,7 @@
19004001 />
19014002 </FileConfiguration>
19024003 <FileConfiguration
1903- Name="Release|Win32"
4004+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
19044005 >
19054006 <Tool
19064007 Name="VCCLCompilerTool"
@@ -1909,7 +4010,7 @@
19094010 />
19104011 </FileConfiguration>
19114012 <FileConfiguration
1912- Name="Release|x64"
4013+ Name="Release(SSE2)|Win32"
19134014 >
19144015 <Tool
19154016 Name="VCCLCompilerTool"
@@ -1918,7 +4019,7 @@
19184019 />
19194020 </FileConfiguration>
19204021 <FileConfiguration
1921- Name="Private Debug|Win32"
4022+ Name="Release(SSE2)|x64"
19224023 >
19234024 <Tool
19244025 Name="VCCLCompilerTool"
@@ -1927,7 +4028,7 @@
19274028 />
19284029 </FileConfiguration>
19294030 <FileConfiguration
1930- Name="Private Debug|x64"
4031+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
19314032 >
19324033 <Tool
19334034 Name="VCCLCompilerTool"
@@ -1937,7 +4038,7 @@
19374038 </FileConfiguration>
19384039 </File>
19394040 <File
1940- RelativePath="..\..\common\socket.cpp"
4041+ RelativePath="..\..\common\sys.cpp"
19414042 >
19424043 <FileConfiguration
19434044 Name="Private Release|Win32"
@@ -1958,16 +4059,7 @@
19584059 />
19594060 </FileConfiguration>
19604061 <FileConfiguration
1961- Name="Debug|Win32"
1962- >
1963- <Tool
1964- Name="VCCLCompilerTool"
1965- AdditionalIncludeDirectories=""
1966- PreprocessorDefinitions=""
1967- />
1968- </FileConfiguration>
1969- <FileConfiguration
1970- Name="Debug|x64"
4062+ Name="Private Release|Pocket PC 2003 (ARMV4)"
19714063 >
19724064 <Tool
19734065 Name="VCCLCompilerTool"
@@ -1976,7 +4068,7 @@
19764068 />
19774069 </FileConfiguration>
19784070 <FileConfiguration
1979- Name="Release|Win32"
4071+ Name="Debug|Win32"
19804072 >
19814073 <Tool
19824074 Name="VCCLCompilerTool"
@@ -1985,7 +4077,7 @@
19854077 />
19864078 </FileConfiguration>
19874079 <FileConfiguration
1988- Name="Release|x64"
4080+ Name="Debug|x64"
19894081 >
19904082 <Tool
19914083 Name="VCCLCompilerTool"
@@ -1994,7 +4086,7 @@
19944086 />
19954087 </FileConfiguration>
19964088 <FileConfiguration
1997- Name="Private Debug|Win32"
4089+ Name="Debug|Pocket PC 2003 (ARMV4)"
19984090 >
19994091 <Tool
20004092 Name="VCCLCompilerTool"
@@ -2003,7 +4095,7 @@
20034095 />
20044096 </FileConfiguration>
20054097 <FileConfiguration
2006- Name="Private Debug|x64"
4098+ Name="Release|Win32"
20074099 >
20084100 <Tool
20094101 Name="VCCLCompilerTool"
@@ -2011,12 +4103,8 @@
20114103 PreprocessorDefinitions=""
20124104 />
20134105 </FileConfiguration>
2014- </File>
2015- <File
2016- RelativePath="..\..\common\stats.cpp"
2017- >
20184106 <FileConfiguration
2019- Name="Private Release|Win32"
4107+ Name="Release|x64"
20204108 >
20214109 <Tool
20224110 Name="VCCLCompilerTool"
@@ -2025,7 +4113,7 @@
20254113 />
20264114 </FileConfiguration>
20274115 <FileConfiguration
2028- Name="Private Release|x64"
4116+ Name="Release|Pocket PC 2003 (ARMV4)"
20294117 >
20304118 <Tool
20314119 Name="VCCLCompilerTool"
@@ -2034,7 +4122,7 @@
20344122 />
20354123 </FileConfiguration>
20364124 <FileConfiguration
2037- Name="Debug|Win32"
4125+ Name="Private Debug|Win32"
20384126 >
20394127 <Tool
20404128 Name="VCCLCompilerTool"
@@ -2043,7 +4131,7 @@
20434131 />
20444132 </FileConfiguration>
20454133 <FileConfiguration
2046- Name="Debug|x64"
4134+ Name="Private Debug|x64"
20474135 >
20484136 <Tool
20494137 Name="VCCLCompilerTool"
@@ -2052,7 +4140,7 @@
20524140 />
20534141 </FileConfiguration>
20544142 <FileConfiguration
2055- Name="Release|Win32"
4143+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
20564144 >
20574145 <Tool
20584146 Name="VCCLCompilerTool"
@@ -2061,7 +4149,7 @@
20614149 />
20624150 </FileConfiguration>
20634151 <FileConfiguration
2064- Name="Release|x64"
4152+ Name="Release(SSE2)|Win32"
20654153 >
20664154 <Tool
20674155 Name="VCCLCompilerTool"
@@ -2070,7 +4158,7 @@
20704158 />
20714159 </FileConfiguration>
20724160 <FileConfiguration
2073- Name="Private Debug|Win32"
4161+ Name="Release(SSE2)|x64"
20744162 >
20754163 <Tool
20764164 Name="VCCLCompilerTool"
@@ -2079,7 +4167,7 @@
20794167 />
20804168 </FileConfiguration>
20814169 <FileConfiguration
2082- Name="Private Debug|x64"
4170+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
20834171 >
20844172 <Tool
20854173 Name="VCCLCompilerTool"
@@ -2089,7 +4177,7 @@
20894177 </FileConfiguration>
20904178 </File>
20914179 <File
2092- RelativePath="..\..\common\stream.cpp"
4180+ RelativePath="..\..\common\url.cpp"
20934181 >
20944182 <FileConfiguration
20954183 Name="Private Release|Win32"
@@ -2110,16 +4198,7 @@
21104198 />
21114199 </FileConfiguration>
21124200 <FileConfiguration
2113- Name="Debug|Win32"
2114- >
2115- <Tool
2116- Name="VCCLCompilerTool"
2117- AdditionalIncludeDirectories=""
2118- PreprocessorDefinitions=""
2119- />
2120- </FileConfiguration>
2121- <FileConfiguration
2122- Name="Debug|x64"
4201+ Name="Private Release|Pocket PC 2003 (ARMV4)"
21234202 >
21244203 <Tool
21254204 Name="VCCLCompilerTool"
@@ -2128,7 +4207,7 @@
21284207 />
21294208 </FileConfiguration>
21304209 <FileConfiguration
2131- Name="Release|Win32"
4210+ Name="Debug|Win32"
21324211 >
21334212 <Tool
21344213 Name="VCCLCompilerTool"
@@ -2137,7 +4216,7 @@
21374216 />
21384217 </FileConfiguration>
21394218 <FileConfiguration
2140- Name="Release|x64"
4219+ Name="Debug|x64"
21414220 >
21424221 <Tool
21434222 Name="VCCLCompilerTool"
@@ -2146,7 +4225,7 @@
21464225 />
21474226 </FileConfiguration>
21484227 <FileConfiguration
2149- Name="Private Debug|Win32"
4228+ Name="Debug|Pocket PC 2003 (ARMV4)"
21504229 >
21514230 <Tool
21524231 Name="VCCLCompilerTool"
@@ -2155,7 +4234,7 @@
21554234 />
21564235 </FileConfiguration>
21574236 <FileConfiguration
2158- Name="Private Debug|x64"
4237+ Name="Release|Win32"
21594238 >
21604239 <Tool
21614240 Name="VCCLCompilerTool"
@@ -2163,12 +4242,8 @@
21634242 PreprocessorDefinitions=""
21644243 />
21654244 </FileConfiguration>
2166- </File>
2167- <File
2168- RelativePath="..\..\common\sys.cpp"
2169- >
21704245 <FileConfiguration
2171- Name="Private Release|Win32"
4246+ Name="Release|x64"
21724247 >
21734248 <Tool
21744249 Name="VCCLCompilerTool"
@@ -2177,7 +4252,7 @@
21774252 />
21784253 </FileConfiguration>
21794254 <FileConfiguration
2180- Name="Private Release|x64"
4255+ Name="Release|Pocket PC 2003 (ARMV4)"
21814256 >
21824257 <Tool
21834258 Name="VCCLCompilerTool"
@@ -2186,7 +4261,7 @@
21864261 />
21874262 </FileConfiguration>
21884263 <FileConfiguration
2189- Name="Debug|Win32"
4264+ Name="Private Debug|Win32"
21904265 >
21914266 <Tool
21924267 Name="VCCLCompilerTool"
@@ -2195,7 +4270,7 @@
21954270 />
21964271 </FileConfiguration>
21974272 <FileConfiguration
2198- Name="Debug|x64"
4273+ Name="Private Debug|x64"
21994274 >
22004275 <Tool
22014276 Name="VCCLCompilerTool"
@@ -2204,7 +4279,7 @@
22044279 />
22054280 </FileConfiguration>
22064281 <FileConfiguration
2207- Name="Release|Win32"
4282+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
22084283 >
22094284 <Tool
22104285 Name="VCCLCompilerTool"
@@ -2213,7 +4288,7 @@
22134288 />
22144289 </FileConfiguration>
22154290 <FileConfiguration
2216- Name="Release|x64"
4291+ Name="Release(SSE2)|Win32"
22174292 >
22184293 <Tool
22194294 Name="VCCLCompilerTool"
@@ -2222,7 +4297,7 @@
22224297 />
22234298 </FileConfiguration>
22244299 <FileConfiguration
2225- Name="Private Debug|Win32"
4300+ Name="Release(SSE2)|x64"
22264301 >
22274302 <Tool
22284303 Name="VCCLCompilerTool"
@@ -2231,7 +4306,7 @@
22314306 />
22324307 </FileConfiguration>
22334308 <FileConfiguration
2234- Name="Private Debug|x64"
4309+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
22354310 >
22364311 <Tool
22374312 Name="VCCLCompilerTool"
@@ -2241,7 +4316,7 @@
22414316 </FileConfiguration>
22424317 </File>
22434318 <File
2244- RelativePath="..\..\common\url.cpp"
4319+ RelativePath="..\..\common\xml.cpp"
22454320 >
22464321 <FileConfiguration
22474322 Name="Private Release|Win32"
@@ -2262,16 +4337,7 @@
22624337 />
22634338 </FileConfiguration>
22644339 <FileConfiguration
2265- Name="Debug|Win32"
2266- >
2267- <Tool
2268- Name="VCCLCompilerTool"
2269- AdditionalIncludeDirectories=""
2270- PreprocessorDefinitions=""
2271- />
2272- </FileConfiguration>
2273- <FileConfiguration
2274- Name="Debug|x64"
4340+ Name="Private Release|Pocket PC 2003 (ARMV4)"
22754341 >
22764342 <Tool
22774343 Name="VCCLCompilerTool"
@@ -2280,7 +4346,7 @@
22804346 />
22814347 </FileConfiguration>
22824348 <FileConfiguration
2283- Name="Release|Win32"
4349+ Name="Debug|Win32"
22844350 >
22854351 <Tool
22864352 Name="VCCLCompilerTool"
@@ -2289,7 +4355,7 @@
22894355 />
22904356 </FileConfiguration>
22914357 <FileConfiguration
2292- Name="Release|x64"
4358+ Name="Debug|x64"
22934359 >
22944360 <Tool
22954361 Name="VCCLCompilerTool"
@@ -2298,7 +4364,7 @@
22984364 />
22994365 </FileConfiguration>
23004366 <FileConfiguration
2301- Name="Private Debug|Win32"
4367+ Name="Debug|Pocket PC 2003 (ARMV4)"
23024368 >
23034369 <Tool
23044370 Name="VCCLCompilerTool"
@@ -2307,7 +4373,7 @@
23074373 />
23084374 </FileConfiguration>
23094375 <FileConfiguration
2310- Name="Private Debug|x64"
4376+ Name="Release|Win32"
23114377 >
23124378 <Tool
23134379 Name="VCCLCompilerTool"
@@ -2315,12 +4381,8 @@
23154381 PreprocessorDefinitions=""
23164382 />
23174383 </FileConfiguration>
2318- </File>
2319- <File
2320- RelativePath="..\..\common\xml.cpp"
2321- >
23224384 <FileConfiguration
2323- Name="Private Release|Win32"
4385+ Name="Release|x64"
23244386 >
23254387 <Tool
23264388 Name="VCCLCompilerTool"
@@ -2329,7 +4391,7 @@
23294391 />
23304392 </FileConfiguration>
23314393 <FileConfiguration
2332- Name="Private Release|x64"
4394+ Name="Release|Pocket PC 2003 (ARMV4)"
23334395 >
23344396 <Tool
23354397 Name="VCCLCompilerTool"
@@ -2338,7 +4400,7 @@
23384400 />
23394401 </FileConfiguration>
23404402 <FileConfiguration
2341- Name="Debug|Win32"
4403+ Name="Private Debug|Win32"
23424404 >
23434405 <Tool
23444406 Name="VCCLCompilerTool"
@@ -2347,7 +4409,7 @@
23474409 />
23484410 </FileConfiguration>
23494411 <FileConfiguration
2350- Name="Debug|x64"
4412+ Name="Private Debug|x64"
23514413 >
23524414 <Tool
23534415 Name="VCCLCompilerTool"
@@ -2356,7 +4418,7 @@
23564418 />
23574419 </FileConfiguration>
23584420 <FileConfiguration
2359- Name="Release|Win32"
4421+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
23604422 >
23614423 <Tool
23624424 Name="VCCLCompilerTool"
@@ -2365,7 +4427,7 @@
23654427 />
23664428 </FileConfiguration>
23674429 <FileConfiguration
2368- Name="Release|x64"
4430+ Name="Release(SSE2)|Win32"
23694431 >
23704432 <Tool
23714433 Name="VCCLCompilerTool"
@@ -2374,7 +4436,7 @@
23744436 />
23754437 </FileConfiguration>
23764438 <FileConfiguration
2377- Name="Private Debug|Win32"
4439+ Name="Release(SSE2)|x64"
23784440 >
23794441 <Tool
23804442 Name="VCCLCompilerTool"
@@ -2383,7 +4445,7 @@
23834445 />
23844446 </FileConfiguration>
23854447 <FileConfiguration
2386- Name="Private Debug|x64"
4448+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
23874449 >
23884450 <Tool
23894451 Name="VCCLCompilerTool"
@@ -2542,6 +4604,15 @@
25424604 />
25434605 </FileConfiguration>
25444606 <FileConfiguration
4607+ Name="Private Release|Pocket PC 2003 (ARMV4)"
4608+ >
4609+ <Tool
4610+ Name="VCCLCompilerTool"
4611+ AdditionalIncludeDirectories=""
4612+ PreprocessorDefinitions=""
4613+ />
4614+ </FileConfiguration>
4615+ <FileConfiguration
25454616 Name="Debug|Win32"
25464617 >
25474618 <Tool
@@ -2560,6 +4631,15 @@
25604631 />
25614632 </FileConfiguration>
25624633 <FileConfiguration
4634+ Name="Debug|Pocket PC 2003 (ARMV4)"
4635+ >
4636+ <Tool
4637+ Name="VCCLCompilerTool"
4638+ AdditionalIncludeDirectories=""
4639+ PreprocessorDefinitions=""
4640+ />
4641+ </FileConfiguration>
4642+ <FileConfiguration
25634643 Name="Release|Win32"
25644644 >
25654645 <Tool
@@ -2578,6 +4658,15 @@
25784658 />
25794659 </FileConfiguration>
25804660 <FileConfiguration
4661+ Name="Release|Pocket PC 2003 (ARMV4)"
4662+ >
4663+ <Tool
4664+ Name="VCCLCompilerTool"
4665+ AdditionalIncludeDirectories=""
4666+ PreprocessorDefinitions=""
4667+ />
4668+ </FileConfiguration>
4669+ <FileConfiguration
25814670 Name="Private Debug|Win32"
25824671 >
25834672 <Tool
@@ -2595,6 +4684,42 @@
25954684 PreprocessorDefinitions=""
25964685 />
25974686 </FileConfiguration>
4687+ <FileConfiguration
4688+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
4689+ >
4690+ <Tool
4691+ Name="VCCLCompilerTool"
4692+ AdditionalIncludeDirectories=""
4693+ PreprocessorDefinitions=""
4694+ />
4695+ </FileConfiguration>
4696+ <FileConfiguration
4697+ Name="Release(SSE2)|Win32"
4698+ >
4699+ <Tool
4700+ Name="VCCLCompilerTool"
4701+ AdditionalIncludeDirectories=""
4702+ PreprocessorDefinitions=""
4703+ />
4704+ </FileConfiguration>
4705+ <FileConfiguration
4706+ Name="Release(SSE2)|x64"
4707+ >
4708+ <Tool
4709+ Name="VCCLCompilerTool"
4710+ AdditionalIncludeDirectories=""
4711+ PreprocessorDefinitions=""
4712+ />
4713+ </FileConfiguration>
4714+ <FileConfiguration
4715+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
4716+ >
4717+ <Tool
4718+ Name="VCCLCompilerTool"
4719+ AdditionalIncludeDirectories=""
4720+ PreprocessorDefinitions=""
4721+ />
4722+ </FileConfiguration>
25984723 </File>
25994724 <File
26004725 RelativePath="..\wsys.cpp"
@@ -2618,6 +4743,15 @@
26184743 />
26194744 </FileConfiguration>
26204745 <FileConfiguration
4746+ Name="Private Release|Pocket PC 2003 (ARMV4)"
4747+ >
4748+ <Tool
4749+ Name="VCCLCompilerTool"
4750+ AdditionalIncludeDirectories=""
4751+ PreprocessorDefinitions=""
4752+ />
4753+ </FileConfiguration>
4754+ <FileConfiguration
26214755 Name="Debug|Win32"
26224756 >
26234757 <Tool
@@ -2636,6 +4770,15 @@
26364770 />
26374771 </FileConfiguration>
26384772 <FileConfiguration
4773+ Name="Debug|Pocket PC 2003 (ARMV4)"
4774+ >
4775+ <Tool
4776+ Name="VCCLCompilerTool"
4777+ AdditionalIncludeDirectories=""
4778+ PreprocessorDefinitions=""
4779+ />
4780+ </FileConfiguration>
4781+ <FileConfiguration
26394782 Name="Release|Win32"
26404783 >
26414784 <Tool
@@ -2654,6 +4797,15 @@
26544797 />
26554798 </FileConfiguration>
26564799 <FileConfiguration
4800+ Name="Release|Pocket PC 2003 (ARMV4)"
4801+ >
4802+ <Tool
4803+ Name="VCCLCompilerTool"
4804+ AdditionalIncludeDirectories=""
4805+ PreprocessorDefinitions=""
4806+ />
4807+ </FileConfiguration>
4808+ <FileConfiguration
26574809 Name="Private Debug|Win32"
26584810 >
26594811 <Tool
@@ -2671,6 +4823,42 @@
26714823 PreprocessorDefinitions=""
26724824 />
26734825 </FileConfiguration>
4826+ <FileConfiguration
4827+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
4828+ >
4829+ <Tool
4830+ Name="VCCLCompilerTool"
4831+ AdditionalIncludeDirectories=""
4832+ PreprocessorDefinitions=""
4833+ />
4834+ </FileConfiguration>
4835+ <FileConfiguration
4836+ Name="Release(SSE2)|Win32"
4837+ >
4838+ <Tool
4839+ Name="VCCLCompilerTool"
4840+ AdditionalIncludeDirectories=""
4841+ PreprocessorDefinitions=""
4842+ />
4843+ </FileConfiguration>
4844+ <FileConfiguration
4845+ Name="Release(SSE2)|x64"
4846+ >
4847+ <Tool
4848+ Name="VCCLCompilerTool"
4849+ AdditionalIncludeDirectories=""
4850+ PreprocessorDefinitions=""
4851+ />
4852+ </FileConfiguration>
4853+ <FileConfiguration
4854+ Name="Release(SSE2)|Pocket PC 2003 (ARMV4)"
4855+ >
4856+ <Tool
4857+ Name="VCCLCompilerTool"
4858+ AdditionalIncludeDirectories=""
4859+ PreprocessorDefinitions=""
4860+ />
4861+ </FileConfiguration>
26744862 </File>
26754863 </Filter>
26764864 <Filter
--- /dev/null
+++ b/PeerCast.root/PeerCast/ui/win32/Simple_vp/Simple.cpp
@@ -0,0 +1,1360 @@
1+// ------------------------------------------------
2+// File : simple.cpp
3+// Date: 4-apr-2002
4+// Author: giles
5+// Desc:
6+// Simple tray icon interface to PeerCast, mostly win32 related stuff.
7+//
8+// (c) 2002 peercast.org
9+// ------------------------------------------------
10+// This program is free software; you can redistribute it and/or modify
11+// it under the terms of the GNU General Public License as published by
12+// the Free Software Foundation; either version 2 of the License, or
13+// (at your option) any later version.
14+
15+// This program is distributed in the hope that it will be useful,
16+// but WITHOUT ANY WARRANTY; without even the implied warranty of
17+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18+// GNU General Public License for more details.
19+// ------------------------------------------------
20+
21+#include <windows.h>
22+#include <direct.h>
23+#include "stdafx.h"
24+#include "resource.h"
25+#include "gui.h"
26+#include "channel.h"
27+#include "servent.h"
28+#include "servmgr.h"
29+#include "win32/wsys.h"
30+#include "peercast.h"
31+#include "simple.h"
32+#include "version2.h"
33+#ifdef _DEBUG
34+#include "chkMemoryLeak.h"
35+#define DEBUG_NEW new(__FILE__, __LINE__)
36+#define new DEBUG_NEW
37+#endif
38+
39+#define MAX_LOADSTRING 100
40+
41+#define PLAY_CMD 7000
42+#define RELAY_CMD 8000
43+#define INFO_CMD 9000
44+#define URL_CMD 10000
45+
46+#define MAX_CHANNELS 999
47+
48+extern "C"
49+{
50+ void loadIcons(HINSTANCE hInstance, HWND hWnd);
51+};
52+
53+UINT g_iTaskbarCreated = ~0; // for PCRaw (tray icon)
54+
55+// PeerCast globals
56+
57+static int currNotify=0;
58+String iniFileName;
59+HWND guiWnd;
60+HWND mainWnd;
61+static HMENU trayMenu = NULL,ltrayMenu = NULL; // for PCRaw (tray icon)
62+bool showGUI=true;
63+bool allowMulti=false;
64+bool killMe=false;
65+bool allowTrayMenu=true;
66+static bool winDistinctionNT=false;
67+int seenNewVersionTime=0;
68+HICON icon1,icon2;
69+ChanInfo chanInfo;
70+bool chanInfoIsRelayed;
71+//GnuID lastPlayID;
72+String exePath;
73+FileStream fs;
74+
75+// ---------------------------------
76+Sys * APICALL MyPeercastInst::createSys()
77+{
78+ return new WSys(mainWnd);
79+}
80+// ---------------------------------
81+const char * APICALL MyPeercastApp ::getIniFilename()
82+{
83+ return iniFileName.cstr();
84+}
85+
86+// ---------------------------------
87+const char *APICALL MyPeercastApp ::getClientTypeOS()
88+{
89+ return PCX_OS_WIN32;
90+}
91+
92+// ---------------------------------
93+const char * APICALL MyPeercastApp::getPath()
94+{
95+ return exePath.cstr();
96+}
97+
98+// --------------------------------- JP-EX
99+void APICALL MyPeercastApp ::openLogFile()
100+{
101+ logFile.openWriteReplace("log.txt");
102+}
103+// --------------------------------- JP-EX
104+void APICALL MyPeercastApp ::getDirectory()
105+{
106+ char path_buffer[256],drive[32],dir[128];
107+ GetModuleFileName(NULL,path_buffer,255);
108+ _splitpath(path_buffer,drive,dir,NULL,NULL);
109+ sprintf(servMgr->modulePath,"%s%s",drive,dir);
110+}
111+// --------------------------------- JP-EX
112+bool APICALL MyPeercastApp ::clearTemp()
113+{
114+ if (servMgr->clearPLS)
115+ return true;
116+
117+ return false;
118+}
119+
120+
121+class NOTIFYICONDATA2
122+{
123+public:
124+ DWORD cbSize; // DWORD
125+ HWND hWnd; // HWND
126+ UINT uID; // UINT
127+ UINT uFlags; // UINT
128+ UINT uCallbackMessage; // UINT
129+ HICON hIcon; // HICON
130+ char szTip[128]; // char[128]
131+ DWORD dwState; // DWORD
132+ DWORD dwStateMask; // DWORD
133+ char szInfo[256]; // char[256]
134+ UINT uTimeoutOrVersion; // UINT
135+ char szInfoTitle[64]; // char[64]
136+ DWORD dwInfoFlags; // DWORD
137+ //GUID guidItem; > IE 6
138+};
139+
140+NOTIFYICONDATA2 trayIcon;
141+
142+
143+// Global Variables:
144+HINSTANCE hInst; // current instance
145+TCHAR szTitle[MAX_LOADSTRING]; // The title bar text
146+TCHAR szWindowClass[MAX_LOADSTRING]; // The title bar text
147+
148+// Foward declarations of functions included in this code module:
149+ATOM MyRegisterClass(HINSTANCE hInstance);
150+BOOL InitInstance(HINSTANCE, int);
151+LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
152+LRESULT CALLBACK About(HWND, UINT, WPARAM, LPARAM);
153+LRESULT CALLBACK ChanInfoProc(HWND, UINT, WPARAM, LPARAM);
154+
155+void setTrayIcon(int type, const char *,const char *,bool);
156+void flipNotifyPopup(int id, ServMgr::NOTIFY_TYPE nt);
157+
158+
159+HWND chWnd=NULL;
160+
161+// --------------------------------------------------
162+void LOG2(const char *fmt,...)
163+{
164+ va_list ap;
165+ va_start(ap, fmt);
166+ char str[4096];
167+ vsprintf(str,fmt,ap);
168+ OutputDebugString(str);
169+ va_end(ap);
170+}
171+
172+
173+
174+// ---------------------------------------
175+
176+int APIENTRY WinMain(HINSTANCE hInstance,
177+ HINSTANCE hPrevInstance,
178+ LPSTR lpCmdLine,
179+ int nCmdShow)
180+{
181+#ifdef _DEBUG
182+ // memory leak check
183+ ::_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF);
184+#endif
185+
186+ char tmpURL[8192];
187+ tmpURL[0]=0;
188+ char *chanURL=NULL;
189+
190+ //VERSION_EX = 0;
191+
192+ iniFileName.set(".\\peercast.ini");
193+
194+ WIN32_FIND_DATA fd; //JP-EX
195+ HANDLE hFind; //JP-EX
196+
197+ OSVERSIONINFO osInfo; //JP-EX
198+ osInfo.dwOSVersionInfoSize = sizeof(OSVERSIONINFO); //JP-EX
199+ GetVersionEx(&osInfo);
200+ if (osInfo.dwPlatformId == VER_PLATFORM_WIN32_NT)
201+ winDistinctionNT = true;
202+ else
203+ winDistinctionNT = false;
204+
205+ // off by default now
206+ showGUI = false;
207+
208+ if (strlen(lpCmdLine) > 0)
209+ {
210+ char *p;
211+ if ((p = strstr(lpCmdLine,"-inifile"))!=NULL)
212+ iniFileName.setFromString(p+8);
213+
214+ if (strstr(lpCmdLine,"-zen"))
215+ showGUI = false;
216+
217+ if (strstr(lpCmdLine,"-multi"))
218+ allowMulti = true;
219+
220+ if (strstr(lpCmdLine,"-kill"))
221+ killMe = true;
222+
223+ if ((p = strstr(lpCmdLine,"-url"))!=NULL)
224+ {
225+ p+=4;
226+ while (*p)
227+ {
228+ if (*p=='"')
229+ {
230+ p++;
231+ break;
232+ }
233+ if (*p != ' ')
234+ break;
235+ p++;
236+ }
237+ if (*p)
238+ strncpy(tmpURL,p,sizeof(tmpURL)-1);
239+ }
240+ }
241+
242+ // get current path
243+ {
244+ exePath = iniFileName;
245+ char *s = exePath.cstr();
246+ char *end = NULL;
247+ while (*s)
248+ {
249+ if (*s++ == '\\')
250+ end = s;
251+ }
252+ if (end)
253+ *end = 0;
254+ }
255+
256+
257+ if (strnicmp(tmpURL,"peercast://",11)==0)
258+ {
259+ if (strnicmp(tmpURL+11,"pls/",4)==0)
260+ chanURL = tmpURL+11+4;
261+ else
262+ chanURL = tmpURL+11;
263+ showGUI = false;
264+ }
265+
266+
267+ MSG msg;
268+ HACCEL hAccelTable;
269+
270+ // Initialize global strings
271+ //LoadString(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING);
272+ //LoadString(hInstance, IDC_APP_TITLE, szWindowClass, MAX_LOADSTRING);
273+
274+ strcpy(szTitle,"PeerCast");
275+ strcpy(szWindowClass,"PeerCast");
276+
277+ if (!allowMulti)
278+ {
279+ HANDLE mutex = CreateMutex(NULL,TRUE,szWindowClass);
280+
281+ if (GetLastError() == ERROR_ALREADY_EXISTS)
282+ {
283+ HWND oldWin = FindWindow(szWindowClass,NULL);
284+ if (oldWin)
285+ {
286+ if (killMe)
287+ {
288+ SendMessage(oldWin,WM_DESTROY,0,0);
289+ return 0;
290+ }
291+
292+ if (chanURL)
293+ {
294+ COPYDATASTRUCT copy;
295+ copy.dwData = WM_PLAYCHANNEL;
296+ copy.cbData = strlen(chanURL)+1; // plus null term
297+ copy.lpData = chanURL;
298+ SendMessage(oldWin,WM_COPYDATA,NULL,(LPARAM)&copy);
299+ }else{
300+ if (showGUI)
301+ SendMessage(oldWin,WM_SHOWGUI,0,0);
302+ }
303+ }
304+ return 0;
305+ }
306+ }
307+
308+ if (killMe)
309+ return 0;
310+
311+ MyRegisterClass(hInstance);
312+
313+ // Perform application initialization:
314+ if (!InitInstance (hInstance, nCmdShow))
315+ return FALSE;
316+
317+ peercastInst = new MyPeercastInst();
318+ peercastApp = new MyPeercastApp();
319+
320+ peercastInst->init();
321+
322+ LOG_DEBUG("Set OS Type: %s",winDistinctionNT?"WinNT":"Win9x");
323+
324+ if (peercastApp->clearTemp()) //JP-EX
325+ {
326+ DeleteFile("play.pls");
327+ hFind = FindFirstFile("*.asx",&fd);
328+ if (hFind != INVALID_HANDLE_VALUE)
329+ {
330+ do
331+ {
332+ DeleteFile((char *)&fd.cFileName);
333+ }
334+ while (FindNextFile(hFind,&fd));
335+
336+ FindClose(hFind);
337+ }
338+ }
339+
340+ if (chanURL)
341+ {
342+ ChanInfo info;
343+ servMgr->procConnectArgs(chanURL,info);
344+ chanMgr->findAndPlayChannel(info,false);
345+ }
346+
347+
348+ hAccelTable = LoadAccelerators(hInstance, (LPCTSTR)IDC_SIMPLE);
349+
350+ // setup menu notifes
351+ int mask = peercastInst->getNotifyMask();
352+ if (mask & ServMgr::NT_PEERCAST)
353+ CheckMenuItem(trayMenu,ID_POPUP_SHOWMESSAGES_PEERCAST,MF_CHECKED|MF_BYCOMMAND);
354+ if (mask & ServMgr::NT_BROADCASTERS)
355+ CheckMenuItem(trayMenu,ID_POPUP_SHOWMESSAGES_BROADCASTERS,MF_CHECKED|MF_BYCOMMAND);
356+ if (mask & ServMgr::NT_TRACKINFO)
357+ CheckMenuItem(trayMenu,ID_POPUP_SHOWMESSAGES_TRACKINFO,MF_CHECKED|MF_BYCOMMAND);
358+
359+ // Main message loop:
360+ while (GetMessage(&msg, NULL, 0, 0))
361+ {
362+ if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg))
363+ {
364+ TranslateMessage(&msg);
365+ DispatchMessage(&msg);
366+ }
367+ }
368+
369+ Shell_NotifyIcon(NIM_DELETE, (NOTIFYICONDATA*)&trayIcon);
370+
371+ peercastInst->saveSettings();
372+ peercastInst->quit();
373+
374+ return msg.wParam;
375+}
376+
377+
378+
379+//
380+// FUNCTION: MyRegisterClass()
381+//
382+// PURPOSE: Registers the window class.
383+//
384+// COMMENTS:
385+//
386+// This function and its usage is only necessary if you want this code
387+// to be compatible with Win32 systems prior to the 'RegisterClassEx'
388+// function that was added to Windows 95. It is important to call this function
389+// so that the application will get 'well formed' small icons associated
390+// with it.
391+//
392+ATOM MyRegisterClass(HINSTANCE hInstance)
393+{
394+ WNDCLASSEX wcex;
395+
396+ wcex.cbSize = sizeof(WNDCLASSEX);
397+
398+ wcex.style = CS_HREDRAW | CS_VREDRAW;
399+ wcex.lpfnWndProc = (WNDPROC)WndProc;
400+ wcex.cbClsExtra = 0;
401+ wcex.cbWndExtra = 0;
402+ wcex.hInstance = hInstance;
403+ wcex.hIcon = LoadIcon(hInstance, (LPCTSTR)IDI_SIMPLE);
404+ wcex.hCursor = LoadCursor(NULL, IDC_ARROW);
405+ wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
406+ wcex.lpszMenuName = (LPCSTR)IDC_SIMPLE;
407+ wcex.lpszClassName = szWindowClass;
408+ wcex.hIconSm = LoadIcon(wcex.hInstance, (LPCTSTR)IDI_SMALL);
409+
410+ return RegisterClassEx(&wcex);
411+
412+}
413+
414+//-----------------------------
415+void loadIcons(HINSTANCE hInstance, HWND hWnd)
416+{
417+ icon1 = LoadIcon(hInstance, (LPCTSTR)IDI_SMALL);
418+ icon2 = LoadIcon(hInstance, (LPCTSTR)IDI_SMALL2);
419+
420+ trayIcon.cbSize = sizeof(trayIcon);
421+ trayIcon.hWnd = hWnd;
422+ trayIcon.uID = 100;
423+ trayIcon.uFlags = NIF_MESSAGE + NIF_ICON + NIF_TIP;
424+ trayIcon.uCallbackMessage = WM_TRAYICON;
425+ trayIcon.hIcon = icon1;
426+ strcpy(trayIcon.szTip, "PeerCast");
427+
428+ Shell_NotifyIcon(NIM_ADD, (NOTIFYICONDATA*)&trayIcon);
429+
430+ //ShowWindow(hWnd, nCmdShow);
431+ UpdateWindow(hWnd);
432+
433+ if(!trayMenu) // for PCRaw (tray icon)
434+ trayMenu = LoadMenu(hInstance,MAKEINTRESOURCE(IDR_TRAYMENU));
435+ if(!ltrayMenu) // for PCRaw (tray icon)
436+ ltrayMenu = LoadMenu(hInstance,MAKEINTRESOURCE(IDR_LTRAYMENU));
437+
438+
439+}
440+
441+//-----------------------------
442+//
443+// FUNCTION: InitInstance(HANDLE, int)
444+//
445+// PURPOSE: Saves instance handle and creates main window
446+//
447+// COMMENTS:
448+//
449+// In this function, we save the instance handle in a global variable and
450+// create and display the main program window.
451+//
452+BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
453+{
454+ HWND hWnd;
455+
456+ hInst = hInstance; // Store instance handle in our global variable
457+
458+ hWnd = CreateWindow(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW,
459+ CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInstance, NULL);
460+
461+ if (!hWnd)
462+ {
463+ return FALSE;
464+ }
465+
466+ mainWnd = hWnd;
467+
468+ g_iTaskbarCreated = RegisterWindowMessage("TaskbarCreated"); // for PCRaw (tray icon)
469+
470+ loadIcons(hInstance,hWnd);
471+
472+ return TRUE;
473+}
474+//-----------------------------
475+//static String trackTitle;
476+//static String channelComment;
477+
478+//-----------------------------
479+void channelPopup(const char *title, const char *msg, bool isPopup = true)
480+{
481+ String both;
482+
483+ if (*title == '\0') return;
484+ both.append(msg);
485+ both.append(" (");
486+ both.append(title);
487+ both.append(")");
488+
489+ trayIcon.uFlags = NIF_ICON|NIF_TIP;
490+ strncpy(trayIcon.szTip, both.cstr(),sizeof(trayIcon.szTip)-1);
491+ trayIcon.szTip[sizeof(trayIcon.szTip)-1]=0;
492+
493+ if (isPopup) trayIcon.uFlags |= 16;
494+ trayIcon.uTimeoutOrVersion = 10000;
495+ strncpy(trayIcon.szInfo,msg,sizeof(trayIcon.szInfo)-1);
496+ strncpy(trayIcon.szInfoTitle,title,sizeof(trayIcon.szInfoTitle)-1);
497+
498+ Shell_NotifyIcon(NIM_MODIFY, (NOTIFYICONDATA*)&trayIcon);
499+}
500+//-----------------------------
501+void clearChannelPopup()
502+{
503+ trayIcon.uFlags = NIF_ICON|16;
504+ trayIcon.uTimeoutOrVersion = 10000;
505+ strncpy(trayIcon.szInfo,"",sizeof(trayIcon.szInfo)-1);
506+ strncpy(trayIcon.szInfoTitle,"",sizeof(trayIcon.szInfoTitle)-1);
507+ Shell_NotifyIcon(NIM_MODIFY, (NOTIFYICONDATA*)&trayIcon);
508+}
509+
510+//-----------------------------
511+// PopupEntry
512+struct PopupEntry {
513+ GnuID id;
514+ String name;
515+ String track;
516+ String comment;
517+ PopupEntry *next;
518+};
519+static PopupEntry *PEList = NULL;
520+static WLock PELock;
521+
522+static void putPopupEntry(PopupEntry *pe)
523+{
524+ PELock.on();
525+ pe->next = PEList;
526+ PEList = pe;
527+ PELock.off();
528+}
529+
530+static PopupEntry *getPopupEntry(GnuID id)
531+{
532+ PELock.on();
533+ PopupEntry *pe = PEList;
534+ PopupEntry *prev = NULL;
535+ while (pe) {
536+ if (id.isSame(pe->id)) {
537+ if (prev) prev->next = pe->next;
538+ else PEList = pe->next;
539+ PELock.off();
540+ pe->next = NULL;
541+ return pe;
542+ }
543+ prev = pe;
544+ pe = pe->next;
545+ }
546+ PELock.off();
547+ return NULL;
548+}
549+
550+static PopupEntry *getTopPopupEntry()
551+{
552+ PopupEntry *p = NULL;
553+ PELock.on();
554+ if (PEList) {
555+ p = PEList;
556+ PEList = PEList->next;
557+ }
558+ PELock.off();
559+ return p;
560+}
561+
562+//-----------------------------
563+void APICALL MyPeercastApp::channelStart(ChanInfo *info)
564+{
565+
566+// lastPlayID = info->id;
567+//
568+// if(!isIndexTxt(info)) // for PCRaw (popup)
569+// clearChannelPopup();
570+
571+ PopupEntry *pe = getPopupEntry(info->id);
572+ if (!pe) {
573+ pe = new PopupEntry;
574+ pe->id = info->id;
575+ }
576+ if (!isIndexTxt(info))
577+ putPopupEntry(pe);
578+ else
579+ delete pe;
580+}
581+//-----------------------------
582+void APICALL MyPeercastApp::channelStop(ChanInfo *info)
583+{
584+// if (info->id.isSame(lastPlayID))
585+// {
586+// lastPlayID.clear();
587+//
588+// if(!isIndexTxt(info)) // for PCRaw (popup)
589+// clearChannelPopup();
590+// }
591+
592+ PopupEntry *pe = getPopupEntry(info->id);
593+ if (pe) delete pe;
594+
595+ pe = getTopPopupEntry();
596+ if (!pe) {
597+ clearChannelPopup();
598+ } else {
599+ if (ServMgr::NT_TRACKINFO & peercastInst->getNotifyMask())
600+ {
601+ String name,track; //JP-Patch
602+ name = pe->name; //JP-Patch
603+ track = pe->track; //JP-Patch
604+ name.convertTo(String::T_SJIS); //JP-Patch
605+ track.convertTo(String::T_SJIS); //JP-Patch
606+ clearChannelPopup();
607+ // channelPopup(info->name.cstr(),trackTitle.cstr());
608+ channelPopup(name.cstr(),track.cstr(), false); //JP-Patch
609+ }
610+ putPopupEntry(pe);
611+ }
612+}
613+//-----------------------------
614+void APICALL MyPeercastApp::channelUpdate(ChanInfo *info)
615+{
616+ if (info)
617+ {
618+ PopupEntry *pe = getPopupEntry(info->id);
619+ if (!pe) return;
620+
621+ String tmp;
622+ tmp.append(info->track.artist);
623+ tmp.append(" ");
624+ tmp.append(info->track.title);
625+
626+
627+ if (!tmp.isSame(pe->track))
628+ {
629+ pe->name = info->name;
630+ pe->track = tmp;
631+ if (ServMgr::NT_TRACKINFO & peercastInst->getNotifyMask())
632+ {
633+ //trackTitle=tmp;
634+ String name,track; //JP-Patch
635+ name = info->name; //JP-Patch
636+ track = tmp; //JP-Patch
637+ name.convertTo(String::T_SJIS); //JP-Patch
638+ track.convertTo(String::T_SJIS); //JP-Patch
639+ if(!isIndexTxt(info)) // for PCRaw (popup)
640+ {
641+ clearChannelPopup();
642+ // channelPopup(info->name.cstr(),trackTitle.cstr());
643+ channelPopup(name.cstr(),track.cstr()); //JP-Patch
644+ }
645+ }
646+ } else if (!info->comment.isSame(pe->comment))
647+ {
648+ pe->name = info->name;
649+ pe->comment = info->comment;
650+ if (ServMgr::NT_BROADCASTERS & peercastInst->getNotifyMask())
651+ {
652+ //channelComment = info->comment;
653+ String name,comment; //JP-Patch
654+ name = info->name; //JP-Patch
655+ comment = info->comment; //JP-Patch
656+ name.convertTo(String::T_SJIS); //JP-Patch
657+ comment.convertTo(String::T_SJIS); //JP-Patch
658+ if(!isIndexTxt(info)) // for PCRaw (popup)
659+ {
660+ clearChannelPopup();
661+ // channelPopup(info->name.cstr(),channelComment.cstr());
662+ channelPopup(name.cstr(),comment.cstr());
663+ }
664+ }
665+ }
666+
667+ if (!isIndexTxt(info))
668+ putPopupEntry(pe);
669+ else
670+ delete pe;
671+ }
672+}
673+//-----------------------------
674+void APICALL MyPeercastApp::notifyMessage(ServMgr::NOTIFY_TYPE type, const char *msg)
675+{
676+ static bool shownUpgradeAlert=false;
677+
678+ currNotify = type;
679+
680+ trayIcon.uFlags = 0;
681+
682+ if (!shownUpgradeAlert)
683+ {
684+ trayIcon.uFlags = NIF_ICON;
685+
686+ if (type == ServMgr::NT_UPGRADE)
687+ {
688+ shownUpgradeAlert = true;
689+ trayIcon.hIcon = icon2;
690+ }else
691+ {
692+ trayIcon.hIcon = icon1;
693+ }
694+ }else
695+ {
696+ if (type == ServMgr::NT_UPGRADE)
697+ return;
698+ }
699+
700+ const char *title="";
701+
702+ switch(type)
703+ {
704+ case ServMgr::NT_UPGRADE:
705+ title = "Upgrade alert";
706+ break;
707+ case ServMgr::NT_PEERCAST:
708+ title = "Message from PeerCast:";
709+ break;
710+
711+ }
712+
713+ if (type & peercastInst->getNotifyMask())
714+ {
715+ trayIcon.uFlags |= 16;
716+ trayIcon.uTimeoutOrVersion = 10000;
717+ strncpy(trayIcon.szInfo,msg,sizeof(trayIcon.szInfo)-1);
718+ strncpy(trayIcon.szInfoTitle,title,sizeof(trayIcon.szInfoTitle)-1);
719+ Shell_NotifyIcon(NIM_MODIFY, (NOTIFYICONDATA*)&trayIcon);
720+ }
721+}
722+//-----------------------------
723+
724+// createGUI()
725+//
726+void createGUI(HWND hWnd)
727+{
728+ if (!guiWnd)
729+ guiWnd = CreateDialog(hInst, (LPCTSTR)IDD_MAINWINDOW, hWnd, (DLGPROC)GUIProc);
730+ ShowWindow(guiWnd,SW_SHOWNORMAL);
731+}
732+
733+
734+//
735+// addRelayedChannelsMenu(HMENU m)
736+//
737+//
738+void addRelayedChannelsMenu(HMENU cm)
739+{
740+ int cnt = GetMenuItemCount(cm);
741+ for(int i=0; i<cnt-3; i++)
742+ DeleteMenu(cm,0,MF_BYPOSITION);
743+
744+ Channel *c = chanMgr->channel;
745+ while(c)
746+ {
747+ if (c->isActive())
748+ {
749+ char str[128],name[64];
750+ strncpy(name,c->info.name,32);
751+ name[32]=0;
752+ if (strlen(c->info.name) > 32)
753+ strcat(name,"...");
754+
755+
756+ sprintf(str,"%s (%d kb/s %s)",name,c->info.bitrate,ChanInfo::getTypeStr(c->info.contentType));
757+ //InsertMenu(cm,0,MF_BYPOSITION,RELAY_CMD+i,str);
758+ }
759+ c=c->next;
760+ }
761+}
762+
763+typedef int (*COMPARE_FUNC)(const void *,const void *);
764+
765+static int compareHitLists(ChanHitList **c2, ChanHitList **c1)
766+{
767+ return stricmp(c1[0]->info.name.cstr(),c2[0]->info.name.cstr());
768+}
769+
770+static int compareChannels(Channel **c2, Channel **c1)
771+{
772+ return stricmp(c1[0]->info.name.cstr(),c2[0]->info.name.cstr());
773+}
774+
775+//
776+// addAllChannelsMenu(HMENU m)
777+//
778+//
779+void addAllChannelsMenu(HMENU cm)
780+{
781+ int cnt = GetMenuItemCount(cm);
782+/* for(int i=0; i<cnt-2; i++)
783+ DeleteMenu(cm,0,MF_BYPOSITION);*/
784+
785+ for(int i=0; i<cnt; i++)
786+ DeleteMenu(cm,0,MF_BYPOSITION);
787+
788+ HMENU yMenu = CreatePopupMenu();
789+ if (!servMgr->rootHost2.isEmpty()){
790+ InsertMenu(yMenu,0,MF_BYPOSITION,ID_POPUP_YELLOWPAGES2,servMgr->rootHost2);
791+ }
792+ if (!servMgr->rootHost.isEmpty()){
793+ InsertMenu(yMenu,0,MF_BYPOSITION,ID_POPUP_YELLOWPAGES1,servMgr->rootHost);
794+ }
795+
796+ InsertMenu(cm,0,MF_BYPOSITION|MF_POPUP,(UINT)yMenu,"イエローページ");
797+ InsertMenu(cm,0,MF_BYPOSITION|MF_SEPARATOR,NULL,NULL);
798+ // add channels to menu
799+ int numActive=0;
800+ Channel *ch = chanMgr->channel;
801+ while(ch)
802+ {
803+ char str[128],name[64];
804+ String sjis; //JP-Patch
805+ sjis = ch->info.name; //JP-Patch
806+ sjis.convertTo(String::T_SJIS); //JP-Patch
807+ strncpy(name,sjis.cstr(),32);
808+ //strncpy(name,ch->info.name,32);
809+ name[32]=0;
810+ //if (strlen(ch->info.name) > 32)
811+ if (strlen(sjis.cstr()) > 32) //JP-Patch
812+ strcat(name,"...");
813+
814+ sprintf(str,"%s (%d kb/s %s)",name,ch->info.bitrate,ChanInfo::getTypeStr(ch->info.contentType));
815+
816+ HMENU opMenu = CreatePopupMenu();
817+ InsertMenu(opMenu,0,MF_BYPOSITION,INFO_CMD+numActive,"Info");
818+ if (ch->info.url.isValidURL())
819+ InsertMenu(opMenu,0,MF_BYPOSITION,URL_CMD+numActive,"URL");
820+ InsertMenu(opMenu,0,MF_BYPOSITION,PLAY_CMD+numActive,"Play");
821+
822+ UINT fl = MF_BYPOSITION|MF_POPUP;
823+ if (ch)
824+ fl |= (ch->isPlaying()?MF_CHECKED:0);
825+
826+ InsertMenu(cm,0,fl,(UINT)opMenu,str);
827+
828+ numActive++;
829+
830+ ch=ch->next;
831+ }
832+
833+
834+ //if (!numActive)
835+ // InsertMenu(cm,0,MF_BYPOSITION,0,"<No channels>");
836+
837+
838+
839+
840+}
841+
842+
843+//
844+// flipNotifyPopup(id, flag)
845+void flipNotifyPopup(int id, ServMgr::NOTIFY_TYPE nt)
846+{
847+ int mask = peercastInst->getNotifyMask();
848+
849+ mask ^= nt;
850+ if (mask & nt)
851+ CheckMenuItem(trayMenu,id,MF_CHECKED|MF_BYCOMMAND);
852+ else
853+ CheckMenuItem(trayMenu,id,MF_UNCHECKED|MF_BYCOMMAND);
854+
855+ peercastInst->setNotifyMask(mask);
856+ peercastInst->saveSettings();
857+}
858+
859+
860+static void showHTML(const char *file)
861+{
862+ char url[256];
863+ sprintf(url,"%s/%s",servMgr->htmlPath,file);
864+
865+// sys->callLocalURL(url,servMgr->serverHost.port);
866+ sys->callLocalURL(url, // for PCRaw (url)
867+ (servMgr->allowServer1&Servent::ALLOW_HTML)?(servMgr->serverHost.port):(servMgr->serverHost.port+1));
868+}
869+
870+static ChanInfo getChannelInfo(int index)
871+{
872+ Channel *c = chanMgr->findChannelByIndex(index);
873+ if (c)
874+ return c->info;
875+
876+ ChanInfo info;
877+ return info;
878+}
879+
880+//
881+// FUNCTION: WndProc(HWND, unsigned, WORD, LONG)
882+//
883+// PURPOSE: Processes messages for the main window.
884+//
885+// WM_COMMAND - process the application menu
886+// WM_PAINT - Paint the main window
887+// WM_DESTROY - post a quit message and return
888+//
889+//
890+LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
891+{
892+ int wmId, wmEvent;
893+ POINT point;
894+ char buf[1024];
895+
896+ if(message == g_iTaskbarCreated) // for PCRaw (tray icon)
897+ loadIcons(hInst, hWnd);
898+
899+ switch (message)
900+ {
901+ case WM_SHOWGUI:
902+ createGUI(hWnd);
903+ break;
904+
905+
906+ case WM_TRAYICON:
907+ switch((UINT)lParam)
908+ {
909+ case WM_LBUTTONDOWN:
910+ if (allowTrayMenu)
911+ SendMessage(hWnd,WM_SHOWMENU,2,0);
912+ SetForegroundWindow(hWnd);
913+ break;
914+ case WM_RBUTTONDOWN:
915+ if (allowTrayMenu)
916+ SendMessage(hWnd,WM_SHOWMENU,1,0);
917+ SetForegroundWindow(hWnd);
918+ break;
919+ case WM_LBUTTONDBLCLK:
920+ createGUI(hWnd);
921+ break;
922+ }
923+ break;
924+
925+ case WM_COPYDATA:
926+ {
927+ COPYDATASTRUCT *pc = (COPYDATASTRUCT *)lParam;
928+ LOG_DEBUG("URL request: %s",pc->lpData);
929+ if (pc->dwData == WM_PLAYCHANNEL)
930+ {
931+ ChanInfo info;
932+ servMgr->procConnectArgs((char *)pc->lpData,info);
933+ chanMgr->findAndPlayChannel(info,false);
934+ }
935+ //sys->callLocalURL((const char *)pc->lpData,servMgr->serverHost.port);
936+ }
937+ break;
938+ case WM_GETPORTNUMBER:
939+ {
940+ int port;
941+ port=servMgr->serverHost.port;
942+ ReplyMessage(port);
943+ }
944+ break;
945+
946+ case WM_SHOWMENU:
947+ {
948+ if (servMgr->saveGuiPos){
949+ CheckMenuItem(trayMenu, ID_POPUP_SAVE_GUI_POS, MF_CHECKED|MF_BYCOMMAND);
950+ } else {
951+ CheckMenuItem(trayMenu, ID_POPUP_SAVE_GUI_POS, MF_UNCHECKED|MF_BYCOMMAND);
952+ }
953+
954+ SetForegroundWindow(hWnd);
955+ bool skipMenu=false;
956+
957+ allowTrayMenu = false;
958+
959+ // check for notifications
960+ if (currNotify & ServMgr::NT_UPGRADE)
961+ {
962+ if (servMgr->downloadURL[0])
963+ {
964+ if ((sys->getTime()-seenNewVersionTime) > (60*60)) // notify every hour
965+ {
966+ if (MessageBox(hWnd,"A newer version of PeerCast is available, press OK to upgrade.","PeerCast",MB_OKCANCEL|MB_APPLMODAL|MB_ICONEXCLAMATION) == IDOK)
967+ sys->getURL(servMgr->downloadURL);
968+
969+ seenNewVersionTime=sys->getTime();
970+ skipMenu=true;
971+ }
972+ }
973+ }
974+
975+
976+ if (!skipMenu)
977+ {
978+ RECT rcWnd;
979+ HMENU menu;
980+ UINT flg = 0;
981+
982+ SystemParametersInfo(SPI_GETWORKAREA, 0, &rcWnd, 0);
983+ GetCursorPos(&point);
984+
985+ if (point.x < rcWnd.left){
986+ point.x = rcWnd.left;
987+ flg |= TPM_LEFTALIGN;
988+ }
989+ if (point.x > rcWnd.right){
990+ point.x = rcWnd.right;
991+ flg |= TPM_RIGHTALIGN;
992+ }
993+ if (point.y < rcWnd.top){
994+ point.y = rcWnd.top;
995+ flg |= TPM_TOPALIGN;
996+ }
997+ if (point.y > rcWnd.bottom){
998+ point.y = rcWnd.bottom;
999+ flg |= TPM_BOTTOMALIGN;
1000+ }
1001+ if (flg == 0){
1002+ flg = TPM_RIGHTALIGN;
1003+ }
1004+
1005+ switch (wParam)
1006+ {
1007+ case 1:
1008+ menu = GetSubMenu(trayMenu,0);
1009+ addAllChannelsMenu(GetSubMenu(menu,0));
1010+ addRelayedChannelsMenu(GetSubMenu(menu,1));
1011+ break;
1012+ case 2:
1013+ menu = GetSubMenu(ltrayMenu,0);
1014+ addAllChannelsMenu(menu);
1015+ break;
1016+ }
1017+ if (!TrackPopupMenu(menu,flg,point.x,point.y,0,hWnd,NULL))
1018+ {
1019+ LOG_ERROR("Can`t track popup menu: %d",GetLastError());
1020+ }
1021+ PostMessage(hWnd,WM_NULL,0,0);
1022+
1023+ }
1024+ allowTrayMenu = true;
1025+ }
1026+ break;
1027+
1028+ case WM_CREATE:
1029+ if (showGUI)
1030+ createGUI(hWnd);
1031+ break;
1032+
1033+ case WM_COMMAND:
1034+ wmId = LOWORD(wParam);
1035+ wmEvent = HIWORD(wParam);
1036+
1037+ if ((wmId >= INFO_CMD) && (wmId < INFO_CMD+MAX_CHANNELS))
1038+ {
1039+ int c = wmId - INFO_CMD;
1040+ chanInfo = getChannelInfo(c);
1041+ chanInfoIsRelayed = false;
1042+ if (winDistinctionNT)
1043+ DialogBox(hInst, (LPCTSTR)IDD_CHANINFO, hWnd, (DLGPROC)ChanInfoProc);
1044+ else
1045+ {
1046+ HWND WKDLG; //JP-Patch
1047+ WKDLG = CreateDialog(hInst, (LPCTSTR)IDD_CHANINFO, hWnd, (DLGPROC)ChanInfoProc); //JP-Patch
1048+ ShowWindow(WKDLG,SW_SHOWNORMAL); //JP-Patch
1049+ }
1050+ return 0;
1051+ }
1052+ if ((wmId >= URL_CMD) && (wmId < URL_CMD+MAX_CHANNELS))
1053+ {
1054+ int c = wmId - URL_CMD;
1055+ chanInfo = getChannelInfo(c);
1056+ if (chanInfo.url.isValidURL())
1057+ sys->getURL(chanInfo.url);
1058+ return 0;
1059+ }
1060+ if ((wmId >= PLAY_CMD) && (wmId < PLAY_CMD+MAX_CHANNELS))
1061+ {
1062+ int c = wmId - PLAY_CMD;
1063+ chanInfo = getChannelInfo(c);
1064+ chanMgr->findAndPlayChannel(chanInfo,false);
1065+ return 0;
1066+ }
1067+ if ((wmId >= RELAY_CMD) && (wmId < RELAY_CMD+MAX_CHANNELS))
1068+ {
1069+ int c = wmId - RELAY_CMD;
1070+ chanInfo = getChannelInfo(c);
1071+ chanMgr->findAndPlayChannel(chanInfo,true);
1072+ return 0;
1073+ }
1074+
1075+ // Parse the menu selections:
1076+ switch (wmId)
1077+ {
1078+ case ID_POPUP_SHOWMESSAGES_PEERCAST:
1079+ flipNotifyPopup(ID_POPUP_SHOWMESSAGES_PEERCAST,ServMgr::NT_PEERCAST);
1080+ break;
1081+ case ID_POPUP_SHOWMESSAGES_BROADCASTERS:
1082+ flipNotifyPopup(ID_POPUP_SHOWMESSAGES_BROADCASTERS,ServMgr::NT_BROADCASTERS);
1083+ break;
1084+ case ID_POPUP_SHOWMESSAGES_TRACKINFO:
1085+ flipNotifyPopup(ID_POPUP_SHOWMESSAGES_TRACKINFO,ServMgr::NT_TRACKINFO);
1086+ break;
1087+
1088+ case ID_POPUP_ABOUT:
1089+ case IDM_ABOUT:
1090+ DialogBox(hInst, (LPCTSTR)IDD_ABOUTBOX, hWnd, (DLGPROC)About);
1091+ break;
1092+ case ID_POPUP_SHOWGUI:
1093+ case IDM_SETTINGS_GUI:
1094+ case ID_POPUP_ADVANCED_SHOWGUI:
1095+ {
1096+ createGUI(hWnd);
1097+ break;
1098+ }
1099+ case ID_POPUP_YELLOWPAGES:
1100+ sys->getURL("http://yp.peercast.org/");
1101+ break;
1102+ case ID_POPUP_YELLOWPAGES1:
1103+ sprintf(buf, "http://%s",servMgr->rootHost.cstr());
1104+ sys->getURL(buf);
1105+ break;
1106+ case ID_POPUP_YELLOWPAGES2:
1107+ sprintf(buf, "http://%s",servMgr->rootHost2.cstr());
1108+ sys->getURL(buf);
1109+ break;
1110+
1111+ case ID_POPUP_ADVANCED_VIEWLOG:
1112+ showHTML("viewlog.html");
1113+ break;
1114+ case ID_POPUP_ADVANCED_SAVESETTINGS:
1115+ servMgr->saveSettings(iniFileName.cstr());
1116+ break;
1117+ case ID_POPUP_ADVANCED_INFORMATION:
1118+ showHTML("index.html");
1119+ break;
1120+ case ID_FIND_CHANNELS:
1121+ case ID_POPUP_ADVANCED_ALLCHANNELS:
1122+ case ID_POPUP_UPGRADE:
1123+ sys->callLocalURL("admin?cmd=upgrade",servMgr->serverHost.port);
1124+ break;
1125+ case ID_POPUP_ADVANCED_RELAYEDCHANNELS:
1126+ case ID_POPUP_FAVORITES_EDIT:
1127+ showHTML("relays.html");
1128+ break;
1129+ case ID_POPUP_ADVANCED_BROADCAST:
1130+ showHTML("broadcast.html");
1131+ break;
1132+ case ID_POPUP_SETTINGS:
1133+ showHTML("settings.html");
1134+ break;
1135+ case ID_POPUP_CONNECTIONS:
1136+ showHTML("connections.html");
1137+ break;
1138+ case ID_POPUP_HELP:
1139+ sys->getURL("http://www.peercast.org/help.php");
1140+ break;
1141+
1142+ case ID_POPUP_SAVE_GUI_POS:
1143+ if (servMgr->saveGuiPos){
1144+ servMgr->saveGuiPos = false;
1145+ CheckMenuItem(trayMenu, ID_POPUP_SAVE_GUI_POS, MF_UNCHECKED|MF_BYCOMMAND);
1146+ } else {
1147+ servMgr->saveGuiPos = true;
1148+ CheckMenuItem(trayMenu, ID_POPUP_SAVE_GUI_POS, MF_CHECKED|MF_BYCOMMAND);
1149+ }
1150+ peercastInst->saveSettings();
1151+ break;
1152+
1153+ case ID_POPUP_KEEP_DOWNSTREAMS:
1154+ if (servMgr->keepDownstreams){
1155+ servMgr->keepDownstreams = false;
1156+ CheckMenuItem(trayMenu, ID_POPUP_KEEP_DOWNSTREAMS, MF_UNCHECKED|MF_BYCOMMAND);
1157+ } else {
1158+ servMgr->keepDownstreams = true;
1159+ CheckMenuItem(trayMenu, ID_POPUP_KEEP_DOWNSTREAMS, MF_CHECKED|MF_BYCOMMAND);
1160+ }
1161+ //peercastInst->saveSettings();
1162+ break;
1163+
1164+ case ID_POPUP_EXIT_CONFIRM:
1165+ case IDM_EXIT:
1166+ DestroyWindow(hWnd);
1167+ break;
1168+ default:
1169+ return DefWindowProc(hWnd, message, wParam, lParam);
1170+ }
1171+ break;
1172+ case WM_DESTROY:
1173+ PostQuitMessage(0);
1174+ break;
1175+ default:
1176+ return DefWindowProc(hWnd, message, wParam, lParam);
1177+ }
1178+ return 0;
1179+}
1180+// Mesage handler for about box.
1181+LRESULT CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
1182+{
1183+ switch (message)
1184+ {
1185+ case WM_INITDIALOG:
1186+ //SendDlgItemMessage(hDlg,IDC_ABOUTVER,WM_SETTEXT,0,(LONG)PCX_AGENT);
1187+// SendDlgItemMessage(hDlg,IDC_ABOUTVER,WM_SETTEXT,0,(LONG)PCX_AGENTJP);
1188+ //SendDlgItemMessage(hDlg,IDC_ABOUTVER,WM_SETTEXT,0,(LONG)PCX_AGENTVP);
1189+
1190+ if (version_ex)
1191+ {
1192+ SendDlgItemMessage(hDlg,IDC_ABOUTVER,WM_SETTEXT,0,(LPARAM)PCX_AGENTEX); // x64対応
1193+ } else
1194+ {
1195+ SendDlgItemMessage(hDlg,IDC_ABOUTVER,WM_SETTEXT,0,(LONG)PCX_AGENTVP);
1196+ }
1197+
1198+ return TRUE;
1199+
1200+ case WM_COMMAND:
1201+ switch (LOWORD(wParam))
1202+ {
1203+ case IDOK:
1204+ case IDCANCEL:
1205+ EndDialog(hDlg, LOWORD(wParam));
1206+ return TRUE;
1207+ case IDC_BUTTON1:
1208+ sys->getURL("http://www.peercast.org");
1209+ EndDialog(hDlg, LOWORD(wParam));
1210+ return TRUE;
1211+
1212+ }
1213+ break;
1214+ case WM_DESTROY:
1215+ break;
1216+ }
1217+ return FALSE;
1218+}
1219+
1220+// Mesage handler for chaninfo box
1221+LRESULT CALLBACK ChanInfoProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
1222+{
1223+ switch (message)
1224+ {
1225+ case WM_INITDIALOG:
1226+ {
1227+ char str[1024];
1228+ //strcpy(str,chanInfo.track.artist.cstr());
1229+ strcpy(str,chanInfo.track.artist); //JP-Patch
1230+ strcat(str," - ");
1231+ //strcat(str,chanInfo.track.title.cstr());
1232+ strcat(str,chanInfo.track.title);
1233+ String name,track,comment,desc,genre; //JP-Patch
1234+ name = chanInfo.name; //JP-Patch
1235+ track = str; //JP-Patch
1236+ comment = chanInfo.comment; //JP-Patch
1237+ desc = chanInfo.desc; //JP-Patc
1238+ genre = chanInfo.genre; //JP-Patch
1239+ name.convertTo(String::T_SJIS); //JP-Patc
1240+ track.convertTo(String::T_SJIS); //JP-Patch
1241+ comment.convertTo(String::T_SJIS); //JP-Patch
1242+ desc.convertTo(String::T_SJIS); //JP-Patch
1243+ genre.convertTo(String::T_SJIS); //JP-Patch
1244+
1245+ //SendDlgItemMessage(hDlg,IDC_EDIT_NAME,WM_SETTEXT,0,(LONG)chanInfo.name.cstr());
1246+ SendDlgItemMessage(hDlg,IDC_EDIT_NAME,WM_SETTEXT,0,(LONG)name.cstr()); //JP-Patch
1247+ //SendDlgItemMessage(hDlg,IDC_EDIT_PLAYING,WM_SETTEXT,0,(LONG)str);
1248+ SendDlgItemMessage(hDlg,IDC_EDIT_PLAYING,WM_SETTEXT,0,(LONG)track.cstr()); //JP-Patch
1249+ //SendDlgItemMessage(hDlg,IDC_EDIT_MESSAGE,WM_SETTEXT,0,(LONG)chanInfo.comment.cstr());
1250+ SendDlgItemMessage(hDlg,IDC_EDIT_MESSAGE,WM_SETTEXT,0,(LONG)comment.cstr()); //JP-Patch
1251+ //SendDlgItemMessage(hDlg,IDC_EDIT_DESC,WM_SETTEXT,0,(LONG)chanInfo.desc.cstr());
1252+ SendDlgItemMessage(hDlg,IDC_EDIT_DESC,WM_SETTEXT,0,(LONG)desc.cstr()); //JP-Patch
1253+ //SendDlgItemMessage(hDlg,IDC_EDIT_GENRE,WM_SETTEXT,0,(LONG)chanInfo.genre.cstr());
1254+ SendDlgItemMessage(hDlg,IDC_EDIT_GENRE,WM_SETTEXT,0,(LONG)genre.cstr()); //JP-Patch
1255+
1256+ sprintf(str,"%d kb/s %s",chanInfo.bitrate,ChanInfo::getTypeStr(chanInfo.contentType));
1257+ SendDlgItemMessage(hDlg,IDC_FORMAT,WM_SETTEXT,0,(LONG)str);
1258+
1259+
1260+ if (!chanInfo.url.isValidURL())
1261+ EnableWindow(GetDlgItem(hDlg,IDC_CONTACT),false);
1262+
1263+ Channel *ch = chanMgr->findChannelByID(chanInfo.id);
1264+ if (ch)
1265+ {
1266+ SendDlgItemMessage(hDlg,IDC_EDIT_STATUS,WM_SETTEXT,0,(LONG)ch->getStatusStr());
1267+ SendDlgItemMessage(hDlg, IDC_KEEP,BM_SETCHECK, ch->stayConnected, 0);
1268+ }else
1269+ {
1270+ SendDlgItemMessage(hDlg,IDC_EDIT_STATUS,WM_SETTEXT,0,(LONG)"OK");
1271+ EnableWindow(GetDlgItem(hDlg,IDC_KEEP),false);
1272+ }
1273+
1274+
1275+
1276+ POINT point;
1277+ RECT rect,drect;
1278+ HWND hDsk = GetDesktopWindow();
1279+ GetWindowRect(hDsk,&drect);
1280+ GetWindowRect(hDlg,&rect);
1281+ GetCursorPos(&point);
1282+
1283+ POINT pos,size;
1284+ size.x = rect.right-rect.left;
1285+ size.y = rect.bottom-rect.top;
1286+
1287+ if (point.x-drect.left < size.x)
1288+ pos.x = point.x;
1289+ else
1290+ pos.x = point.x-size.x;
1291+
1292+ if (point.y-drect.top < size.y)
1293+ pos.y = point.y;
1294+ else
1295+ pos.y = point.y-size.y;
1296+
1297+ SetWindowPos(hDlg,HWND_TOPMOST,pos.x,pos.y,size.x,size.y,0);
1298+ chWnd = hDlg;
1299+ }
1300+ return TRUE;
1301+
1302+ case WM_COMMAND:
1303+ {
1304+ char str[1024],idstr[64];
1305+ chanInfo.id.toStr(idstr);
1306+
1307+ switch (LOWORD(wParam))
1308+ {
1309+ case IDC_CONTACT:
1310+ {
1311+ sys->getURL(chanInfo.url);
1312+ return TRUE;
1313+ }
1314+ case IDC_DETAILS:
1315+ {
1316+ sprintf(str,"admin?page=chaninfo&id=%s&relay=%d",idstr,chanInfoIsRelayed);
1317+ sys->callLocalURL(str,servMgr->serverHost.port);
1318+ return TRUE;
1319+ }
1320+ case IDC_KEEP:
1321+ {
1322+ Channel *ch = chanMgr->findChannelByID(chanInfo.id);
1323+ if (ch)
1324+ ch->stayConnected = SendDlgItemMessage(hDlg, IDC_KEEP,BM_GETCHECK, 0, 0) == BST_CHECKED;;
1325+ return TRUE;
1326+ }
1327+
1328+
1329+ case IDC_PLAY:
1330+ {
1331+ chanMgr->findAndPlayChannel(chanInfo,false);
1332+ return TRUE;
1333+ }
1334+
1335+ }
1336+ }
1337+ break;
1338+
1339+ case WM_CLOSE:
1340+ if (winDistinctionNT)
1341+ EndDialog(hDlg, 0);
1342+ else
1343+ DestroyWindow(hDlg); //JP-Patch
1344+ break;
1345+
1346+ case WM_ACTIVATE:
1347+ if (LOWORD(wParam) == WA_INACTIVE)
1348+ if (winDistinctionNT)
1349+ EndDialog(hDlg, 0);
1350+ else
1351+ DestroyWindow(hDlg); //JP-Patch
1352+ break;
1353+ case WM_DESTROY:
1354+ chWnd = NULL;
1355+ break;
1356+
1357+
1358+ }
1359+ return FALSE;
1360+}
--- /dev/null
+++ b/PeerCast.root/PeerCast/ui/win32/Simple_vp/Simple.h
@@ -0,0 +1,65 @@
1+
2+// ------------------------------------------------
3+// File : simple.h
4+// Date: 4-apr-2002
5+// Author: giles
6+//
7+// (c) 2002 peercast.org
8+// ------------------------------------------------
9+// This program is free software; you can redistribute it and/or modify
10+// it under the terms of the GNU General Public License as published by
11+// the Free Software Foundation; either version 2 of the License, or
12+// (at your option) any later version.
13+
14+// This program is distributed in the hope that it will be useful,
15+// but WITHOUT ANY WARRANTY; without even the implied warranty of
16+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17+// GNU General Public License for more details.
18+// ------------------------------------------------
19+
20+#if !defined(AFX_SIMPLE_H__F2E64B1B_62DE_473C_A6B6_E7826D41E0FA__INCLUDED_)
21+#define AFX_SIMPLE_H__F2E64B1B_62DE_473C_A6B6_E7826D41E0FA__INCLUDED_
22+
23+#if _MSC_VER > 1000
24+#pragma once
25+#endif // _MSC_VER > 1000
26+
27+#include "resource.h"
28+
29+// ---------------------------------
30+class MyPeercastInst : public PeercastInstance
31+{
32+public:
33+ virtual Sys * APICALL createSys();
34+};
35+// ---------------------------------
36+class MyPeercastApp : public PeercastApplication
37+{
38+public:
39+ MyPeercastApp ()
40+ {
41+ //logFile.openWriteReplace("log.txt");
42+ }
43+
44+ virtual const char * APICALL getPath();
45+
46+ virtual const char * APICALL getIniFilename();
47+ virtual const char *APICALL getClientTypeOS();
48+ virtual void APICALL openLogFile(); //JP-EX
49+ virtual void APICALL getDirectory(); //JP-EX
50+ virtual bool APICALL clearTemp(); //JP-EX
51+ virtual void APICALL printLog(LogBuffer::TYPE t, const char *str);
52+
53+ virtual void APICALL updateSettings();
54+ virtual void APICALL notifyMessage(ServMgr::NOTIFY_TYPE, const char *);
55+
56+ virtual void APICALL channelStart(ChanInfo *);
57+ virtual void APICALL channelStop(ChanInfo *);
58+ virtual void APICALL channelUpdate(ChanInfo *);
59+
60+ FileStream logFile;
61+
62+};
63+
64+
65+#endif // !defined(AFX_SIMPLE_H__F2E64B1B_62DE_473C_A6B6_E7826D41E0FA__INCLUDED_)
Binary files /dev/null and b/PeerCast.root/PeerCast/ui/win32/Simple_vp/Simple.ico differ
--- /dev/null
+++ b/PeerCast.root/PeerCast/ui/win32/Simple_vp/Simple.rc
@@ -0,0 +1,364 @@
1+//Microsoft Developer Studio generated resource script.
2+//
3+#include "resource.h"
4+
5+// Generated Help ID header file
6+#define APSTUDIO_HIDDEN_SYMBOLS
7+#include "resource.hm"
8+#undef APSTUDIO_HIDDEN_SYMBOLS
9+
10+#define APSTUDIO_READONLY_SYMBOLS
11+/////////////////////////////////////////////////////////////////////////////
12+//
13+// Generated from the TEXTINCLUDE 2 resource.
14+//
15+#define APSTUDIO_HIDDEN_SYMBOLS
16+#include "windows.h"
17+#undef APSTUDIO_HIDDEN_SYMBOLS
18+#include "resource.h"
19+
20+/////////////////////////////////////////////////////////////////////////////
21+#undef APSTUDIO_READONLY_SYMBOLS
22+
23+/////////////////////////////////////////////////////////////////////////////
24+// ニュートラル (システム標準) resources
25+
26+#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_NEUSD)
27+#ifdef _WIN32
28+LANGUAGE LANG_NEUTRAL, SUBLANG_SYS_DEFAULT
29+#pragma code_page(932)
30+#endif //_WIN32
31+
32+/////////////////////////////////////////////////////////////////////////////
33+//
34+// Menu
35+//
36+
37+IDR_TRAYMENU MENU DISCARDABLE
38+BEGIN
39+ POPUP "popup"
40+ BEGIN
41+ MENUITEM "情報", ID_POPUP_ABOUT
42+ MENUITEM "ヘルプ", ID_POPUP_HELP
43+ MENUITEM SEPARATOR
44+ POPUP "ポップアップメッセージ"
45+ BEGIN
46+ MENUITEM "PeerCast", ID_POPUP_SHOWMESSAGES_PEERCAST
47+
48+ MENUITEM "配信者", ID_POPUP_SHOWMESSAGES_BROADCASTERS
49+
50+ MENUITEM "トラック情報", ID_POPUP_SHOWMESSAGES_TRACKINFO
51+
52+ MENUITEM "アップデート情報", ID_POPUP_POPUPMESSAGES_UPGRADEALERTS
53+ , CHECKED, GRAYED
54+ END
55+ POPUP "高度"
56+ BEGIN
57+ MENUITEM "情報", ID_POPUP_ADVANCED_INFORMATION
58+
59+ MENUITEM "リレーチャンネル", ID_POPUP_ADVANCED_RELAYEDCHANNELS
60+
61+ MENUITEM "配信", ID_POPUP_ADVANCED_BROADCAST
62+
63+ MENUITEM "コネクション", ID_POPUP_CONNECTIONS
64+ MENUITEM "ログ", ID_POPUP_ADVANCED_VIEWLOG
65+
66+ MENUITEM "設定", ID_POPUP_SETTINGS
67+ MENUITEM "GUIを開く", ID_POPUP_ADVANCED_SHOWGUI
68+
69+ END
70+ POPUP "追加設定"
71+ BEGIN
72+ MENUITEM "終了時、表示位置を保存", ID_POPUP_SAVE_GUI_POS
73+ , CHECKED
74+ MENUITEM "再接続時下流維持", ID_POPUP_KEEP_DOWNSTREAMS
75+ , CHECKED
76+ END
77+ MENUITEM SEPARATOR
78+ POPUP "終了"
79+ BEGIN
80+ MENUITEM "はい", ID_POPUP_EXIT_CONFIRM
81+ MENUITEM "いいえ", ID_POPUP_EXIT_NO
82+ END
83+ END
84+END
85+
86+IDR_LTRAYMENU MENU DISCARDABLE
87+BEGIN
88+ POPUP "popup"
89+ BEGIN
90+ MENUITEM SEPARATOR
91+ MENUITEM "イエローページ", ID_POPUP_YELLOWPAGES
92+ POPUP "イエローページ"
93+ BEGIN
94+ MENUITEM "AAA", ID_POPUP_YELLOWPAGES1
95+ MENUITEM "BBB", ID_POPUP_YELLOWPAGES2
96+ END
97+ END
98+END
99+
100+
101+/////////////////////////////////////////////////////////////////////////////
102+//
103+// Dialog
104+//
105+
106+IDD_MAINWINDOW DIALOGEX 0, 0, 298, 341
107+STYLE DS_CENTER | WS_MINIMIZEBOX | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME
108+EXSTYLE WS_EX_APPWINDOW
109+CAPTION "PeerCast"
110+FONT 9, "MS UI Gothic", 0, 0, 0x1
111+BEGIN
112+ LISTBOX IDC_LIST1,3,291,291,43,LBS_NOINTEGRALHEIGHT | WS_VSCROLL |
113+ WS_TABSTOP
114+ CONTROL "有効",IDC_CHECK1,"Button",BS_AUTOCHECKBOX | BS_PUSHLIKE |
115+ WS_TABSTOP,9,29,60,20,WS_EX_TRANSPARENT
116+ EDITTEXT IDC_EDIT1,127,18,47,12,ES_AUTOHSCROLL
117+ RTEXT "ポート :",IDC_STATIC,107,20,18,8
118+ LISTBOX IDC_LIST2,3,206,291,71,LBS_OWNERDRAWFIXED |
119+ LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
120+ LTEXT "ログ",IDC_STATIC_LOG,3,282,13,8
121+ LTEXT "コネクション",IDC_STATIC_CONNECTION,3,184,40,8
122+ GROUPBOX "",IDC_STATIC,3,4,291,49
123+ PUSHBUTTON "クリア",IDC_BUTTON1,35,279,25,11
124+ LISTBOX IDC_LIST3,3,81,291,67,LBS_OWNERDRAWFIXED |
125+ LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
126+ PUSHBUTTON "切断",IDC_BUTTON5,67,65,43,13
127+ GROUPBOX "リレー",IDC_GROUPBOX_RELAY,3,54,291,96
128+ EDITTEXT IDC_EDIT3,127,34,47,12,ES_PASSWORD | ES_AUTOHSCROLL
129+ RTEXT "パスワード :",IDC_STATIC,89,36,36,8
130+ CONTROL "デバッグ",IDC_LOGDEBUG,"Button",BS_AUTOCHECKBOX |
131+ BS_PUSHLIKE | WS_TABSTOP,127,279,32,11
132+ CONTROL "ネットワーク",IDC_LOGNETWORK,"Button",BS_AUTOCHECKBOX |
133+ BS_PUSHLIKE | WS_TABSTOP,185,279,35,11
134+ CONTROL "エラー",IDC_LOGERRORS,"Button",BS_AUTOCHECKBOX |
135+ BS_PUSHLIKE | WS_TABSTOP,159,279,25,11
136+ CONTROL "停止",IDC_CHECK9,"Button",BS_AUTOCHECKBOX | BS_PUSHLIKE |
137+ WS_TABSTOP,60,279,30,11
138+ PUSHBUTTON "再生",IDC_BUTTON8,10,65,22,13
139+ CONTROL "チャンネル",IDC_LOGCHANNELS,"Button",BS_AUTOCHECKBOX |
140+ BS_PUSHLIKE | WS_TABSTOP,221,279,35,11
141+ PUSHBUTTON "再接続",IDC_BUTTON3,41,65,24,13
142+ EDITTEXT IDC_EDIT9,33,159,261,14,ES_AUTOHSCROLL
143+ CONTROL "DJ",IDC_CHECK11,"Button",BS_AUTOCHECKBOX | BS_PUSHLIKE |
144+ WS_TABSTOP,5,160,23,12
145+ RTEXT "最大リレー数 :",IDC_STATIC,194,36,40,8
146+ EDITTEXT IDC_MAXRELAYS,241,33,40,14,ES_AUTOHSCROLL | ES_NUMBER
147+ PUSHBUTTON "キープ",IDC_BUTTON9,112,65,24,13
148+ PUSHBUTTON "切断",IDC_BUTTON6,47,179,43,13
149+ LTEXT "Peercast-VP",IDC_STATIC,21,14,39,8
150+END
151+
152+IDD_CHANINFO DIALOGEX 0, 0, 184, 207
153+STYLE DS_SETFOREGROUND | WS_POPUP | WS_CAPTION | WS_SYSMENU
154+EXSTYLE WS_EX_TOOLWINDOW
155+CAPTION "Channel Information"
156+FONT 9, "MS UI Gothic", 400, 0, 0x80
157+BEGIN
158+ LTEXT "名前:",IDC_STATIC,7,8,24,9
159+ EDITTEXT IDC_EDIT_NAME,7,18,170,21,ES_MULTILINE | ES_READONLY |
160+ NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_STATICEDGE
161+ LTEXT "内容:",IDC_STATIC,7,79,93,9
162+ EDITTEXT IDC_EDIT_PLAYING,8,90,170,21,ES_MULTILINE | ES_READONLY |
163+ NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_STATICEDGE
164+ LTEXT "DJ メッセージ:",IDC_STATIC,7,117,41,9
165+ EDITTEXT IDC_EDIT_MESSAGE,8,128,170,21,ES_MULTILINE | ES_READONLY |
166+ NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_STATICEDGE
167+ PUSHBUTTON "URL",IDC_CONTACT,7,185,34,15,0,0,HIDC_CONTACT
168+ LTEXT "詳細:",IDC_STATIC,7,43,67,8
169+ EDITTEXT IDC_EDIT_DESC,8,53,170,21,ES_MULTILINE | ES_READONLY |
170+ NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_STATICEDGE
171+ RTEXT "形式",IDC_FORMAT,69,80,107,8
172+ LTEXT "ジャンル:",IDC_STATIC,63,5,22,8
173+ EDITTEXT IDC_EDIT_GENRE,87,3,90,12,ES_AUTOHSCROLL | ES_READONLY |
174+ NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_STATICEDGE
175+ CONTROL "キープ",IDC_KEEP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,
176+ 144,188,33,10
177+ LTEXT "ステータス:",IDC_STATIC,7,153,41,9
178+ EDITTEXT IDC_EDIT_STATUS,8,163,82,12,ES_READONLY | NOT WS_BORDER |
179+ NOT WS_TABSTOP,WS_EX_STATICEDGE
180+ PUSHBUTTON "再生",IDC_PLAY,56,185,34,15
181+END
182+
183+
184+/////////////////////////////////////////////////////////////////////////////
185+//
186+// DESIGNINFO
187+//
188+
189+#ifdef APSTUDIO_INVOKED
190+GUIDELINES DESIGNINFO MOVEABLE PURE
191+BEGIN
192+ IDD_MAINWINDOW, DIALOG
193+ BEGIN
194+ LEFTMARGIN, 3
195+ RIGHTMARGIN, 294
196+ TOPMARGIN, 3
197+ BOTTOMMARGIN, 336
198+ END
199+
200+ IDD_CHANINFO, DIALOG
201+ BEGIN
202+ LEFTMARGIN, 7
203+ RIGHTMARGIN, 177
204+ TOPMARGIN, 7
205+ BOTTOMMARGIN, 200
206+ END
207+END
208+#endif // APSTUDIO_INVOKED
209+
210+#endif // ニュートラル (システム標準) resources
211+/////////////////////////////////////////////////////////////////////////////
212+
213+
214+/////////////////////////////////////////////////////////////////////////////
215+// 英語 (アメリカ) resources
216+
217+#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
218+#ifdef _WIN32
219+LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
220+#pragma code_page(1252)
221+#endif //_WIN32
222+
223+/////////////////////////////////////////////////////////////////////////////
224+//
225+// Menu
226+//
227+
228+IDC_SIMPLE MENU DISCARDABLE
229+BEGIN
230+ POPUP "&File"
231+ BEGIN
232+ MENUITEM "E&xit", IDM_EXIT
233+ END
234+ POPUP "&Help"
235+ BEGIN
236+ MENUITEM "&About ...", IDM_ABOUT
237+ END
238+ POPUP "Settings"
239+ BEGIN
240+ MENUITEM "GUI", IDM_SETTINGS_GUI
241+ END
242+END
243+
244+IDR_VERMENU MENU DISCARDABLE
245+BEGIN
246+ POPUP "popup"
247+ BEGIN
248+ MENUITEM "Please upgrade PeerCast. Click here to download.",
249+ ID_POPUP_UPGRADE
250+ END
251+END
252+
253+
254+/////////////////////////////////////////////////////////////////////////////
255+//
256+// Dialog
257+//
258+
259+IDD_ABOUTBOX DIALOG DISCARDABLE 22, 17, 163, 59
260+STYLE DS_MODALFRAME | DS_SETFOREGROUND | DS_CENTER | WS_CAPTION | WS_SYSMENU
261+CAPTION "About"
262+FONT 8, "System"
263+BEGIN
264+ ICON IDI_SIMPLE,IDC_MYICON,14,9,20,20
265+ LTEXT "PeerCast",IDC_ABOUTVER,43,9,103,8,SS_NOPREFIX
266+ LTEXT "Copyright (C) 2005-2007",IDC_STATIC,43,22,119,8
267+ PUSHBUTTON "OK",IDOK,134,40,24,12,WS_GROUP
268+ PUSHBUTTON "www.peercast.org",IDC_BUTTON1,42,40,66,12
269+END
270+
271+
272+/////////////////////////////////////////////////////////////////////////////
273+//
274+// DESIGNINFO
275+//
276+
277+#ifdef APSTUDIO_INVOKED
278+GUIDELINES DESIGNINFO MOVEABLE PURE
279+BEGIN
280+ IDD_ABOUTBOX, DIALOG
281+ BEGIN
282+ BOTTOMMARGIN, 58
283+ END
284+END
285+#endif // APSTUDIO_INVOKED
286+
287+
288+/////////////////////////////////////////////////////////////////////////////
289+//
290+// Icon
291+//
292+
293+// Icon with lowest ID value placed first to ensure application icon
294+// remains consistent on all systems.
295+IDI_SIMPLE ICON DISCARDABLE "Simple.ICO"
296+IDI_SMALL2 ICON DISCARDABLE "small1.ico"
297+IDI_SMALL ICON DISCARDABLE "small3.ico"
298+
299+/////////////////////////////////////////////////////////////////////////////
300+//
301+// Accelerator
302+//
303+
304+IDC_SIMPLE ACCELERATORS MOVEABLE PURE
305+BEGIN
306+ "?", IDM_ABOUT, ASCII, ALT
307+ "/", IDM_ABOUT, ASCII, ALT
308+END
309+
310+
311+#ifdef APSTUDIO_INVOKED
312+/////////////////////////////////////////////////////////////////////////////
313+//
314+// TEXTINCLUDE
315+//
316+
317+2 TEXTINCLUDE MOVEABLE PURE
318+BEGIN
319+ "#define APSTUDIO_HIDDEN_SYMBOLS\r\n"
320+ "#include ""windows.h""\r\n"
321+ "#undef APSTUDIO_HIDDEN_SYMBOLS\r\n"
322+ "#include ""resource.h""\r\n"
323+ "\0"
324+END
325+
326+3 TEXTINCLUDE MOVEABLE PURE
327+BEGIN
328+ "\r\n"
329+ "\0"
330+END
331+
332+1 TEXTINCLUDE MOVEABLE PURE
333+BEGIN
334+ "resource.h\0"
335+END
336+
337+#endif // APSTUDIO_INVOKED
338+
339+
340+/////////////////////////////////////////////////////////////////////////////
341+//
342+// String Table
343+//
344+
345+STRINGTABLE DISCARDABLE
346+BEGIN
347+ IDS_APP_TITLE "PeerCast"
348+END
349+
350+#endif // 英語 (アメリカ) resources
351+/////////////////////////////////////////////////////////////////////////////
352+
353+
354+
355+#ifndef APSTUDIO_INVOKED
356+/////////////////////////////////////////////////////////////////////////////
357+//
358+// Generated from the TEXTINCLUDE 3 resource.
359+//
360+
361+
362+/////////////////////////////////////////////////////////////////////////////
363+#endif // not APSTUDIO_INVOKED
364+
--- /dev/null
+++ b/PeerCast.root/PeerCast/ui/win32/Simple_vp/Simple_vp.vcproj
@@ -0,0 +1,767 @@
1+<?xml version="1.0" encoding="shift_jis"?>
2+<VisualStudioProject
3+ ProjectType="Visual C++"
4+ Version="9.00"
5+ Name="Simple_vp"
6+ ProjectGUID="{E60173A7-1FC8-444B-BBAB-BB3D663D5C05}"
7+ RootNamespace="Simple"
8+ SccProjectName="&quot;$/PeerCast.root/PeerCast&quot;, JCAAAAAA"
9+ SccLocalPath="..\..\.."
10+ SccProvider="MSSCCI:Microsoft Visual SourceSafe"
11+ TargetFrameworkVersion="131072"
12+ >
13+ <Platforms>
14+ <Platform
15+ Name="Win32"
16+ />
17+ </Platforms>
18+ <ToolFiles>
19+ </ToolFiles>
20+ <Configurations>
21+ <Configuration
22+ Name="Private Debug|Win32"
23+ OutputDirectory=".\Simple___Win32_Private_Debug"
24+ IntermediateDirectory=".\Simple___Win32_Private_Debug"
25+ ConfigurationType="1"
26+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
27+ UseOfMFC="0"
28+ ATLMinimizesCRunTimeLibraryUsage="false"
29+ CharacterSet="2"
30+ >
31+ <Tool
32+ Name="VCPreBuildEventTool"
33+ />
34+ <Tool
35+ Name="VCCustomBuildTool"
36+ />
37+ <Tool
38+ Name="VCXMLDataGeneratorTool"
39+ />
40+ <Tool
41+ Name="VCWebServiceProxyGeneratorTool"
42+ />
43+ <Tool
44+ Name="VCMIDLTool"
45+ PreprocessorDefinitions="_DEBUG"
46+ MkTypLibCompatible="true"
47+ SuppressStartupBanner="true"
48+ TargetEnvironment="1"
49+ TypeLibraryName=".\Simple___Win32_Private_Debug/Simple.tlb"
50+ HeaderFileName=""
51+ />
52+ <Tool
53+ Name="VCCLCompilerTool"
54+ Optimization="0"
55+ AdditionalIncludeDirectories="../../../core,../../../core/common"
56+ PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;PRIVATE_BROADCASTER"
57+ MinimalRebuild="true"
58+ BasicRuntimeChecks="3"
59+ RuntimeLibrary="1"
60+ PrecompiledHeaderFile=".\Simple___Win32_Private_Debug/Simple.pch"
61+ AssemblerListingLocation=".\Simple___Win32_Private_Debug/"
62+ ObjectFile=".\Simple___Win32_Private_Debug/"
63+ ProgramDataBaseFileName=".\Simple___Win32_Private_Debug/"
64+ BrowseInformation="1"
65+ WarningLevel="3"
66+ SuppressStartupBanner="true"
67+ DebugInformationFormat="4"
68+ />
69+ <Tool
70+ Name="VCManagedResourceCompilerTool"
71+ />
72+ <Tool
73+ Name="VCResourceCompilerTool"
74+ PreprocessorDefinitions="_DEBUG"
75+ Culture="1033"
76+ />
77+ <Tool
78+ Name="VCPreLinkEventTool"
79+ />
80+ <Tool
81+ Name="VCLinkerTool"
82+ AdditionalDependencies="ws2_32.lib odbc32.lib odbccp32.lib"
83+ OutputFile="Debug/PeerCast.exe"
84+ LinkIncremental="1"
85+ SuppressStartupBanner="true"
86+ GenerateDebugInformation="true"
87+ ProgramDatabaseFile=".\Simple___Win32_Private_Debug/PeerCast.pdb"
88+ SubSystem="2"
89+ RandomizedBaseAddress="1"
90+ DataExecutionPrevention="0"
91+ TargetMachine="1"
92+ />
93+ <Tool
94+ Name="VCALinkTool"
95+ />
96+ <Tool
97+ Name="VCManifestTool"
98+ />
99+ <Tool
100+ Name="VCXDCMakeTool"
101+ />
102+ <Tool
103+ Name="VCBscMakeTool"
104+ SuppressStartupBanner="true"
105+ OutputFile=".\Simple___Win32_Private_Debug/Simple.bsc"
106+ />
107+ <Tool
108+ Name="VCFxCopTool"
109+ />
110+ <Tool
111+ Name="VCAppVerifierTool"
112+ />
113+ <Tool
114+ Name="VCPostBuildEventTool"
115+ Description="Copy exe to program files"
116+ CommandLine="copy debug\peercast.exe &quot;c:\program files\peercast&quot;"
117+ />
118+ </Configuration>
119+ <Configuration
120+ Name="Release|Win32"
121+ OutputDirectory=".\Release"
122+ IntermediateDirectory=".\Release"
123+ ConfigurationType="1"
124+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
125+ UseOfMFC="0"
126+ ATLMinimizesCRunTimeLibraryUsage="false"
127+ CharacterSet="2"
128+ >
129+ <Tool
130+ Name="VCPreBuildEventTool"
131+ />
132+ <Tool
133+ Name="VCCustomBuildTool"
134+ />
135+ <Tool
136+ Name="VCXMLDataGeneratorTool"
137+ />
138+ <Tool
139+ Name="VCWebServiceProxyGeneratorTool"
140+ />
141+ <Tool
142+ Name="VCMIDLTool"
143+ PreprocessorDefinitions="NDEBUG"
144+ MkTypLibCompatible="true"
145+ SuppressStartupBanner="true"
146+ TargetEnvironment="1"
147+ TypeLibraryName=".\Release/Simple.tlb"
148+ HeaderFileName=""
149+ />
150+ <Tool
151+ Name="VCCLCompilerTool"
152+ Optimization="2"
153+ InlineFunctionExpansion="1"
154+ AdditionalIncludeDirectories="../../../core;../../../core/common;&quot;C:\Program Files\Microsoft SDKs\Windows\v6.0\Include&quot;"
155+ PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
156+ StringPooling="true"
157+ RuntimeLibrary="0"
158+ EnableFunctionLevelLinking="true"
159+ PrecompiledHeaderFile=".\Release/Simple.pch"
160+ AssemblerListingLocation=".\Release/"
161+ ObjectFile=".\Release/"
162+ ProgramDataBaseFileName=".\Release/"
163+ BrowseInformation="1"
164+ WarningLevel="3"
165+ SuppressStartupBanner="true"
166+ />
167+ <Tool
168+ Name="VCManagedResourceCompilerTool"
169+ />
170+ <Tool
171+ Name="VCResourceCompilerTool"
172+ PreprocessorDefinitions="NDEBUG"
173+ Culture="1033"
174+ />
175+ <Tool
176+ Name="VCPreLinkEventTool"
177+ />
178+ <Tool
179+ Name="VCLinkerTool"
180+ AdditionalDependencies="ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib odbc32.lib odbccp32.lib uuid.lib ole32.lib"
181+ OutputFile="Release/PeerCast.exe"
182+ LinkIncremental="1"
183+ SuppressStartupBanner="true"
184+ AdditionalLibraryDirectories="&quot;C:\Program Files\Microsoft SDKs\Windows\v6.0\Lib&quot;"
185+ ProgramDatabaseFile=".\Release/PeerCast.pdb"
186+ SubSystem="2"
187+ LinkTimeCodeGeneration="1"
188+ RandomizedBaseAddress="1"
189+ DataExecutionPrevention="0"
190+ TargetMachine="1"
191+ />
192+ <Tool
193+ Name="VCALinkTool"
194+ />
195+ <Tool
196+ Name="VCManifestTool"
197+ />
198+ <Tool
199+ Name="VCXDCMakeTool"
200+ />
201+ <Tool
202+ Name="VCBscMakeTool"
203+ SuppressStartupBanner="true"
204+ OutputFile=".\Release/Simple.bsc"
205+ />
206+ <Tool
207+ Name="VCFxCopTool"
208+ />
209+ <Tool
210+ Name="VCAppVerifierTool"
211+ />
212+ <Tool
213+ Name="VCPostBuildEventTool"
214+ Description="Copy exe to pimp &amp; program files"
215+ CommandLine="copy release\peercast.exe &quot;c:\program files\peercast&quot;&#x0D;&#x0A;copy release\peercast.exe ..\pimp\&#x0D;&#x0A;"
216+ ExcludedFromBuild="true"
217+ />
218+ </Configuration>
219+ <Configuration
220+ Name="Private Release|Win32"
221+ OutputDirectory=".\Simple___Win32_Private_Release"
222+ IntermediateDirectory=".\Simple___Win32_Private_Release"
223+ ConfigurationType="1"
224+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
225+ UseOfMFC="0"
226+ ATLMinimizesCRunTimeLibraryUsage="false"
227+ CharacterSet="2"
228+ >
229+ <Tool
230+ Name="VCPreBuildEventTool"
231+ />
232+ <Tool
233+ Name="VCCustomBuildTool"
234+ />
235+ <Tool
236+ Name="VCXMLDataGeneratorTool"
237+ />
238+ <Tool
239+ Name="VCWebServiceProxyGeneratorTool"
240+ />
241+ <Tool
242+ Name="VCMIDLTool"
243+ PreprocessorDefinitions="NDEBUG"
244+ MkTypLibCompatible="true"
245+ SuppressStartupBanner="true"
246+ TargetEnvironment="1"
247+ TypeLibraryName=".\Simple___Win32_Private_Release/Simple.tlb"
248+ HeaderFileName=""
249+ />
250+ <Tool
251+ Name="VCCLCompilerTool"
252+ Optimization="2"
253+ InlineFunctionExpansion="1"
254+ AdditionalIncludeDirectories="../../../core,../../../core/common"
255+ PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;PRIVATE_BROADCASTER"
256+ StringPooling="true"
257+ RuntimeLibrary="0"
258+ EnableFunctionLevelLinking="true"
259+ PrecompiledHeaderFile=".\Simple___Win32_Private_Release/Simple.pch"
260+ AssemblerListingLocation=".\Simple___Win32_Private_Release/"
261+ ObjectFile=".\Simple___Win32_Private_Release/"
262+ ProgramDataBaseFileName=".\Simple___Win32_Private_Release/"
263+ BrowseInformation="1"
264+ WarningLevel="3"
265+ SuppressStartupBanner="true"
266+ />
267+ <Tool
268+ Name="VCManagedResourceCompilerTool"
269+ />
270+ <Tool
271+ Name="VCResourceCompilerTool"
272+ PreprocessorDefinitions="NDEBUG"
273+ Culture="1033"
274+ />
275+ <Tool
276+ Name="VCPreLinkEventTool"
277+ />
278+ <Tool
279+ Name="VCLinkerTool"
280+ AdditionalDependencies="ws2_32.lib odbc32.lib odbccp32.lib"
281+ OutputFile="PrivRelease/PeerCast.exe"
282+ LinkIncremental="1"
283+ SuppressStartupBanner="true"
284+ ProgramDatabaseFile=".\Simple___Win32_Private_Release/PeerCast.pdb"
285+ SubSystem="2"
286+ RandomizedBaseAddress="1"
287+ DataExecutionPrevention="0"
288+ TargetMachine="1"
289+ />
290+ <Tool
291+ Name="VCALinkTool"
292+ />
293+ <Tool
294+ Name="VCManifestTool"
295+ />
296+ <Tool
297+ Name="VCXDCMakeTool"
298+ />
299+ <Tool
300+ Name="VCBscMakeTool"
301+ SuppressStartupBanner="true"
302+ OutputFile=".\Simple___Win32_Private_Release/Simple.bsc"
303+ />
304+ <Tool
305+ Name="VCFxCopTool"
306+ />
307+ <Tool
308+ Name="VCAppVerifierTool"
309+ />
310+ <Tool
311+ Name="VCPostBuildEventTool"
312+ Description="Copy exe to pimp &amp; program files"
313+ CommandLine="copy release\peercast.exe &quot;c:\program files\peercast&quot;&#x0D;&#x0A;copy release\peercast.exe ..\pimp\&#x0D;&#x0A;"
314+ />
315+ </Configuration>
316+ <Configuration
317+ Name="Debug|Win32"
318+ OutputDirectory=".\Debug"
319+ IntermediateDirectory=".\Debug"
320+ ConfigurationType="1"
321+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
322+ UseOfMFC="0"
323+ ATLMinimizesCRunTimeLibraryUsage="false"
324+ CharacterSet="2"
325+ >
326+ <Tool
327+ Name="VCPreBuildEventTool"
328+ />
329+ <Tool
330+ Name="VCCustomBuildTool"
331+ />
332+ <Tool
333+ Name="VCXMLDataGeneratorTool"
334+ />
335+ <Tool
336+ Name="VCWebServiceProxyGeneratorTool"
337+ />
338+ <Tool
339+ Name="VCMIDLTool"
340+ PreprocessorDefinitions="_DEBUG"
341+ MkTypLibCompatible="true"
342+ SuppressStartupBanner="true"
343+ TargetEnvironment="1"
344+ TypeLibraryName=".\Debug/Simple.tlb"
345+ HeaderFileName=""
346+ />
347+ <Tool
348+ Name="VCCLCompilerTool"
349+ Optimization="0"
350+ AdditionalIncludeDirectories="../../../core;../../../core/common;&quot;C:\Program Files\Microsoft Platform SDK\Include&quot;"
351+ PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"
352+ MinimalRebuild="true"
353+ BasicRuntimeChecks="3"
354+ RuntimeLibrary="1"
355+ PrecompiledHeaderFile=".\Debug/Simple.pch"
356+ AssemblerListingLocation=".\Debug/"
357+ ObjectFile=".\Debug/"
358+ ProgramDataBaseFileName=".\Debug/"
359+ BrowseInformation="1"
360+ WarningLevel="3"
361+ SuppressStartupBanner="true"
362+ DebugInformationFormat="4"
363+ />
364+ <Tool
365+ Name="VCManagedResourceCompilerTool"
366+ />
367+ <Tool
368+ Name="VCResourceCompilerTool"
369+ PreprocessorDefinitions="_DEBUG"
370+ Culture="1033"
371+ />
372+ <Tool
373+ Name="VCPreLinkEventTool"
374+ />
375+ <Tool
376+ Name="VCLinkerTool"
377+ AdditionalDependencies="ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib odbc32.lib odbccp32.lib uuid.lib"
378+ OutputFile="Debug/PeerCast.exe"
379+ LinkIncremental="1"
380+ SuppressStartupBanner="true"
381+ AdditionalLibraryDirectories="&quot;C:\Program Files\Microsoft SDKs\Windows\v6.0\Lib&quot;"
382+ GenerateDebugInformation="true"
383+ ProgramDatabaseFile=".\Debug/PeerCast.pdb"
384+ SubSystem="2"
385+ RandomizedBaseAddress="1"
386+ DataExecutionPrevention="0"
387+ TargetMachine="1"
388+ />
389+ <Tool
390+ Name="VCALinkTool"
391+ />
392+ <Tool
393+ Name="VCManifestTool"
394+ />
395+ <Tool
396+ Name="VCXDCMakeTool"
397+ />
398+ <Tool
399+ Name="VCBscMakeTool"
400+ SuppressStartupBanner="true"
401+ OutputFile=".\Debug/Simple.bsc"
402+ />
403+ <Tool
404+ Name="VCFxCopTool"
405+ />
406+ <Tool
407+ Name="VCAppVerifierTool"
408+ />
409+ <Tool
410+ Name="VCPostBuildEventTool"
411+ Description="Copy exe to program files"
412+ CommandLine="copy debug\peercast.exe &quot;c:\program files\peercast&quot;"
413+ />
414+ </Configuration>
415+ </Configurations>
416+ <References>
417+ </References>
418+ <Files>
419+ <Filter
420+ Name="Source Files"
421+ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
422+ >
423+ <File
424+ RelativePath="chkMemoryLeak.cpp"
425+ >
426+ <FileConfiguration
427+ Name="Private Debug|Win32"
428+ >
429+ <Tool
430+ Name="VCCLCompilerTool"
431+ AdditionalIncludeDirectories=""
432+ PreprocessorDefinitions=""
433+ />
434+ </FileConfiguration>
435+ <FileConfiguration
436+ Name="Release|Win32"
437+ >
438+ <Tool
439+ Name="VCCLCompilerTool"
440+ AdditionalIncludeDirectories=""
441+ PreprocessorDefinitions=""
442+ />
443+ </FileConfiguration>
444+ <FileConfiguration
445+ Name="Private Release|Win32"
446+ >
447+ <Tool
448+ Name="VCCLCompilerTool"
449+ AdditionalIncludeDirectories=""
450+ PreprocessorDefinitions=""
451+ />
452+ </FileConfiguration>
453+ <FileConfiguration
454+ Name="Debug|Win32"
455+ >
456+ <Tool
457+ Name="VCCLCompilerTool"
458+ AdditionalIncludeDirectories=""
459+ PreprocessorDefinitions=""
460+ />
461+ </FileConfiguration>
462+ </File>
463+ <File
464+ RelativePath="gui.cpp"
465+ >
466+ <FileConfiguration
467+ Name="Private Debug|Win32"
468+ >
469+ <Tool
470+ Name="VCCLCompilerTool"
471+ AdditionalIncludeDirectories=""
472+ PreprocessorDefinitions=""
473+ />
474+ </FileConfiguration>
475+ <FileConfiguration
476+ Name="Release|Win32"
477+ >
478+ <Tool
479+ Name="VCCLCompilerTool"
480+ AdditionalIncludeDirectories=""
481+ PreprocessorDefinitions=""
482+ />
483+ </FileConfiguration>
484+ <FileConfiguration
485+ Name="Private Release|Win32"
486+ >
487+ <Tool
488+ Name="VCCLCompilerTool"
489+ AdditionalIncludeDirectories=""
490+ PreprocessorDefinitions=""
491+ />
492+ </FileConfiguration>
493+ <FileConfiguration
494+ Name="Debug|Win32"
495+ >
496+ <Tool
497+ Name="VCCLCompilerTool"
498+ AdditionalIncludeDirectories=""
499+ PreprocessorDefinitions=""
500+ />
501+ </FileConfiguration>
502+ </File>
503+ <File
504+ RelativePath="..\..\..\core\common\identify_encoding.c"
505+ >
506+ <FileConfiguration
507+ Name="Private Debug|Win32"
508+ >
509+ <Tool
510+ Name="VCCLCompilerTool"
511+ AdditionalIncludeDirectories=""
512+ PreprocessorDefinitions=""
513+ />
514+ </FileConfiguration>
515+ <FileConfiguration
516+ Name="Release|Win32"
517+ >
518+ <Tool
519+ Name="VCCLCompilerTool"
520+ AdditionalIncludeDirectories=""
521+ PreprocessorDefinitions=""
522+ />
523+ </FileConfiguration>
524+ <FileConfiguration
525+ Name="Private Release|Win32"
526+ >
527+ <Tool
528+ Name="VCCLCompilerTool"
529+ AdditionalIncludeDirectories=""
530+ PreprocessorDefinitions=""
531+ />
532+ </FileConfiguration>
533+ <FileConfiguration
534+ Name="Debug|Win32"
535+ >
536+ <Tool
537+ Name="VCCLCompilerTool"
538+ AdditionalIncludeDirectories=""
539+ PreprocessorDefinitions=""
540+ />
541+ </FileConfiguration>
542+ </File>
543+ <File
544+ RelativePath="Simple.cpp"
545+ >
546+ <FileConfiguration
547+ Name="Private Debug|Win32"
548+ >
549+ <Tool
550+ Name="VCCLCompilerTool"
551+ AdditionalIncludeDirectories=""
552+ PreprocessorDefinitions=""
553+ />
554+ </FileConfiguration>
555+ <FileConfiguration
556+ Name="Release|Win32"
557+ >
558+ <Tool
559+ Name="VCCLCompilerTool"
560+ AdditionalIncludeDirectories=""
561+ PreprocessorDefinitions=""
562+ />
563+ </FileConfiguration>
564+ <FileConfiguration
565+ Name="Private Release|Win32"
566+ >
567+ <Tool
568+ Name="VCCLCompilerTool"
569+ AdditionalIncludeDirectories=""
570+ PreprocessorDefinitions=""
571+ />
572+ </FileConfiguration>
573+ <FileConfiguration
574+ Name="Debug|Win32"
575+ >
576+ <Tool
577+ Name="VCCLCompilerTool"
578+ AdditionalIncludeDirectories=""
579+ PreprocessorDefinitions=""
580+ />
581+ </FileConfiguration>
582+ </File>
583+ <File
584+ RelativePath="Simple.rc"
585+ >
586+ <FileConfiguration
587+ Name="Private Debug|Win32"
588+ >
589+ <Tool
590+ Name="VCResourceCompilerTool"
591+ PreprocessorDefinitions=""
592+ />
593+ </FileConfiguration>
594+ <FileConfiguration
595+ Name="Release|Win32"
596+ >
597+ <Tool
598+ Name="VCResourceCompilerTool"
599+ PreprocessorDefinitions=""
600+ AdditionalIncludeDirectories="&quot;C:\Program Files\Microsoft SDKs\Windows\v6.0\Include&quot;"
601+ />
602+ </FileConfiguration>
603+ <FileConfiguration
604+ Name="Private Release|Win32"
605+ >
606+ <Tool
607+ Name="VCResourceCompilerTool"
608+ PreprocessorDefinitions=""
609+ />
610+ </FileConfiguration>
611+ <FileConfiguration
612+ Name="Debug|Win32"
613+ >
614+ <Tool
615+ Name="VCResourceCompilerTool"
616+ PreprocessorDefinitions=""
617+ AdditionalIncludeDirectories="&quot;C:\Program Files\Microsoft SDKs\Windows\v6.0\Include&quot;"
618+ />
619+ </FileConfiguration>
620+ </File>
621+ <File
622+ RelativePath="StdAfx.cpp"
623+ >
624+ <FileConfiguration
625+ Name="Private Debug|Win32"
626+ >
627+ <Tool
628+ Name="VCCLCompilerTool"
629+ AdditionalIncludeDirectories=""
630+ PreprocessorDefinitions=""
631+ UsePrecompiledHeader="1"
632+ PrecompiledHeaderThrough="stdafx.h"
633+ />
634+ </FileConfiguration>
635+ <FileConfiguration
636+ Name="Release|Win32"
637+ >
638+ <Tool
639+ Name="VCCLCompilerTool"
640+ AdditionalIncludeDirectories=""
641+ PreprocessorDefinitions=""
642+ UsePrecompiledHeader="1"
643+ PrecompiledHeaderThrough="stdafx.h"
644+ />
645+ </FileConfiguration>
646+ <FileConfiguration
647+ Name="Private Release|Win32"
648+ >
649+ <Tool
650+ Name="VCCLCompilerTool"
651+ AdditionalIncludeDirectories=""
652+ PreprocessorDefinitions=""
653+ UsePrecompiledHeader="1"
654+ PrecompiledHeaderThrough="stdafx.h"
655+ />
656+ </FileConfiguration>
657+ <FileConfiguration
658+ Name="Debug|Win32"
659+ >
660+ <Tool
661+ Name="VCCLCompilerTool"
662+ AdditionalIncludeDirectories=""
663+ PreprocessorDefinitions=""
664+ UsePrecompiledHeader="1"
665+ PrecompiledHeaderThrough="stdafx.h"
666+ />
667+ </FileConfiguration>
668+ </File>
669+ <File
670+ RelativePath="..\..\..\core\common\utf8.c"
671+ >
672+ <FileConfiguration
673+ Name="Private Debug|Win32"
674+ >
675+ <Tool
676+ Name="VCCLCompilerTool"
677+ AdditionalIncludeDirectories=""
678+ PreprocessorDefinitions=""
679+ />
680+ </FileConfiguration>
681+ <FileConfiguration
682+ Name="Release|Win32"
683+ >
684+ <Tool
685+ Name="VCCLCompilerTool"
686+ AdditionalIncludeDirectories=""
687+ PreprocessorDefinitions=""
688+ />
689+ </FileConfiguration>
690+ <FileConfiguration
691+ Name="Private Release|Win32"
692+ >
693+ <Tool
694+ Name="VCCLCompilerTool"
695+ AdditionalIncludeDirectories=""
696+ PreprocessorDefinitions=""
697+ />
698+ </FileConfiguration>
699+ <FileConfiguration
700+ Name="Debug|Win32"
701+ >
702+ <Tool
703+ Name="VCCLCompilerTool"
704+ AdditionalIncludeDirectories=""
705+ PreprocessorDefinitions=""
706+ />
707+ </FileConfiguration>
708+ </File>
709+ </Filter>
710+ <Filter
711+ Name="Header Files"
712+ Filter="h;hpp;hxx;hm;inl"
713+ >
714+ <File
715+ RelativePath="chkMemoryLeak.h"
716+ >
717+ </File>
718+ <File
719+ RelativePath="gui.h"
720+ >
721+ </File>
722+ <File
723+ RelativePath="..\..\..\core\common\identify_encoding.h"
724+ >
725+ </File>
726+ <File
727+ RelativePath="resource.h"
728+ >
729+ </File>
730+ <File
731+ RelativePath="Simple.h"
732+ >
733+ </File>
734+ <File
735+ RelativePath="StdAfx.h"
736+ >
737+ </File>
738+ <File
739+ RelativePath="..\..\..\core\common\utf8.h"
740+ >
741+ </File>
742+ </Filter>
743+ <Filter
744+ Name="Resource Files"
745+ Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
746+ >
747+ <File
748+ RelativePath="Simple.ico"
749+ >
750+ </File>
751+ <File
752+ RelativePath="small.ico"
753+ >
754+ </File>
755+ <File
756+ RelativePath="small1.ico"
757+ >
758+ </File>
759+ <File
760+ RelativePath="small3.ico"
761+ >
762+ </File>
763+ </Filter>
764+ </Files>
765+ <Globals>
766+ </Globals>
767+</VisualStudioProject>
--- /dev/null
+++ b/PeerCast.root/PeerCast/ui/win32/Simple_vp/Simple_vp.vcproj.vspscc
@@ -0,0 +1,10 @@
1+""
2+{
3+"FILE_VERSION" = "9237"
4+"ENLISTMENT_CHOICE" = "NEVER"
5+"PROJECT_FILE_RELATIVE_PATH" = "relative:ui\\win32\\Simple_vp"
6+"NUMBER_OF_EXCLUDED_FILES" = "0"
7+"ORIGINAL_PROJECT_FILE_PATH" = ""
8+"NUMBER_OF_NESTED_PROJECTS" = "0"
9+"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROJECT"
10+}
--- /dev/null
+++ b/PeerCast.root/PeerCast/ui/win32/Simple_vp/StdAfx.cpp
@@ -0,0 +1,9 @@
1+// stdafx.cpp : source file that includes just the standard includes
2+// Simple.pch will be the pre-compiled header
3+// stdafx.obj will contain the pre-compiled type information
4+
5+#include "stdafx.h"
6+
7+// TODO: reference any additional headers you need in STDAFX.H
8+// and not in this file
9+
--- /dev/null
+++ b/PeerCast.root/PeerCast/ui/win32/Simple_vp/StdAfx.h
@@ -0,0 +1,32 @@
1+// stdafx.h : include file for standard system include files,
2+// or project specific include files that are used frequently, but
3+// are changed infrequently
4+//
5+
6+#if !defined(AFX_STDAFX_H__A9DB83DB_A9FD_11D0_BFD1_444553540000__INCLUDED_)
7+#define AFX_STDAFX_H__A9DB83DB_A9FD_11D0_BFD1_444553540000__INCLUDED_
8+
9+#if _MSC_VER > 1000
10+#pragma once
11+#endif // _MSC_VER > 1000
12+
13+#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
14+
15+
16+// Windows Header Files:
17+#include <windows.h>
18+
19+// C RunTime Header Files
20+#include <stdlib.h>
21+#include <malloc.h>
22+#include <memory.h>
23+#include <tchar.h>
24+
25+// Local Header Files
26+
27+// TODO: reference additional headers your program requires here
28+
29+//{{AFX_INSERT_LOCATION}}
30+// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
31+
32+#endif // !defined(AFX_STDAFX_H__A9DB83DB_A9FD_11D0_BFD1_444553540000__INCLUDED_)
--- /dev/null
+++ b/PeerCast.root/PeerCast/ui/win32/Simple_vp/chkMemoryLeak.cpp
@@ -0,0 +1,21 @@
1+#ifdef _DEBUG
2+#include "stdafx.h"
3+#include "chkMemoryLeak.h"
4+
5+#ifdef __AFXWIN_H__ // MFCのウィンドウを使う場合に限定しています
6+#else
7+ #if defined(_DEBUG)
8+ #define __chkMemoryLeak_H__
9+ void* operator new(size_t size, const char *filename, int linenumber)
10+ {
11+ return _malloc_dbg(size, _NORMAL_BLOCK, filename, linenumber);
12+ }
13+ void operator delete(void * _P, const char *filename, int linenumber)
14+ {
15+ _free_dbg(_P, _NORMAL_BLOCK);
16+ return;
17+ }
18+
19+ #endif
20+#endif
21+#endif
--- /dev/null
+++ b/PeerCast.root/PeerCast/ui/win32/Simple_vp/chkMemoryLeak.h
@@ -0,0 +1,24 @@
1+#ifndef _CHKMEMORYLEAK_H
2+#define _CHKMEMORYLEAK_H
3+
4+#if _MSC_VER > 1000
5+#pragma once
6+#endif // _MSC_VER > 1000
7+
8+#ifdef _DEBUG
9+ #define _CRTDBG_MAP_ALLOC
10+
11+ #define SET_CRT_DEBUG_FIELD(a) _CrtSetDbgFlag((a) | _CrtSetDbgFlag(_CRTDBG_REPORT_FLAG))
12+ #define CLEAR_CRT_DEBUG_FIELD(a) _CrtSetDbgFlag(~(a) & _CrtSetDbgFlag(_CRTDBG_REPORT_FLAG))
13+
14+ void* operator new(size_t size, const char *filename, int linenumber);
15+ void operator delete(void * _P, const char *filename, int linenumber);
16+#else
17+ #define SET_CRT_DEBUG_FIELD(a) ((void) 0)
18+ #define CLEAR_CRT_DEBUG_FIELD(a) ((void) 0)
19+#endif
20+
21+#include <malloc.h>
22+#include <crtdbg.h>
23+
24+#endif
--- /dev/null
+++ b/PeerCast.root/PeerCast/ui/win32/Simple_vp/gui.cpp
@@ -0,0 +1,1715 @@
1+// ------------------------------------------------
2+// File : gui.cpp
3+// Date: 4-apr-2002
4+// Author: giles
5+// Desc:
6+// Windows front end GUI, PeerCast core is not dependant on any of this.
7+// Its very messy at the moment, but then again Windows UI always is.
8+// I really don`t like programming win32 UI.. I want my borland back..
9+//
10+// (c) 2002 peercast.org
11+// ------------------------------------------------
12+// This program is free software; you can redistribute it and/or modify
13+// it under the terms of the GNU General Public License as published by
14+// the Free Software Foundation; either version 2 of the License, or
15+// (at your option) any later version.
16+
17+// This program is distributed in the hope that it will be useful,
18+// but WITHOUT ANY WARRANTY; without even the implied warranty of
19+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20+// GNU General Public License for more details.
21+// ------------------------------------------------
22+
23+#include <windows.h>
24+#include "stdio.h"
25+#include "string.h"
26+#include "stdarg.h"
27+#include "resource.h"
28+#include "socket.h"
29+#include "win32/wsys.h"
30+#include "servent.h"
31+#include "win32/wsocket.h"
32+#include "inifile.h"
33+#include "gui.h"
34+#include "servmgr.h"
35+#include "peercast.h"
36+#include "simple.h"
37+#ifdef _DEBUG
38+#include "chkMemoryLeak.h"
39+#define DEBUG_NEW new(__FILE__, __LINE__)
40+#define new DEBUG_NEW
41+#endif
42+
43+ThreadInfo guiThread;
44+bool shownChannels=false;
45+
46+class ListData{
47+public:
48+ int channel_id;
49+ char name[21];
50+ int bitRate;
51+ int status;
52+ const char *statusStr;
53+ int totalListeners;
54+ int totalRelays;
55+ int localListeners;
56+ int localRelays;
57+ bool stayConnected;
58+ ChanHit chDisp;
59+ bool bTracker;
60+
61+ bool flg;
62+ ListData *next;
63+};
64+
65+class ServentData{
66+public:
67+ int servent_id;
68+ unsigned int tnum;
69+ int type;
70+ int status;
71+ String agent;
72+ Host h;
73+ unsigned int syncpos;
74+ char *typeStr;
75+ char *statusStr;
76+ bool infoFlg;
77+ bool relay;
78+ bool firewalled;
79+ unsigned int numRelays;
80+ unsigned int totalRelays;
81+ unsigned int totalListeners;
82+ int vp_ver;
83+ char ver_ex_prefix[2];
84+ int ver_ex_number;
85+
86+ bool flg;
87+ ServentData *next;
88+
89+ unsigned int lastSkipTime;
90+ unsigned int lastSkipCount;
91+};
92+
93+ListData *list_top = NULL;
94+ServentData *servent_top = NULL;
95+
96+// --------------------------------------------------
97+// for PCRaw (connection list) start
98+WNDPROC wndOldListBox = NULL, wndOldConnListBox = NULL;
99+bool sleep_skip = false;
100+
101+LRESULT CALLBACK ListBoxProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
102+{
103+ switch(message)
104+ {
105+ case WM_LBUTTONDOWN:
106+ {
107+ int index = SendMessage(hwnd, LB_ITEMFROMPOINT, 0, lParam);
108+ if(index >= 0x10000)
109+ {
110+ SendMessage(hwnd, LB_SETCURSEL, (DWORD)-1, 0L);
111+ }
112+ sleep_skip = true;
113+ }
114+ break;
115+
116+ case WM_LBUTTONDBLCLK:
117+ {
118+ int index = SendMessage(hwnd, LB_ITEMFROMPOINT, 0, lParam);
119+ if(index < 0x10000)
120+ {
121+ SendMessage(guiWnd, WM_COMMAND, IDC_BUTTON8, NULL);
122+ }
123+ }
124+ break;
125+
126+ case WM_RBUTTONDOWN:
127+ {
128+ POINT pos;
129+ MENUITEMINFO info, separator;
130+ HMENU hMenu;
131+ DWORD dwID;
132+
133+ int index = SendMessage(hwnd, LB_ITEMFROMPOINT, 0, lParam);
134+ if(index < 0x10000)
135+ {
136+ SendMessage(hwnd, LB_SETCURSEL, (DWORD)index, 1L);
137+ }
138+ else
139+ {
140+ SendMessage(hwnd, LB_SETCURSEL, (DWORD)-1, 0L);
141+ sleep_skip = true;
142+ break;
143+ }
144+
145+ hMenu = CreatePopupMenu();
146+
147+ memset(&separator, 0, sizeof(MENUITEMINFO));
148+ separator.cbSize = sizeof(MENUITEMINFO);
149+ separator.fMask = MIIM_ID | MIIM_TYPE;
150+ separator.fType = MFT_SEPARATOR;
151+ separator.wID = 8000;
152+
153+ memset(&info, 0, sizeof(MENUITEMINFO));
154+ info.cbSize = sizeof(MENUITEMINFO);
155+ info.fMask = MIIM_ID | MIIM_TYPE;
156+ info.fType = MFT_STRING;
157+
158+ info.wID = 1001;
159+ info.dwTypeData = "切断(&X)";
160+ InsertMenuItem(hMenu, -1, true, &info);
161+
162+ InsertMenuItem(hMenu, -1, true, &separator);
163+
164+ info.wID = 1000;
165+ info.dwTypeData = "再生(&P)";
166+ InsertMenuItem(hMenu, -1, true, &info);
167+
168+ InsertMenuItem(hMenu, -1, true, &separator);
169+
170+ info.wID = 1002;
171+ info.dwTypeData = "再接続(&R)";
172+ InsertMenuItem(hMenu, -1, true, &info);
173+
174+ info.wID = 1003;
175+ info.dwTypeData = "キープ(&K)";
176+ InsertMenuItem(hMenu, -1, true, &info);
177+
178+ InsertMenuItem(hMenu, -1, true, &separator);
179+
180+ info.wID = 2000;
181+ info.dwTypeData = "選択解除(&D)";
182+ InsertMenuItem(hMenu, -1, true, &info);
183+
184+ GetCursorPos(&pos);
185+ dwID = TrackPopupMenu(hMenu, TPM_LEFTALIGN | TPM_RETURNCMD, pos.x, pos.y, 0, hwnd, NULL);
186+
187+ DestroyMenu(hMenu);
188+
189+ switch(dwID)
190+ {
191+ case 1000:
192+ SendMessage(guiWnd, WM_COMMAND, IDC_BUTTON8, NULL);
193+ break;
194+
195+ case 1001:
196+ SendMessage(guiWnd, WM_COMMAND, IDC_BUTTON5, NULL);
197+ break;
198+
199+ case 1002:
200+ SendMessage(guiWnd, WM_COMMAND, IDC_BUTTON3, NULL);
201+ break;
202+
203+ case 1003:
204+ SendMessage(guiWnd, WM_COMMAND, IDC_BUTTON9, NULL);
205+ break;
206+
207+ case 2000:
208+ SendMessage(hwnd, LB_SETCURSEL, (DWORD)-1, 0L);
209+ sleep_skip = true;
210+ break;
211+ }
212+
213+ }
214+ break;
215+
216+ case WM_KEYDOWN:
217+ sleep_skip = true;
218+ break;
219+ }
220+
221+ return CallWindowProc(wndOldListBox, hwnd, message, wParam, lParam);
222+}
223+
224+LRESULT CALLBACK ConnListBoxProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
225+{
226+ switch(message)
227+ {
228+ case WM_LBUTTONDOWN:
229+ {
230+ int index = SendMessage(hwnd, LB_ITEMFROMPOINT, 0, lParam);
231+ if(index >= 0x10000)
232+ {
233+ SendMessage(hwnd, LB_SETCURSEL, (DWORD)-1, 0L);
234+ }
235+ }
236+ break;
237+
238+ case WM_RBUTTONDOWN:
239+ {
240+ POINT pos;
241+ MENUITEMINFO info;
242+ HMENU hMenu;
243+ DWORD dwID;
244+
245+ int index = SendMessage(hwnd, LB_ITEMFROMPOINT, 0, lParam);
246+ if(index < 0x10000)
247+ {
248+ SendMessage(hwnd, LB_SETCURSEL, (DWORD)index, 1L);
249+ }
250+ else
251+ {
252+ SendMessage(hwnd, LB_SETCURSEL, (DWORD)-1, 0L);
253+ break;
254+ }
255+
256+ hMenu = CreatePopupMenu();
257+
258+ memset(&info, 0, sizeof(MENUITEMINFO));
259+ info.cbSize = sizeof(MENUITEMINFO);
260+ info.fMask = MIIM_ID | MIIM_TYPE;
261+ info.fType = MFT_STRING;
262+
263+ info.wID = 1001;
264+ info.dwTypeData = "切断(&X)";
265+ InsertMenuItem(hMenu, -1, true, &info);
266+
267+ GetCursorPos(&pos);
268+ dwID = TrackPopupMenu(hMenu, TPM_LEFTALIGN | TPM_RETURNCMD, pos.x, pos.y, 0, hwnd, NULL);
269+
270+ DestroyMenu(hMenu);
271+
272+ switch(dwID)
273+ {
274+ case 1001:
275+ SendMessage(guiWnd, WM_COMMAND, IDC_BUTTON6, NULL);
276+ break;
277+ }
278+
279+ }
280+ break;
281+ }
282+
283+ return CallWindowProc(wndOldConnListBox, hwnd, message, wParam, lParam);
284+}
285+// for PCRaw (connection list) end
286+// --------------------------------------------------
287+int logID,statusID,hitID,chanID;
288+
289+// --------------------------------------------------
290+bool getButtonState(int id)
291+{
292+ return SendDlgItemMessage(guiWnd, id,BM_GETCHECK, 0, 0) == BST_CHECKED;
293+}
294+
295+// --------------------------------------------------
296+void enableControl(int id, bool on)
297+{
298+ EnableWindow(GetDlgItem(guiWnd,id),on);
299+}
300+
301+// --------------------------------------------------
302+void enableEdit(int id, bool on)
303+{
304+ SendDlgItemMessage(guiWnd, id,WM_ENABLE, on, 0);
305+ SendDlgItemMessage(guiWnd, id,EM_SETREADONLY, !on, 0);
306+}
307+// --------------------------------------------------
308+int getEditInt(int id)
309+{
310+ char str[128];
311+ SendDlgItemMessage(guiWnd, id,WM_GETTEXT, 128, (LONG)str);
312+ return atoi(str);
313+}
314+// --------------------------------------------------
315+char * getEditStr(int id)
316+{
317+ static char str[128];
318+ SendDlgItemMessage(guiWnd, id,WM_GETTEXT, 128, (LONG)str);
319+ return str;
320+}
321+// --------------------------------------------------
322+void setEditStr(int id, char *str)
323+{
324+ SendDlgItemMessage(guiWnd, id,WM_SETTEXT, 0, (LONG)str);
325+}
326+// --------------------------------------------------
327+void setEditInt(int id, int v)
328+{
329+ char str[128];
330+ sprintf(str,"%d",v);
331+ SendDlgItemMessage(guiWnd, id,WM_SETTEXT, 0, (LONG)str);
332+}
333+
334+// --------------------------------------------------
335+void *getListBoxSelData(int id)
336+{
337+ int sel = SendDlgItemMessage(guiWnd, id,LB_GETCURSEL, 0, 0);
338+ if (sel >= 0)
339+ return (void *)SendDlgItemMessage(guiWnd, id,LB_GETITEMDATA, sel, 0);
340+ return NULL;
341+}
342+
343+Channel *getListBoxChannel(){
344+ int sel = SendDlgItemMessage(guiWnd, chanID ,LB_GETCURSEL, 0, 0);
345+ if (sel >= 0){
346+ ListData *ld = list_top;
347+ int idx = 0;
348+
349+ while(ld){
350+ if (sel == idx){
351+ return chanMgr->findChannelByChannelID(ld->channel_id);
352+ }
353+ ld = ld->next;
354+ idx++;
355+ }
356+ }
357+ return NULL;
358+}
359+
360+Servent *getListBoxServent(){
361+ int sel = SendDlgItemMessage(guiWnd, statusID ,LB_GETCURSEL, 0, 0);
362+ if (sel >= 0){
363+ ServentData *sd = servent_top;
364+ int idx = 0;
365+
366+ while(sd){
367+ if (sel == idx){
368+ return servMgr->findServentByServentID(sd->servent_id);
369+ }
370+ sd = sd->next;
371+ idx++;
372+ }
373+ }
374+ return NULL;
375+}
376+
377+// --------------------------------------------------
378+void setButtonState(int id, bool on)
379+{
380+ SendDlgItemMessage(guiWnd, id,BM_SETCHECK, on, 0);
381+ SendMessage(guiWnd,WM_COMMAND,id,0);
382+}
383+// --------------------------------------------------
384+void ADDLOG(const char *str,int id,bool sel,void *data, LogBuffer::TYPE type)
385+{
386+ if (guiWnd)
387+ {
388+
389+ String sjis; //JP-EX
390+ int num = SendDlgItemMessage(guiWnd, id,LB_GETCOUNT, 0, 0);
391+ if (num > 100)
392+ {
393+ SendDlgItemMessage(guiWnd, id, LB_DELETESTRING, 0, 0);
394+ num--;
395+ }
396+ sjis = str; //JP-Patch
397+ sjis.convertTo(String::T_SJIS); //JP-Patch
398+ //int idx = SendDlgItemMessage(guiWnd, id, LB_ADDSTRING, 0, (LONG)(LPSTR)str);
399+ int idx = SendDlgItemMessage(guiWnd, id, LB_ADDSTRING, 0, (LONG)(LPSTR)sjis.cstr());
400+ SendDlgItemMessage(guiWnd, id, LB_SETITEMDATA, idx, (LONG)data);
401+
402+ if (sel)
403+ SendDlgItemMessage(guiWnd, id, LB_SETCURSEL, num, 0);
404+
405+ }
406+
407+ if (type != LogBuffer::T_NONE)
408+ {
409+#if _DEBUG
410+ OutputDebugString(str);
411+ OutputDebugString("\n");
412+#endif
413+ }
414+
415+}
416+
417+
418+// --------------------------------------------------
419+void ADDLOG2(const char *fmt,va_list ap,int id,bool sel,void *data, LogBuffer::TYPE type)
420+{
421+ char str[4096];
422+ vsprintf(str,fmt,ap);
423+
424+ ADDLOG(str,id,sel,data,type);
425+}
426+
427+// --------------------------------------------------
428+void ADDCHAN(void *d, const char *fmt,...)
429+{
430+ va_list ap;
431+ va_start(ap, fmt);
432+ ADDLOG2(fmt,ap,chanID,false,d,LogBuffer::T_NONE);
433+ va_end(ap);
434+}
435+// --------------------------------------------------
436+void ADDHIT(void *d, const char *fmt,...)
437+{
438+ va_list ap;
439+ va_start(ap, fmt);
440+ ADDLOG2(fmt,ap,hitID,false,d,LogBuffer::T_NONE);
441+ va_end(ap);
442+}
443+// --------------------------------------------------
444+void ADDCONN(void *d, const char *fmt,...)
445+{
446+ va_list ap;
447+ va_start(ap, fmt);
448+ ADDLOG2(fmt,ap,statusID,false,d,LogBuffer::T_NONE);
449+ va_end(ap);
450+}
451+
452+WLock sd_lock;
453+WLock ld_lock;
454+
455+// --------------------------------------------------
456+THREAD_PROC showConnections(ThreadInfo *thread)
457+{
458+// thread->lock();
459+ while (thread->active)
460+ {
461+ int sel,top,i;
462+/* sel = SendDlgItemMessage(guiWnd, statusID,LB_GETCURSEL, 0, 0);
463+ top = SendDlgItemMessage(guiWnd, statusID,LB_GETTOPINDEX, 0, 0);
464+
465+ SendDlgItemMessage(guiWnd, statusID, LB_RESETCONTENT, 0, 0);
466+ Servent *s = servMgr->servents;
467+ while (s)
468+ {
469+ if (s->type != Servent::T_NONE)
470+ {
471+ Host h = s->getHost();
472+ {
473+ unsigned int ip = h.ip;
474+ unsigned short port = h.port;
475+
476+ Host h(ip,port);
477+ char hostName[64];
478+ h.toStr(hostName);
479+
480+ unsigned int tnum = 0;
481+ char tdef = 's';
482+ if (s->lastConnect)
483+ tnum = sys->getTime()-s->lastConnect;
484+
485+ if ((s->type == Servent::T_RELAY) || (s->type == Servent::T_DIRECT))
486+ {
487+ ADDCONN(s,"%s-%s-%d%c - %s - %d - %s ",
488+ s->getTypeStr(),s->getStatusStr(),tnum,tdef,
489+ hostName,
490+ s->syncPos,s->agent.cstr()
491+ ); //JP-Patch
492+ }else{
493+ if (s->status == Servent::S_CONNECTED)
494+ {
495+ ADDCONN(s,"%s-%s-%d%c - %s - %d/%d",
496+ s->getTypeStr(),s->getStatusStr(),tnum,tdef,
497+ hostName,
498+ s->gnuStream.packetsIn,s->gnuStream.packetsOut);
499+ }else{
500+ ADDCONN(s,"%s-%s-%d%c - %s",
501+ s->getTypeStr(),s->getStatusStr(),tnum,tdef,
502+ hostName
503+ );
504+ }
505+
506+ }
507+
508+ }
509+ }
510+ s=s->next;
511+ }
512+ if (sel >= 0)
513+ SendDlgItemMessage(guiWnd, statusID,LB_SETCURSEL, sel, 0);
514+ if (top >= 0)
515+ SendDlgItemMessage(guiWnd, statusID,LB_SETTOPINDEX, top, 0);*/
516+
517+ int sd_count = 0;
518+ int diff = 0;
519+
520+ sel = SendDlgItemMessage(guiWnd, statusID,LB_GETCURSEL, 0, 0);
521+ top = SendDlgItemMessage(guiWnd, statusID,LB_GETTOPINDEX, 0, 0);
522+
523+ ServentData *sd = servent_top;
524+ while(sd){
525+ sd->flg = false;
526+ sd = sd->next;
527+ sd_count++;
528+ }
529+
530+ servMgr->lock.on();
531+ Servent *s = servMgr->servents;
532+
533+ Channel *sel_ch = getListBoxChannel(); // for PCRaw (connection list)
534+
535+ while(s){
536+ Servent *next;
537+ bool foundFlg = false;
538+ ChanHitList *chl;
539+ bool infoFlg = false;
540+ bool relay = true;
541+ bool firewalled = false;
542+ unsigned int numRelays = 0;
543+ unsigned int totalRelays = 0;
544+ unsigned int totalListeners = 0;
545+ int vp_ver = 0;
546+ char ver_ex_prefix[2] = {' ', ' '};
547+ int ver_ex_number = 0;
548+
549+ next = s->next;
550+
551+ // for PCRaw (connection list) start
552+ if(sel_ch && !sel_ch->info.id.isSame(s->chanID))
553+ {
554+ s = next;
555+ continue;
556+ }
557+ // for PCRaw (connection list) end
558+
559+ if (s->type != Servent::T_NONE){
560+
561+ chanMgr->hitlistlock.on();
562+
563+ chl = chanMgr->findHitListByID(s->chanID);
564+ if (chl){
565+ ChanHit *hit = chl->hit;
566+ while(hit){
567+ if (hit->servent_id == s->servent_id){
568+ if ((hit->numHops == 1)/* && (hit->host.ip == s->getHost().ip)*/){
569+ infoFlg = true;
570+ relay = hit->relay;
571+ firewalled = hit->firewalled;
572+ numRelays = hit->numRelays;
573+ vp_ver = hit->version_vp;
574+ ver_ex_prefix[0] = hit->version_ex_prefix[0];
575+ ver_ex_prefix[1] = hit->version_ex_prefix[1];
576+ ver_ex_number = hit->version_ex_number;
577+ }
578+ totalRelays += hit->numRelays;
579+ totalListeners += hit->numListeners;
580+ }
581+ hit = hit->next;
582+ }
583+ }
584+ chanMgr->hitlistlock.off();
585+ }
586+
587+ sd = servent_top;
588+ while(sd){
589+ if (sd->servent_id == s->servent_id){
590+ foundFlg = true;
591+ if (s->thread.finish) break;
592+ sd->flg = true;
593+ sd->type = s->type;
594+ sd->status = s->status;
595+ sd->agent = s->agent;
596+ sd->h = s->getHost();
597+ sd->syncpos = s->syncPos;
598+ sd->tnum = (s->lastConnect) ? sys->getTime()-s->lastConnect : 0;
599+ sd->typeStr = s->getTypeStr();
600+ sd->statusStr = s->getStatusStr();
601+ sd->infoFlg = infoFlg;
602+ sd->relay = relay;
603+ sd->firewalled = firewalled;
604+ sd->numRelays = numRelays;
605+ sd->totalRelays = totalRelays;
606+ sd->totalListeners = totalListeners;
607+ sd->vp_ver = vp_ver;
608+ sd->lastSkipTime = s->lastSkipTime;
609+ sd->lastSkipCount = s->lastSkipCount;
610+ sd->ver_ex_prefix[0] = ver_ex_prefix[0];
611+ sd->ver_ex_prefix[1] = ver_ex_prefix[1];
612+ sd->ver_ex_number = ver_ex_number;
613+ break;
614+ }
615+ sd = sd->next;
616+ }
617+ if (!foundFlg && (s->type != Servent::T_NONE) && !s->thread.finish){
618+ ServentData *newData = new ServentData();
619+ newData->next = servent_top;
620+ servent_top = newData;
621+ newData->flg = true;
622+ newData->servent_id = s->servent_id;
623+ newData->type = s->type;
624+ newData->status = s->status;
625+ newData->agent = s->agent;
626+ newData->h = s->getHost();
627+ newData->syncpos = s->syncPos;
628+ newData->tnum = (s->lastConnect) ? sys->getTime()-s->lastConnect : 0;
629+ newData->typeStr = s->getTypeStr();
630+ newData->statusStr = s->getStatusStr();
631+ newData->infoFlg = infoFlg;
632+ newData->relay = relay;
633+ newData->firewalled = firewalled;
634+ newData->numRelays = numRelays;
635+ newData->totalRelays = totalRelays;
636+ newData->totalListeners = totalListeners;
637+ newData->vp_ver = vp_ver;
638+ newData->lastSkipTime = s->lastSkipTime;
639+ newData->lastSkipCount = s->lastSkipCount;
640+ newData->ver_ex_prefix[0] = ver_ex_prefix[0];
641+ newData->ver_ex_prefix[1] = ver_ex_prefix[1];
642+ newData->ver_ex_number = ver_ex_number;
643+
644+ int idx = SendDlgItemMessage(guiWnd, statusID, LB_ADDSTRING, 0, (LONG)"");
645+ SendDlgItemMessage(guiWnd, statusID, LB_SETITEMDATA, idx, (LONG)(newData->servent_id));
646+ diff++;
647+ }
648+ s = next;
649+ }
650+ servMgr->lock.off();
651+
652+ sd_lock.on();
653+ sd = servent_top;
654+ int idx = 0;
655+ ServentData *prev = NULL;
656+ //int *idxs;
657+ //if (sd_count){
658+ // idxs = new int[sd_count];
659+ //}
660+ while(sd){
661+ if (!sd->flg || (sd->type == Servent::T_NONE)){
662+ ServentData *next = sd->next;
663+ if (!prev){
664+ servent_top = next;
665+ } else {
666+ prev->next = next;
667+ }
668+ delete sd;
669+
670+ PostMessage(GetDlgItem(guiWnd, statusID), LB_DELETESTRING, idx, 0);
671+// SendDlgItemMessage(guiWnd, statusID, LB_DELETESTRING, idx, 0);
672+ sd = next;
673+// diff--;
674+ } else {
675+ idx++;
676+ prev = sd;
677+ sd = sd->next;
678+ }
679+ }
680+ sd_lock.off();
681+
682+ if ((sel >= 0) && (diff != 0)){
683+ PostMessage(GetDlgItem(guiWnd, statusID), LB_SETCURSEL, sel+diff, 0);
684+ }
685+ if (top >= 0){
686+ PostMessage(GetDlgItem(guiWnd, statusID), LB_SETTOPINDEX, top, 0);
687+ }
688+ InvalidateRect(GetDlgItem(guiWnd, statusID), NULL, FALSE);
689+
690+ char cname[34];
691+
692+ {
693+// sel = SendDlgItemMessage(guiWnd, chanID,LB_GETCURSEL, 0, 0);
694+// top = SendDlgItemMessage(guiWnd, chanID,LB_GETTOPINDEX, 0, 0);
695+// SendDlgItemMessage(guiWnd, chanID, LB_RESETCONTENT, 0, 0);
696+
697+ ListData *ld = list_top;
698+ while(ld){
699+ ld->flg = false;
700+ ld = ld->next;
701+ }
702+
703+ Channel *c = chanMgr->channel;
704+
705+ while (c)
706+ {
707+ Channel *next;
708+ bool foundFlg = false;
709+ String sjis;
710+ sjis = c->getName();
711+ sjis.convertTo(String::T_SJIS);
712+
713+ next = c->next;
714+
715+ ld = list_top;
716+ while(ld){
717+ if (ld->channel_id == c->channel_id){
718+ foundFlg = true;
719+ if (c->thread.finish) break;
720+ ld->flg = true;
721+ strncpy(ld->name, sjis, 20);
722+ ld->name[20] = '\0';
723+ ld->bitRate = c->info.bitrate;
724+ ld->status = c->status;
725+ ld->statusStr = c->getStatusStr();
726+ ld->totalListeners = c->totalListeners();
727+ ld->totalRelays = c->totalRelays();
728+ ld->localListeners = c->localListeners();
729+ ld->localRelays = c->localRelays();
730+ ld->stayConnected = c->stayConnected;
731+ ld->chDisp = c->chDisp;
732+ ld->bTracker = c->sourceHost.tracker;
733+ break;
734+ }
735+ ld = ld->next;
736+ }
737+ if (!foundFlg && !c->thread.finish){
738+ ListData *newData = new ListData();
739+ newData->next = list_top;
740+ list_top = newData;
741+ newData->flg = true;
742+ newData->channel_id = c->channel_id;
743+ strncpy(newData->name, sjis, 20);
744+ newData->name[20] = '\0';
745+ newData->bitRate = c->info.bitrate;
746+ newData->status = c->status;
747+ newData->statusStr = c->getStatusStr();
748+ newData->totalListeners = c->totalListeners();
749+ newData->totalRelays = c->totalRelays();
750+ newData->localListeners = c->localListeners();
751+ newData->localRelays = c->localRelays();
752+ newData->stayConnected = c->stayConnected;
753+ newData->chDisp = c->chDisp;
754+ newData->bTracker = c->sourceHost.tracker;
755+
756+ int idx = SendDlgItemMessage(guiWnd, chanID, LB_ADDSTRING, 0, (LONG)"");
757+ SendDlgItemMessage(guiWnd, chanID, LB_SETITEMDATA, idx, (LONG)(newData->channel_id));
758+ }
759+ c = next;
760+ }
761+
762+ ld = list_top;
763+ int idx = 0;
764+ ListData *prev = NULL;
765+ while(ld){
766+ if (!ld->flg){
767+ ListData *next = ld->next;
768+ if (!prev){
769+ list_top = next;
770+ } else {
771+ prev->next = next;
772+ }
773+ delete ld;
774+
775+ SendDlgItemMessage(guiWnd, chanID, LB_DELETESTRING, idx, 0);
776+ ld = next;
777+ } else {
778+ idx++;
779+ prev = ld;
780+ ld = ld->next;
781+ }
782+ }
783+
784+ InvalidateRect(GetDlgItem(guiWnd, chanID), NULL, FALSE);
785+
786+/* String sjis; //JP-Patch
787+ sjis = c->getName(); //JP-Patch
788+ sjis.convertTo(String::T_SJIS); //JP-Patch
789+ strncpy(cname,sjis.cstr(),16); //JP-Patch
790+ //strncpy(cname,c->getName(),16);
791+ cname[16] = 0;
792+ //int sec = ((c->currSPacket*c->bitrate*SPacket::DATA_LEN)/8)/(c->bitrate*1024);
793+ //int k = ((c->currSPacket*SPacket::DATA_LEN))/(1024);
794+ //ADDCHAN(c,"%d. %s - %d KB/s - %du - %dk",num,cname,c->bitrate,c->listeners,k);
795+ //ADDCHAN(c,"%d. %s - %d kb/s - %s",c->index,cname,c->getBitrate(),c->getStatusStr());
796+ ADDCHAN(c,"%s - %d kb/s - %s - %d/%d-[%d/%d] - %s",cname,c->getBitrate(),c->getStatusStr(),
797+ c->totalListeners(),c->totalRelays(),c->localListeners(),c->localRelays(),c->stayConnected?"Yes":"No"); //JP-Patch
798+ }
799+ c=c->next;
800+ }*/
801+// if (sel >= 0)
802+// SendDlgItemMessage(guiWnd, chanID,LB_SETCURSEL, sel, 0);
803+// if (top >= 0)
804+// SendDlgItemMessage(guiWnd, chanID,LB_SETTOPINDEX, top, 0);
805+ }
806+
807+
808+
809+ bool update = ((sys->getTime() - chanMgr->lastHit) < 3)||(!shownChannels);
810+
811+ if (update)
812+ {
813+ shownChannels = true;
814+ {
815+ sel = SendDlgItemMessage(guiWnd, hitID,LB_GETCURSEL, 0, 0);
816+ top = SendDlgItemMessage(guiWnd, hitID,LB_GETTOPINDEX, 0, 0);
817+ SendDlgItemMessage(guiWnd, hitID, LB_RESETCONTENT, 0, 0);
818+
819+ chanMgr->hitlistlock.on();
820+
821+ ChanHitList *chl = chanMgr->hitlist;
822+
823+ while (chl)
824+ {
825+ if (chl->isUsed())
826+ {
827+ if (chl->info.match(chanMgr->searchInfo))
828+ {
829+ strncpy(cname,chl->info.name.cstr(),16);
830+ cname[16] = 0;
831+ ADDHIT(chl,"%s - %d kb/s - %d/%d",cname,chl->info.bitrate,chl->numListeners(),chl->numHits());
832+ }
833+ }
834+ chl = chl->next;
835+ }
836+ chanMgr->hitlistlock.off();
837+ }
838+
839+ if (sel >= 0)
840+ SendDlgItemMessage(guiWnd, hitID,LB_SETCURSEL, sel, 0);
841+ if (top >= 0)
842+ SendDlgItemMessage(guiWnd, hitID,LB_SETTOPINDEX, top, 0);
843+ }
844+
845+
846+
847+
848+ {
849+ switch (servMgr->getFirewall())
850+ {
851+ case ServMgr::FW_ON:
852+ SendDlgItemMessage(guiWnd, IDC_EDIT4,WM_SETTEXT, 0, (LONG)"Firewalled");
853+ break;
854+ case ServMgr::FW_UNKNOWN:
855+ SendDlgItemMessage(guiWnd, IDC_EDIT4,WM_SETTEXT, 0, (LONG)"Unknown");
856+ break;
857+ case ServMgr::FW_OFF:
858+ SendDlgItemMessage(guiWnd, IDC_EDIT4,WM_SETTEXT, 0, (LONG)"Normal");
859+ break;
860+ }
861+ }
862+
863+ // sleep for 1 second .. check every 1/10th for shutdown
864+ for(i=0; i<10; i++)
865+ {
866+ if(sleep_skip) // for PCRaw (connection list)
867+ {
868+ sleep_skip = false;
869+ break;
870+ }
871+
872+ if (!thread->active)
873+ break;
874+ sys->sleep(100);
875+ }
876+ }
877+
878+ ListData *ld = list_top;
879+ while(ld){
880+ ListData *next;
881+ next = ld->next;
882+
883+ delete ld;
884+
885+ ld = next;
886+ }
887+ list_top = NULL;
888+
889+ ServentData *sd = servent_top;
890+ while(sd){
891+ ServentData *next;
892+ next = sd->next;
893+
894+ delete sd;
895+
896+ sd = next;
897+ }
898+ servent_top = NULL;
899+
900+// thread->unlock();
901+ return 0;
902+}
903+
904+
905+// --------------------------------------------------
906+void tryConnect()
907+{
908+#if 0
909+ ClientSocket sock;
910+
911+ char tmp[32];
912+
913+ char *sendStr = "GET / HTTP/1.1\n\n";
914+
915+ try {
916+ sock.open("taiyo",80);
917+ sock.write(sendStr,strlen(sendStr));
918+ sock.read(tmp,32);
919+ LOG("Connected: %s",tmp);
920+ }catch(IOException &e)
921+ {
922+ LOG(e.msg);
923+ }
924+#endif
925+}
926+
927+
928+// ---------------------------------
929+void APICALL MyPeercastApp ::printLog(LogBuffer::TYPE t, const char *str)
930+{
931+ ADDLOG(str,logID,true,NULL,t);
932+ if (logFile.isOpen())
933+ {
934+ logFile.writeLine(str);
935+ logFile.flush();
936+ }
937+}
938+
939+
940+// --------------------------------------------------
941+static void setControls(bool fromGUI)
942+{
943+ if (!guiWnd)
944+ return;
945+ setEditInt(IDC_EDIT1,servMgr->serverHost.port);
946+ setEditStr(IDC_EDIT3,servMgr->password);
947+ setEditStr(IDC_EDIT9,chanMgr->broadcastMsg.cstr());
948+ setEditInt(IDC_MAXRELAYS,servMgr->maxRelays);
949+
950+ setButtonState(IDC_CHECK11,chanMgr->broadcastMsg[0]!=0);
951+
952+ setButtonState(IDC_LOGDEBUG,(servMgr->showLog&(1<<LogBuffer::T_DEBUG))!=0);
953+ setButtonState(IDC_LOGERRORS,(servMgr->showLog&(1<<LogBuffer::T_ERROR))!=0);
954+ setButtonState(IDC_LOGNETWORK,(servMgr->showLog&(1<<LogBuffer::T_NETWORK))!=0);
955+ setButtonState(IDC_LOGCHANNELS,(servMgr->showLog&(1<<LogBuffer::T_CHANNEL))!=0);
956+
957+ setButtonState(IDC_CHECK9,servMgr->pauseLog);
958+
959+
960+ if (!fromGUI)
961+ setButtonState(IDC_CHECK1,servMgr->autoServe);
962+
963+
964+}
965+// --------------------------------------------------
966+void APICALL MyPeercastApp::updateSettings()
967+{
968+ setControls(true);
969+}
970+
971+void MoveControl(HWND hWnd, int cx, int cy, int y, HDWP& hDwp){
972+ RECT rc2;
973+ POINT pos;
974+
975+ GetWindowRect(hWnd, &rc2);
976+ pos.x = rc2.left;
977+ pos.y = rc2.top;
978+ ScreenToClient(guiWnd, &pos);
979+ hDwp = DeferWindowPos(hDwp, hWnd, HWND_TOP,
980+ pos.x,cy-y-(rc2.bottom-rc2.top),rc2.right-rc2.left,rc2.bottom-rc2.top,SWP_SHOWWINDOW);
981+}
982+
983+void MoveControl2(HWND hWnd, int cx, int cy, int y, HDWP& hDwp){
984+ RECT rc;
985+ POINT pos;
986+
987+ GetWindowRect(hWnd, &rc);
988+ pos.x = rc.left;
989+ pos.y = rc.top;
990+ ScreenToClient(guiWnd, &pos);
991+ hDwp = DeferWindowPos(hDwp, hWnd, HWND_TOP,
992+ pos.x,pos.y,rc.right-rc.left,cy-y,SWP_SHOWWINDOW);
993+}
994+
995+// --------------------------------------------------
996+void MoveControls(LPARAM lParam){
997+ HDWP hDwp;
998+ //IDC_LIST1 3,291,291,43
999+/* CONTROL "有効",IDC_CHECK1,"Button",BS_AUTOCHECKBOX | BS_PUSHLIKE |
1000+ WS_TABSTOP,9,29,60,20,WS_EX_TRANSPARENT
1001+ EDITTEXT IDC_EDIT1,127,18,47,12,ES_AUTOHSCROLL
1002+ RTEXT "ポート :",IDC_STATIC,107,20,18,8
1003+ GROUPBOX "",IDC_STATIC,3,4,291,49
1004+ PUSHBUTTON "切断",IDC_BUTTON5,67,65,43,13
1005+ EDITTEXT IDC_EDIT3,127,34,47,12,ES_PASSWORD | ES_AUTOHSCROLL
1006+ RTEXT "パスワード :",IDC_STATIC,89,36,36,8
1007+ PUSHBUTTON "再生",IDC_BUTTON8,10,65,22,13
1008+ PUSHBUTTON "再接続",IDC_BUTTON3,41,65,24,13
1009+ RTEXT "最大リレー数 :",IDC_STATIC,203,20,40,8
1010+ EDITTEXT IDC_MAXRELAYS,248,18,40,14,ES_AUTOHSCROLL | ES_NUMBER
1011+ PUSHBUTTON "キープ",IDC_BUTTON9,112,65,24,13
1012+ LTEXT "Peercast-VP",IDC_STATIC,21,14,39,8*/
1013+
1014+/*
1015+ GROUPBOX "リレー",IDC_GROUPBOX_RELAY,3,54,291,132
1016+ LISTBOX IDC_LIST3,3,81,291,102,LBS_OWNERDRAWFIXED |
1017+ LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
1018+ CONTROL "DJ",IDC_CHECK11,"Button",BS_AUTOCHECKBOX | BS_PUSHLIKE |
1019+ WS_TABSTOP,5,190,23,12
1020+ EDITTEXT IDC_EDIT9,33,189,261,14,ES_AUTOHSCROLL
1021+ LTEXT "コネクション",IDC_STATIC_CONNECTION,3,214,40,8
1022+ PUSHBUTTON "切断",IDC_BUTTON6,47,209,43,13
1023+ LISTBOX IDC_LIST2,3,224,291,53,LBS_NOINTEGRALHEIGHT | WS_VSCROLL |
1024+ WS_TABSTOP
1025+ LTEXT "ログ",IDC_STATIC_LOG,3,282,13,8
1026+ PUSHBUTTON "クリア",IDC_BUTTON1,35,279,25,11
1027+ CONTROL "停止",IDC_CHECK9,"Button",BS_AUTOCHECKBOX | BS_PUSHLIKE |
1028+ WS_TABSTOP,60,279,30,11
1029+ CONTROL "デバッグ",IDC_LOGDEBUG,"Button",BS_AUTOCHECKBOX |
1030+ BS_PUSHLIKE | WS_TABSTOP,127,279,32,11
1031+ CONTROL "エラー",IDC_LOGERRORS,"Button",BS_AUTOCHECKBOX |
1032+ BS_PUSHLIKE | WS_TABSTOP,159,279,25,11
1033+ CONTROL "ネットワーク",IDC_LOGNETWORK,"Button",BS_AUTOCHECKBOX |
1034+ BS_PUSHLIKE | WS_TABSTOP,185,279,35,11
1035+ CONTROL "チャンネル",IDC_LOGCHANNELS,"Button",BS_AUTOCHECKBOX |
1036+ BS_PUSHLIKE | WS_TABSTOP,221,279,35,11
1037+ LISTBOX IDC_LIST1,3,291,291,43,LBS_NOINTEGRALHEIGHT | WS_VSCROLL |
1038+ WS_TABSTOP*/
1039+
1040+ hDwp = BeginDeferWindowPos(15);
1041+ int cx = LOWORD(lParam);
1042+ int cy = HIWORD(lParam);
1043+
1044+ MoveControl2(GetDlgItem(guiWnd, IDC_GROUPBOX_RELAY), cx, cy, 343, hDwp);
1045+ MoveControl2(GetDlgItem(guiWnd, IDC_LIST3), cx, cy, 385, hDwp);
1046+
1047+ MoveControl(GetDlgItem(guiWnd, IDC_EDIT9), cx, cy, 233, hDwp);
1048+ MoveControl(GetDlgItem(guiWnd, IDC_CHECK11), cx, cy, 232, hDwp);
1049+ MoveControl(GetDlgItem(guiWnd, IDC_STATIC_CONNECTION), cx, cy, 209, hDwp);
1050+ MoveControl(GetDlgItem(guiWnd, IDC_BUTTON6), cx, cy, 208, hDwp);
1051+ MoveControl(GetDlgItem(guiWnd, IDC_LIST2), cx, cy, 94, hDwp);
1052+ MoveControl(GetDlgItem(guiWnd, IDC_STATIC_LOG), cx, cy, 72, hDwp);
1053+ MoveControl(GetDlgItem(guiWnd, IDC_CHECK9), cx, cy, 71, hDwp);
1054+ MoveControl(GetDlgItem(guiWnd, IDC_BUTTON1), cx, cy, 71, hDwp);
1055+ MoveControl(GetDlgItem(guiWnd, IDC_LOGDEBUG), cx, cy, 71, hDwp);
1056+ MoveControl(GetDlgItem(guiWnd, IDC_LOGNETWORK), cx, cy, 71, hDwp);
1057+ MoveControl(GetDlgItem(guiWnd, IDC_LOGERRORS), cx, cy, 71, hDwp);
1058+ MoveControl(GetDlgItem(guiWnd, IDC_LOGCHANNELS), cx, cy, 71, hDwp);
1059+ MoveControl(GetDlgItem(guiWnd, IDC_LIST1), cx, cy, 3, hDwp);
1060+
1061+ EndDeferWindowPos(hDwp);
1062+}
1063+
1064+WINDOWPLACEMENT winPlace;
1065+bool guiFlg = false;
1066+
1067+// --------------------------------------------------
1068+LRESULT CALLBACK GUIProc (HWND hwnd, UINT message,
1069+ WPARAM wParam, LPARAM lParam)
1070+{
1071+
1072+ static const struct
1073+ {
1074+ LRESULT from; // 変換元
1075+ LRESULT to; // 変換先
1076+ }
1077+ trans[] =
1078+ {
1079+ { HTLEFT, HTBORDER }, // 左端の左右矢印 → 矢印なし
1080+ { HTRIGHT, HTBORDER }, // 右端の左右矢印 → 矢印なし
1081+ { HTTOPLEFT, HTTOP }, // 左上隅の斜め矢印 → 縦矢印
1082+ { HTTOPRIGHT, HTTOP }, // 右上隅の斜め矢印 → 縦矢印
1083+ { HTBOTTOMLEFT, HTBOTTOM }, // 左下隅の斜め矢印 → 縦矢印
1084+ { HTBOTTOMRIGHT, HTBOTTOM }, // 右下隅の斜め矢印 → 縦矢印
1085+ { HTTOP, HTTOP },
1086+ { HTBOTTOM, HTBOTTOM }
1087+ };
1088+
1089+
1090+ bool rectflg = false;
1091+
1092+ switch (message)
1093+ {
1094+ case WM_INITDIALOG:
1095+ guiWnd = hwnd;
1096+
1097+ shownChannels = false;
1098+ logID = IDC_LIST1; // log
1099+ statusID = IDC_LIST2; // status
1100+ hitID = IDC_LIST4; // hit
1101+ chanID = IDC_LIST3; // channels
1102+
1103+ enableControl(IDC_BUTTON8,false);
1104+ enableControl(IDC_BUTTON11,false);
1105+ enableControl(IDC_BUTTON10,false);
1106+
1107+ peercastApp->updateSettings();
1108+
1109+ if (servMgr->autoServe)
1110+ setButtonState(IDC_CHECK1,true);
1111+ if (servMgr->autoConnect)
1112+ setButtonState(IDC_CHECK2,true);
1113+
1114+
1115+ guiThread.func = showConnections;
1116+ if (!sys->startThread(&guiThread))
1117+ {
1118+ MessageBox(hwnd,"Unable to start GUI","PeerCast",MB_OK|MB_ICONERROR);
1119+ PostMessage(hwnd,WM_DESTROY,0,0);
1120+ }
1121+
1122+ if (guiFlg){
1123+ SetWindowPlacement(hwnd, &winPlace);
1124+ }
1125+
1126+ { // for PCRaw (connection list)
1127+ HWND hwndList;
1128+
1129+ hwndList = GetDlgItem(guiWnd, chanID);
1130+ wndOldListBox = (WNDPROC)GetWindowLong(hwndList, GWL_WNDPROC);
1131+ SetWindowLong(hwndList, GWL_WNDPROC, (DWORD)ListBoxProc);
1132+
1133+ hwndList = GetDlgItem(guiWnd, statusID);
1134+ wndOldConnListBox = (WNDPROC)GetWindowLong(hwndList, GWL_WNDPROC);
1135+ SetWindowLong(hwndList, GWL_WNDPROC, (DWORD)ConnListBoxProc);
1136+ }
1137+
1138+ break;
1139+
1140+ case WM_COMMAND:
1141+ switch( wParam )
1142+ {
1143+ case IDC_CHECK1: // start server
1144+ if (getButtonState(IDC_CHECK1))
1145+ {
1146+ //SendDlgItemMessage(hwnd, IDC_CHECK1,WM_SETTEXT, 0, (LPARAM)"Deactivate");
1147+
1148+ SendDlgItemMessage(hwnd, IDC_EDIT3,WM_GETTEXT, 64, (LONG)servMgr->password);
1149+
1150+ servMgr->serverHost.port = (unsigned short)getEditInt(IDC_EDIT1);
1151+ servMgr->setMaxRelays(getEditInt(IDC_MAXRELAYS));
1152+
1153+
1154+ enableControl(IDC_EDIT1,false);
1155+ enableControl(IDC_EDIT3,false);
1156+ enableControl(IDC_MAXRELAYS,false);
1157+ enableControl(IDC_BUTTON8,true);
1158+ enableControl(IDC_BUTTON11,true);
1159+ enableControl(IDC_BUTTON10,true);
1160+
1161+ //writeSettings();
1162+ servMgr->autoServe = true;
1163+
1164+ setEditStr(IDC_CHECK1,"Enabled");
1165+
1166+
1167+ }else{
1168+ //SendDlgItemMessage(hwnd, IDC_CHECK1,WM_SETTEXT, 0, (LPARAM)"Activate");
1169+
1170+ servMgr->autoServe = false;
1171+
1172+ enableControl(IDC_EDIT1,true);
1173+ enableControl(IDC_EDIT3,true);
1174+ enableControl(IDC_MAXRELAYS,true);
1175+ enableControl(IDC_BUTTON8,false);
1176+ enableControl(IDC_BUTTON11,false);
1177+ enableControl(IDC_BUTTON10,false);
1178+
1179+ setEditStr(IDC_CHECK1,"Disabled");
1180+
1181+ }
1182+ setControls(true);
1183+
1184+ break;
1185+ case IDC_CHECK11: // DJ message
1186+ if (getButtonState(IDC_CHECK11))
1187+ {
1188+ enableControl(IDC_EDIT9,false);
1189+ SendDlgItemMessage(hwnd, IDC_EDIT9,WM_GETTEXT, 128, (LONG)chanMgr->broadcastMsg.cstr());
1190+ }else{
1191+ enableControl(IDC_EDIT9,true);
1192+ chanMgr->broadcastMsg.clear();
1193+ }
1194+ break;
1195+ case IDC_LOGDEBUG: // log debug
1196+ servMgr->showLog = getButtonState(wParam) ? servMgr->showLog|(1<<LogBuffer::T_DEBUG) : servMgr->showLog&~(1<<LogBuffer::T_DEBUG);
1197+ break;
1198+ case IDC_LOGERRORS: // log errors
1199+ servMgr->showLog = getButtonState(wParam) ? servMgr->showLog|(1<<LogBuffer::T_ERROR) : servMgr->showLog&~(1<<LogBuffer::T_ERROR);
1200+ break;
1201+ case IDC_LOGNETWORK: // log network
1202+ servMgr->showLog = getButtonState(wParam) ? servMgr->showLog|(1<<LogBuffer::T_NETWORK) : servMgr->showLog&~(1<<LogBuffer::T_NETWORK);
1203+ break;
1204+ case IDC_LOGCHANNELS: // log channels
1205+ servMgr->showLog = getButtonState(wParam) ? servMgr->showLog|(1<<LogBuffer::T_CHANNEL) : servMgr->showLog&~(1<<LogBuffer::T_CHANNEL);
1206+ break;
1207+ case IDC_CHECK9: // pause log
1208+ servMgr->pauseLog = getButtonState(wParam);
1209+ break;
1210+ case IDC_CHECK2: // start outgoing
1211+
1212+ if (getButtonState(IDC_CHECK2))
1213+ {
1214+
1215+ SendDlgItemMessage(hwnd, IDC_COMBO1,WM_GETTEXT, 128, (LONG)servMgr->connectHost);
1216+ servMgr->autoConnect = true;
1217+ //SendDlgItemMessage(hwnd, IDC_CHECK2,WM_SETTEXT, 0, (LPARAM)"Disconnect");
1218+ enableControl(IDC_COMBO1,false);
1219+ }else{
1220+ servMgr->autoConnect = false;
1221+ //SendDlgItemMessage(hwnd, IDC_CHECK2,WM_SETTEXT, 0, (LPARAM)"Connect");
1222+ enableControl(IDC_COMBO1,true);
1223+ }
1224+ break;
1225+ case IDC_BUTTON11: // broadcast
1226+ {
1227+ Host sh = servMgr->serverHost;
1228+ if (sh.isValid())
1229+ {
1230+ char cmd[256];
1231+ sprintf(cmd,"http://localhost:%d/admin?page=broadcast",sh.port);
1232+ ShellExecute(hwnd, NULL, cmd, NULL, NULL, SW_SHOWNORMAL);
1233+
1234+ }else{
1235+ MessageBox(hwnd,"Server is not currently connected.\nPlease wait until you have a connection.","PeerCast",MB_OK);
1236+ }
1237+ }
1238+ break;
1239+ case IDC_BUTTON8: // play selected
1240+ {
1241+ Channel *c = getListBoxChannel();
1242+ if (c){
1243+ chanMgr->playChannel(c->info);
1244+ }
1245+ }
1246+ break;
1247+ case IDC_BUTTON7: // advanced
1248+ sys->callLocalURL("admin?page=settings",servMgr->serverHost.port);
1249+ break;
1250+ case IDC_BUTTON6: // servent disconnect
1251+ {
1252+/* Servent *s = (Servent *)getListBoxSelData(statusID);
1253+ if (s)
1254+ s->thread.active = false;*/
1255+ Servent *s = getListBoxServent();
1256+ if (s){
1257+ s->thread.active = false;
1258+ s->thread.finish = true;
1259+ }
1260+ sleep_skip = true;
1261+ }
1262+ break;
1263+ case IDC_BUTTON5: // chan disconnect
1264+ {
1265+/* Channel *c = (Channel *)getListBoxSelData(chanID);
1266+ if (c)
1267+ c->thread.active = false;*/
1268+
1269+// Channel *c = chanMgr->findChannelByChannelID((int)getListBoxSelData(chanID));
1270+ Channel *c = getListBoxChannel();
1271+ if (c){
1272+ c->thread.active = false;
1273+ c->thread.finish = true;
1274+ }
1275+ sleep_skip = true;
1276+ }
1277+ break;
1278+ case IDC_BUTTON3: // chan bump
1279+ {
1280+/* Channel *c = (Channel *)getListBoxSelData(chanID);
1281+ if (c)
1282+ c->bump = true;*/
1283+
1284+// Channel *c = chanMgr->findChannelByChannelID((int)getListBoxSelData(chanID));
1285+ Channel *c = getListBoxChannel();
1286+ if (c){
1287+ c->bump = true;
1288+ }
1289+ }
1290+
1291+ break;
1292+ case IDC_BUTTON4: // get channel
1293+ {
1294+ ChanHitList *chl = (ChanHitList *)getListBoxSelData(hitID);
1295+ if (chl)
1296+ {
1297+ if (!chanMgr->findChannelByID(chl->info.id))
1298+ {
1299+ Channel *c = chanMgr->createChannel(chl->info,NULL);
1300+ if (c)
1301+ c->startGet();
1302+ }
1303+ }else{
1304+ MessageBox(hwnd,"Please select a channel","PeerCast",MB_OK);
1305+ }
1306+ }
1307+ break;
1308+
1309+ case IDC_BUTTON9: //JP-EX chan keep
1310+ {
1311+/* Channel *c = (Channel *)getListBoxSelData(chanID);
1312+ if (c)
1313+ {
1314+ if (!c->stayConnected)
1315+ {
1316+ //if (servMgr->getFirewall() == ServMgr::FW_OFF)
1317+ c->stayConnected = true;
1318+ }
1319+ else
1320+ c->stayConnected = false;
1321+ }*/
1322+
1323+// Channel *c = chanMgr->findChannelByChannelID((int)getListBoxSelData(chanID));
1324+ Channel *c = getListBoxChannel();
1325+ if (c){
1326+ if (!c->stayConnected){
1327+ c->stayConnected = true;
1328+ } else {
1329+ c->stayConnected = false;
1330+ }
1331+ }
1332+ }
1333+ break;
1334+
1335+ case IDC_BUTTON1: // clear log
1336+ SendDlgItemMessage(guiWnd, logID, LB_RESETCONTENT, 0, 0);
1337+ sys->logBuf->clear(); // for PCRaw (clear log)
1338+ break;
1339+
1340+ case IDC_BUTTON2: // find
1341+ {
1342+ char str[64];
1343+ SendDlgItemMessage(hwnd, IDC_EDIT2,WM_GETTEXT, 64, (LONG)str);
1344+ SendDlgItemMessage(hwnd, hitID, LB_RESETCONTENT, 0, 0);
1345+ ChanInfo info;
1346+ info.init();
1347+ info.name.set(str);
1348+ chanMgr->startSearch(info);
1349+ }
1350+ break;
1351+
1352+ }
1353+ break;
1354+
1355+ case WM_MEASUREITEM:
1356+ if ((UINT) wParam==IDC_LIST3){
1357+ LPMEASUREITEMSTRUCT lpMI = (LPMEASUREITEMSTRUCT)lParam;
1358+ lpMI->itemHeight = 12;
1359+ } else if ((UINT) wParam==IDC_LIST2){
1360+ LPMEASUREITEMSTRUCT lpMI = (LPMEASUREITEMSTRUCT)lParam;
1361+ lpMI->itemHeight = 12;
1362+ }
1363+ break;
1364+ case WM_DRAWITEM:
1365+ if ((UINT) wParam==IDC_LIST3)
1366+ {
1367+ LPDRAWITEMSTRUCT _DrawItem=(LPDRAWITEMSTRUCT)lParam;
1368+ HBRUSH hBrush;
1369+ ListData *ld;
1370+ unsigned int idx = 0;
1371+ bool flg = false;
1372+
1373+ ld = list_top;
1374+ while(ld){
1375+ if (_DrawItem->itemID == idx){
1376+ flg = true;
1377+ break;
1378+ }
1379+ ld = ld->next;
1380+ idx++;
1381+ }
1382+ if ((_DrawItem->itemState) & (ODS_SELECTED))
1383+ {
1384+ hBrush=CreateSolidBrush(RGB(49,106,197));
1385+ }
1386+ else
1387+ {
1388+ hBrush=CreateSolidBrush(RGB(255,255,255));
1389+ }
1390+ FillRect(_DrawItem->hDC,&_DrawItem->rcItem,hBrush);
1391+ DeleteObject(hBrush);
1392+ if (flg){
1393+ char buf[256];
1394+ if (ld->status == Channel::S_RECEIVING){
1395+ if (ld->chDisp.status == Channel::S_RECEIVING){
1396+ if (ld->chDisp.relay){
1397+ /* relay ok */
1398+ SetTextColor(_DrawItem->hDC,RGB(0,255,0));
1399+ SetBkColor(_DrawItem->hDC,RGB(255,255,255)) ;
1400+ } else {
1401+ /* no more relay */
1402+ if (ld->chDisp.numRelays){
1403+ /* relay full */
1404+ SetTextColor(_DrawItem->hDC,RGB(0,0,255));
1405+ SetBkColor(_DrawItem->hDC,RGB(255,255,255)) ;
1406+ } else {
1407+ /* relay ng */
1408+ SetTextColor(_DrawItem->hDC,RGB(255,0,255));
1409+ SetBkColor(_DrawItem->hDC,RGB(255,255,255)) ;
1410+ }
1411+ }
1412+ } else {
1413+ /* status unmatch */
1414+ SetTextColor(_DrawItem->hDC,RGB(0,0,0));
1415+ SetBkColor(_DrawItem->hDC,RGB(255,255,255)) ;
1416+ }
1417+ TextOut(_DrawItem->hDC,
1418+ _DrawItem->rcItem.left,
1419+ _DrawItem->rcItem.top,
1420+ "■",
1421+ 2);
1422+ } else {
1423+ SetTextColor(_DrawItem->hDC,RGB(0,0,0));
1424+ SetBkColor(_DrawItem->hDC,RGB(255,255,255)) ;
1425+ TextOut(_DrawItem->hDC,
1426+ _DrawItem->rcItem.left,
1427+ _DrawItem->rcItem.top,
1428+ "□",
1429+ 2);
1430+ }
1431+ if ((_DrawItem->itemState) & (ODS_SELECTED))
1432+ {
1433+ SetTextColor(_DrawItem->hDC,RGB(255,255,255));
1434+ SetBkColor(_DrawItem->hDC,RGB(49,106,197)) ;
1435+ } else {
1436+ SetTextColor(_DrawItem->hDC,RGB(0,0,0));
1437+ SetBkColor(_DrawItem->hDC,RGB(255,255,255)) ;
1438+ }
1439+ if (servMgr->getFirewall() == ServMgr::FW_ON){
1440+ SetTextColor(_DrawItem->hDC,RGB(255,0,0));
1441+ } else if (ld->bTracker && (ld->status == Channel::S_RECEIVING)){
1442+ if ((_DrawItem->itemState) & (ODS_SELECTED))
1443+ {
1444+ SetTextColor(_DrawItem->hDC,RGB(0,255,0));
1445+ SetBkColor(_DrawItem->hDC,RGB(49,106,197)) ;
1446+ } else {
1447+ SetTextColor(_DrawItem->hDC,RGB(0,128,0));
1448+ }
1449+ }
1450+
1451+ TextOut(_DrawItem->hDC,
1452+ _DrawItem->rcItem.left + 12,
1453+ _DrawItem->rcItem.top,
1454+ ld->name,
1455+ strlen(ld->name));
1456+/* sprintf(buf, "- %4dkbps -", ld->bitRate);
1457+ TextOut(_DrawItem->hDC,
1458+ _DrawItem->rcItem.left + 12 + 118,
1459+ _DrawItem->rcItem.top,
1460+ buf,
1461+ strlen(buf));
1462+ TextOut(_DrawItem->hDC,
1463+ _DrawItem->rcItem.left + 12 + 118 + 80,
1464+ _DrawItem->rcItem.top,
1465+ ld->statusStr,
1466+ strlen(ld->statusStr));
1467+ sprintf(buf, "- %3d/%3d - [%3d/%3d] -", ld->totalListeners, ld->totalRelays, ld->localListeners, ld->localRelays);
1468+ TextOut(_DrawItem->hDC,
1469+ _DrawItem->rcItem.left + 12 + 118 + 80 + 80,
1470+ _DrawItem->rcItem.top,
1471+ buf,
1472+ strlen(buf));
1473+ strcpy(buf, ld->stayConnected?"YES":"NO");
1474+ TextOut(_DrawItem->hDC,
1475+ _DrawItem->rcItem.left + 12 + 118 + 80 + 80 + 130,
1476+ _DrawItem->rcItem.top,
1477+ buf,
1478+ strlen(buf));*/
1479+ sprintf(buf, "- %4dkbps - %s - %3d/%3d - [%3d/%3d] - %s",
1480+ ld->bitRate,
1481+ ld->statusStr,
1482+ ld->totalListeners,
1483+ ld->totalRelays,
1484+ ld->localListeners,
1485+ ld->localRelays,
1486+ ld->stayConnected?"YES":"NO");
1487+ TextOut(_DrawItem->hDC,
1488+ _DrawItem->rcItem.left + 12 + 118,
1489+ _DrawItem->rcItem.top,
1490+ buf,
1491+ strlen(buf));
1492+ }
1493+ } else if ((UINT) wParam==IDC_LIST2) {
1494+ LPDRAWITEMSTRUCT _DrawItem=(LPDRAWITEMSTRUCT)lParam;
1495+ HBRUSH hBrush;
1496+ ServentData *sd;
1497+ unsigned int idx = 0;
1498+ bool flg = false;
1499+
1500+ sd_lock.on();
1501+
1502+ sd = servent_top;
1503+ while(sd){
1504+ if (_DrawItem->itemID == idx){
1505+ flg = true;
1506+ break;
1507+ }
1508+ sd = sd->next;
1509+ idx++;
1510+ }
1511+ if (flg){
1512+ char buf[256];
1513+ char hostName[64];
1514+ sd->h.toStr(hostName);
1515+
1516+ if ((_DrawItem->itemState) & (ODS_SELECTED))
1517+ {
1518+ hBrush=CreateSolidBrush(RGB(49,106,197));
1519+ }
1520+ else
1521+ {
1522+ hBrush=CreateSolidBrush(RGB(255,255,255));
1523+ }
1524+ FillRect(_DrawItem->hDC,&_DrawItem->rcItem,hBrush);
1525+ DeleteObject(hBrush);
1526+
1527+ if (sd->infoFlg){
1528+ if (sd->relay){
1529+ /* relay ok */
1530+ SetTextColor(_DrawItem->hDC,RGB(0,255,0));
1531+// SetBkColor(_DrawItem->hDC,RGB(255,255,255));
1532+ } else {
1533+ /* no more relay */
1534+ if (sd->numRelays){
1535+ /* relay full */
1536+ SetTextColor(_DrawItem->hDC,RGB(0,0,255));
1537+// SetBkColor(_DrawItem->hDC,RGB(255,255,255));
1538+ } else {
1539+ /* relay ng */
1540+ SetTextColor(_DrawItem->hDC,RGB(255,0,255));
1541+// SetBkColor(_DrawItem->hDC,RGB(255,255,255));
1542+ }
1543+ }
1544+ } else {
1545+ /* no info */
1546+ SetTextColor(_DrawItem->hDC,RGB(0,0,0));
1547+// SetBkColor(_DrawItem->hDC,RGB(255,255,255));
1548+ }
1549+
1550+ if (sd->lastSkipTime + 120 > sys->getTime()){
1551+ SetBkColor(_DrawItem->hDC,RGB(128,128,128));
1552+ if (sd->type == Servent::T_RELAY){
1553+ sprintf(buf, "▼(%d)",sd->lastSkipCount);
1554+ TextOut(_DrawItem->hDC,
1555+ _DrawItem->rcItem.left,
1556+ _DrawItem->rcItem.top,
1557+ buf,
1558+ strlen(buf));
1559+ } else {
1560+ SetTextColor(_DrawItem->hDC,RGB(0,0,0));
1561+ sprintf(buf, "▽(%d)",sd->lastSkipCount);
1562+ TextOut(_DrawItem->hDC,
1563+ _DrawItem->rcItem.left,
1564+ _DrawItem->rcItem.top,
1565+ buf,
1566+ strlen(buf));
1567+ }
1568+ } else {
1569+ SetBkColor(_DrawItem->hDC,RGB(255,255,255));
1570+ if (sd->type == Servent::T_RELAY){
1571+ TextOut(_DrawItem->hDC,
1572+ _DrawItem->rcItem.left,
1573+ _DrawItem->rcItem.top,
1574+ "■",
1575+ 2);
1576+ } else {
1577+ SetTextColor(_DrawItem->hDC,RGB(0,0,0));
1578+ SetBkColor(_DrawItem->hDC,RGB(255,255,255)) ;
1579+ TextOut(_DrawItem->hDC,
1580+ _DrawItem->rcItem.left,
1581+ _DrawItem->rcItem.top,
1582+ "□",
1583+ 2);
1584+ }
1585+ }
1586+
1587+ if ((_DrawItem->itemState) & (ODS_SELECTED))
1588+ {
1589+ SetTextColor(_DrawItem->hDC,RGB(255,255,255));
1590+ SetBkColor(_DrawItem->hDC,RGB(49,106,197)) ;
1591+ } else {
1592+ SetTextColor(_DrawItem->hDC,RGB(0,0,0));
1593+ SetBkColor(_DrawItem->hDC,RGB(255,255,255)) ;
1594+ }
1595+ if (sd->firewalled){
1596+ if (!sd->numRelays){
1597+ SetTextColor(_DrawItem->hDC,RGB(255,0,0));
1598+ } else {
1599+ SetTextColor(_DrawItem->hDC,RGB(255,168,0));
1600+ }
1601+ }
1602+
1603+ char buf2[16];
1604+ if (sd->ver_ex_number){
1605+ sprintf(buf2, "(%c%c%04d)", sd->ver_ex_prefix[0], sd->ver_ex_prefix[1], sd->ver_ex_number);
1606+ } else if (sd->vp_ver){
1607+ sprintf(buf2, "(VP%04d)", sd->vp_ver);
1608+ } else {
1609+ buf2[0] = '\0';
1610+ }
1611+ if (sd->type == Servent::T_RELAY){
1612+ if (sd->status == Servent::S_CONNECTED){
1613+ sprintf(buf, "(%d)RELAYING-%ds - %d/%d - %s - %d - %s%s",
1614+ sd->lastSkipCount,
1615+ sd->tnum,
1616+ sd->totalListeners, sd->totalRelays,
1617+ hostName,
1618+ sd->syncpos, sd->agent.cstr(), buf2
1619+ );
1620+ } else {
1621+ sprintf(buf, "%s-%s-%ds - %d/%d - %s - %d - %s%s",
1622+ sd->typeStr, sd->statusStr, sd->tnum,
1623+ sd->totalListeners, sd->totalRelays,
1624+ hostName,
1625+ sd->syncpos, sd->agent.cstr(), buf2
1626+ );
1627+ }
1628+ } else if (sd->type == Servent::T_DIRECT){
1629+ sprintf(buf, "%s-%s-%ds - %s - %d - %s ",
1630+ sd->typeStr, sd->statusStr, sd->tnum,
1631+ hostName,
1632+ sd->syncpos, sd->agent.cstr()
1633+ );
1634+ } else {
1635+ if (sd->status == Servent::S_CONNECTED){
1636+ sprintf(buf, "%s-%s-%ds - %s - %d/%d",
1637+ sd->typeStr, sd->statusStr, sd->tnum,
1638+ hostName,
1639+ sd->syncpos, sd->agent.cstr()
1640+ );
1641+ } else {
1642+ sprintf(buf, "%s-%s-%ds - %s",
1643+ sd->typeStr, sd->statusStr, sd->tnum,
1644+ hostName
1645+ );
1646+ }
1647+ }
1648+ TextOut(_DrawItem->hDC,
1649+ _DrawItem->rcItem.left + 12,
1650+ _DrawItem->rcItem.top,
1651+ buf,
1652+ strlen(buf));
1653+ }
1654+ sd_lock.off();
1655+ }
1656+ break;
1657+
1658+ case WM_SIZE:
1659+ MoveControls(lParam);
1660+ break;
1661+
1662+ case WM_GETMINMAXINFO:
1663+ {
1664+ MINMAXINFO *pmmi = (MINMAXINFO *)lParam;
1665+ if ( pmmi )
1666+ {
1667+ pmmi->ptMinTrackSize.x = 530; // 最小幅
1668+ pmmi->ptMinTrackSize.y = 435; // 最小高
1669+ pmmi->ptMaxTrackSize.x = 530; // 最大幅
1670+ pmmi->ptMaxTrackSize.y = 1200; // 最大高
1671+ }
1672+ return 0;
1673+ }
1674+
1675+/* case WM_NCHITTEST:
1676+ {
1677+ LRESULT lResult; // カーソル位置判定結果
1678+
1679+ // 変換一覧にあれば変換した値を返す。
1680+ lResult = DefWindowProc( guiWnd, message, wParam, lParam );
1681+ for( int i = 0; i < 8; i++ )
1682+ {
1683+ if ( lResult == trans[ i ].from )
1684+ {
1685+ return trans[ i ].to;
1686+ }
1687+ }
1688+// return lResult;
1689+// return HTCAPTION;
1690+// return 0;
1691+ }*/
1692+
1693+ case WM_CLOSE:
1694+ GetWindowPlacement(hwnd, &winPlace);
1695+ guiFlg = true;
1696+ DestroyWindow( hwnd );
1697+ break;
1698+
1699+ case WM_DESTROY:
1700+ GetWindowPlacement(hwnd, &winPlace);
1701+ guiFlg = true;
1702+ guiThread.active = false;
1703+// guiThread.lock();
1704+ guiWnd = NULL;
1705+// guiThread.unlock();
1706+ EndDialog(hwnd, LOWORD(wParam));
1707+ break;
1708+
1709+ //default:
1710+ // do nothing
1711+ //return DefDlgProc(hwnd, message, wParam, lParam); // this recurses for ever
1712+ //return DefWindowProc(hwnd, message, wParam, lParam); // this stops window messages
1713+ }
1714+ return 0;
1715+}
--- /dev/null
+++ b/PeerCast.root/PeerCast/ui/win32/Simple_vp/gui.h
@@ -0,0 +1,44 @@
1+// ------------------------------------------------
2+// File : gui.h
3+// Date: 4-apr-2002
4+// Author: giles
5+//
6+// (c) 2002 peercast.org
7+// ------------------------------------------------
8+// This program is free software; you can redistribute it and/or modify
9+// it under the terms of the GNU General Public License as published by
10+// the Free Software Foundation; either version 2 of the License, or
11+// (at your option) any later version.
12+
13+// This program is distributed in the hope that it will be useful,
14+// but WITHOUT ANY WARRANTY; without even the implied warranty of
15+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16+// GNU General Public License for more details.
17+// ------------------------------------------------
18+
19+#ifndef _GUI_H
20+#define _GUI_H
21+
22+#include "sys.h"
23+
24+extern LRESULT CALLBACK GUIProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam);
25+extern void ADDLOG(const char *str,int id,bool sel,void *data, LogBuffer::TYPE type);
26+
27+extern String iniFileName;
28+extern HWND guiWnd;
29+extern int logID;
30+
31+enum
32+{
33+ WM_INITSETTINGS = WM_USER,
34+ WM_GETPORTNUMBER,
35+ WM_PLAYCHANNEL,
36+ WM_TRAYICON,
37+ WM_SHOWGUI,
38+ WM_SHOWMENU,
39+ WM_PROCURL
40+
41+};
42+
43+
44+#endif
\ No newline at end of file
--- /dev/null
+++ b/PeerCast.root/PeerCast/ui/win32/Simple_vp/resource.h
@@ -0,0 +1,110 @@
1+//{{NO_DEPENDENCIES}}
2+// Microsoft Developer Studio generated include file.
3+// Used by Simple.rc
4+//
5+#define IDC_MYICON 2
6+#define IDD_MAINWINDOW 101
7+#define IDD_SIMPLE_DIALOG 102
8+#define IDD_ABOUTBOX 103
9+#define IDS_APP_TITLE 103
10+#define IDM_ABOUT 104
11+#define IDM_EXIT 105
12+#define IDS_HELLO 106
13+#define IDI_SIMPLE 107
14+#define IDI_SMALL 108
15+#define IDC_SIMPLE 109
16+#define IDI_SMALL2 109
17+#define IDR_MAINFRAME 128
18+#define IDR_TRAYMENU 130
19+#define IDR_VERMENU 133
20+#define IDD_CHANINFO 136
21+#define IDR_LTRAYMENU 137
22+#define IDC_LIST1 1000
23+#define IDC_BUTTON7 1001
24+#define IDC_ABOUTVER 1002
25+#define IDC_CHECK1 1003
26+#define IDC_EDIT1 1004
27+#define IDC_LIST2 1005
28+#define IDC_EDIT_PLAYING 1005
29+#define IDC_COMBO1 1006
30+#define IDC_EDIT_MESSAGE 1006
31+#define IDC_CHECK2 1007
32+#define IDC_EDIT_NAME 1007
33+#define IDC_BUTTON1 1008
34+#define IDC_EDIT_DESC 1008
35+#define IDC_DETAILS 1009
36+#define IDC_MAXRELAYS 1009
37+#define IDC_LIST3 1010
38+#define IDC_PLAY 1010
39+#define IDC_CONTACT 1011
40+#define IDC_EDIT2 1012
41+#define IDC_FORMAT 1013
42+#define IDC_EDIT_GENRE 1014
43+#define IDC_KEEP 1015
44+#define IDC_EDIT_STATUS 1016
45+#define IDC_GROUPBOX_RELAY 1016
46+#define IDC_EDIT_LISTENERS 1017
47+#define IDC_STATIC_CONNECTION 1017
48+#define IDC_LIST4 1018
49+#define IDC_EDIT_HOSTS 1018
50+#define IDC_STATIC_LOG 1018
51+#define IDC_BUTTON4 1019
52+#define IDC_BUTTON5 1020
53+#define IDC_BUTTON6 1021
54+#define IDC_EDIT3 1025
55+#define IDC_EDIT5 1027
56+#define IDC_LOGDEBUG 1037
57+#define IDC_LOGNETWORK 1038
58+#define IDC_LOGERRORS 1039
59+#define IDC_CHECK9 1041
60+#define IDC_BUTTON8 1043
61+#define IDC_BUTTON10 1046
62+#define IDC_BUTTON11 1047
63+#define IDC_LOGCHANNELS 1050
64+#define IDC_BUTTON2 1056
65+#define IDC_EDIT4 1058
66+#define IDC_BUTTON3 1059
67+#define IDC_EDIT9 1060
68+#define IDC_CHECK11 1061
69+#define IDC_BUTTON9 1062
70+#define IDM_SETTINGS_GUI 32771
71+#define ID_POPUP_ABOUT 32779
72+#define ID_POPUP_EXIT_CONFIRM 32781
73+#define ID_POPUP_EXIT_NO 32782
74+#define ID_POPUP_SETTINGS 32785
75+#define ID_POPUP_CONNECTIONS 32786
76+#define ID_POPUP_SHOWGUI 32788
77+#define ID_POPUP_ALLCHANNELS 32791
78+#define ID_POPUP_FAVORITES_EDIT 32792
79+#define ID_POPUP_ADVANCED_INFORMATION 32793
80+#define ID_POPUP_ADVANCED_SAVESETTINGS 32794
81+#define ID_POPUP_UPGRADE 32795
82+#define ID_POPUP_HELP 32796
83+#define ID_POPUP_ADVANCED_VIEWLOG 32797
84+#define ID_POPUP_FAVORITES_PLAYALL 32798
85+#define ID_POPUP_ADVANCED_ALLCHANNELS 32799
86+#define ID_POPUP_ADVANCED_RELAYEDCHANNELS 32800
87+#define ID_POPUP_ADVANCED_BROADCAST 32801
88+#define ID_FIND_CHANNELS 32808
89+#define ID_POPUP_SHOWMESSAGES_PEERCAST 32814
90+#define ID_POPUP_SHOWMESSAGES_BROADCASTERS 32815
91+#define ID_POPUP_SHOWMESSAGES_TRACKINFO 32816
92+#define ID_POPUP_POPUPMESSAGES_UPGRADEALERTS 32817
93+#define ID_POPUP_YELLOWPAGES 32818
94+#define ID_POPUP_ADVANCED_SHOWGUI 32819
95+#define ID_POPUP_YELLOWPAGES1 32820
96+#define ID_POPUP_YELLOWPAGES2 32821
97+#define ID_POPUP_SAVE_GUI_POS 32823
98+#define ID_POPUP_KEEP_DOWNSTREAMS 32825
99+#define IDC_STATIC -1
100+
101+// Next default values for new objects
102+//
103+#ifdef APSTUDIO_INVOKED
104+#ifndef APSTUDIO_READONLY_SYMBOLS
105+#define _APS_NEXT_RESOURCE_VALUE 142
106+#define _APS_NEXT_COMMAND_VALUE 32826
107+#define _APS_NEXT_CONTROL_VALUE 1019
108+#define _APS_NEXT_SYMED_VALUE 110
109+#endif
110+#endif
Binary files /dev/null and b/PeerCast.root/PeerCast/ui/win32/Simple_vp/small.ico differ
Binary files /dev/null and b/PeerCast.root/PeerCast/ui/win32/Simple_vp/small1.ico differ
Binary files /dev/null and b/PeerCast.root/PeerCast/ui/win32/Simple_vp/small3.ico differ
--- a/PeerCast.root/PeerCast/ui/win32/simple/Simple.vcproj
+++ b/PeerCast.root/PeerCast/ui/win32/simple/Simple.vcproj
@@ -17,6 +17,9 @@
1717 <Platform
1818 Name="x64"
1919 />
20+ <Platform
21+ Name="Pocket PC 2003 (ARMV4)"
22+ />
2023 </Platforms>
2124 <ToolFiles>
2225 </ToolFiles>
@@ -218,6 +221,108 @@
218221 />
219222 </Configuration>
220223 <Configuration
224+ Name="Private Debug|Pocket PC 2003 (ARMV4)"
225+ OutputDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
226+ IntermediateDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
227+ ConfigurationType="1"
228+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
229+ UseOfMFC="0"
230+ ATLMinimizesCRunTimeLibraryUsage="false"
231+ CharacterSet="2"
232+ >
233+ <Tool
234+ Name="VCPreBuildEventTool"
235+ />
236+ <Tool
237+ Name="VCCustomBuildTool"
238+ />
239+ <Tool
240+ Name="VCXMLDataGeneratorTool"
241+ />
242+ <Tool
243+ Name="VCWebServiceProxyGeneratorTool"
244+ />
245+ <Tool
246+ Name="VCMIDLTool"
247+ PreprocessorDefinitions="_DEBUG"
248+ MkTypLibCompatible="true"
249+ SuppressStartupBanner="true"
250+ TargetEnvironment="1"
251+ TypeLibraryName=".\Simple___Win32_Private_Debug/Simple.tlb"
252+ HeaderFileName=""
253+ />
254+ <Tool
255+ Name="VCCLCompilerTool"
256+ ExecutionBucket="7"
257+ Optimization="0"
258+ AdditionalIncludeDirectories="../../../core,../../../core/common"
259+ PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;PRIVATE_BROADCASTER"
260+ MinimalRebuild="true"
261+ RuntimeLibrary="1"
262+ PrecompiledHeaderFile=".\Simple___Win32_Private_Debug/Simple.pch"
263+ AssemblerListingLocation=".\Simple___Win32_Private_Debug/"
264+ ObjectFile=".\Simple___Win32_Private_Debug/"
265+ ProgramDataBaseFileName=".\Simple___Win32_Private_Debug/"
266+ BrowseInformation="1"
267+ WarningLevel="3"
268+ SuppressStartupBanner="true"
269+ />
270+ <Tool
271+ Name="VCManagedResourceCompilerTool"
272+ />
273+ <Tool
274+ Name="VCResourceCompilerTool"
275+ PreprocessorDefinitions="_DEBUG"
276+ Culture="1033"
277+ />
278+ <Tool
279+ Name="VCPreLinkEventTool"
280+ />
281+ <Tool
282+ Name="VCLinkerTool"
283+ AdditionalDependencies="ws2_32.lib odbc32.lib odbccp32.lib"
284+ OutputFile="Debug/PeerCast.exe"
285+ LinkIncremental="1"
286+ SuppressStartupBanner="true"
287+ GenerateDebugInformation="true"
288+ ProgramDatabaseFile=".\Simple___Win32_Private_Debug/PeerCast.pdb"
289+ SubSystem="2"
290+ RandomizedBaseAddress="1"
291+ DataExecutionPrevention="0"
292+ TargetMachine="0"
293+ />
294+ <Tool
295+ Name="VCALinkTool"
296+ />
297+ <Tool
298+ Name="VCXDCMakeTool"
299+ />
300+ <Tool
301+ Name="VCBscMakeTool"
302+ SuppressStartupBanner="true"
303+ OutputFile=".\Simple___Win32_Private_Debug/Simple.bsc"
304+ />
305+ <Tool
306+ Name="VCFxCopTool"
307+ />
308+ <Tool
309+ Name="VCCodeSignTool"
310+ />
311+ <Tool
312+ Name="VCPostBuildEventTool"
313+ Description="Copy exe to program files"
314+ CommandLine="copy debug\peercast.exe &quot;c:\program files\peercast&quot;"
315+ />
316+ <DeploymentTool
317+ ForceDirty="-1"
318+ RemoteDirectory=""
319