EnableIntrinsicFunctions="true"
FavorSizeOrSpeed="1"
OmitFramePointers="true"
+ WholeProgramOptimization="true"
AdditionalIncludeDirectories=""$(QTDIR)\include";"$(QTDIR)\include\QtCore";"$(QTDIR)\include\QtGui""
PreprocessorDefinitions="WIN32;NDEBUG;_WIN32_WINNT 0x0500;_CONSOLE;QT_LARGEFILE_SUPPORT;QT_GUI_LIB;QT_CORE_LIB;QT_THREAD_SUPPORT;QT_DLL;QT_NO_DEBUG"
MinimalRebuild="false"
Name="VCLinkerTool"
AdditionalOptions=""/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'""
AdditionalDependencies="qtmain.lib QtCore4.lib QtGui4.lib Winmm.lib Shlwapi.lib"
+ ShowProgress="2"
LinkIncremental="1"
AdditionalLibraryDirectories=""$(QTDIR)\lib";"$(QTDIR)\plugins\imageformats""
GenerateDebugInformation="false"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
+ LinkTimeCodeGeneration="1"
+ SetChecksum="true"
TargetMachine="1"
/>
<Tool
Name="VCLinkerTool"
AdditionalOptions=""/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'""
AdditionalDependencies="qtmain.lib QtCore.lib QtGui.lib QtSvg.lib qsvg.lib qico.lib Winmm.lib imm32.lib ws2_32.lib Shlwapi.lib"
+ ShowProgress="2"
Version=""
LinkIncremental="1"
AdditionalLibraryDirectories=""$(SolutionDir)\etc\Prerequisites\qt4_static\lib";"$(SolutionDir)\etc\Prerequisites\qt4_static\plugins\imageformats""
OptimizeReferences="2"
EnableCOMDATFolding="2"
LinkTimeCodeGeneration="1"
+ SetChecksum="true"
TargetMachine="1"
/>
<Tool
<body><tt>
<h3>LameXP - Version History</h3><br>
+Changes between v4.00 and v4.01:<br><ul>
+<li>Updated Vorbis encoder to v2.87 using aoTuV Beta-6 (2011-02-22), compiled with ICL 11.1 and MSVC 9.0
+<li>Updated language files (big "thank you" to all contributors !!!)
+</ul><br>
+
Changes between v3.18 and v4.00:<br><ul>
<li>Complete re-write of LameXP in the C++ programming language
<li>Switched IDE from Delphi 7.0 to Visual Studio 2008 + Qt Framework v4.7.1 (GNU Toolchain not yet)
<li>Added an option to prepend the relative source file path to the output file path
<li>Updated all command-line tools to support Unicode file names, mostly required custom patches
<li>Updated LAME encoder to v3.99.0.11 (2011-02-11), compiled with ICL 11.1.065
-<li>Updated OggEnc v2.87 using libvorbis v1.3.2 (2010-11-06), compiled with ICL 11.1 and MSVC 9.0
+<li>Updated Vorbis encoder to v2.87 using libvorbis v1.3.2 (2010-11-06), compiled with ICL 11.1 and MSVC 9.0
<li>Updated mpg123 decoder to v1.13.2 (2011-02-19), compiled with GCC 4.5.2
<li>Updated MediaInfo to v0.7.41 (2011-01-24), compiled with ICL 11.1.065
<li>Updated SoX to v14.3.1 (2010-04-11), compiled with MSVC 9.0
#define VER_LAMEXP_MAJOR 4
#define VER_LAMEXP_MINOR_HI 0
#define VER_LAMEXP_MINOR_LO 1
-#define VER_LAMEXP_BUILD 328
+#define VER_LAMEXP_BUILD 330
#define VER_LAMEXP_SUFFIX Beta-1
/*
outFile.close();
}
+ //Compare hashes
if(_stricmp(fileHash.result().toHex().constData(), expectedHash.constData()))
{
qWarning("\nFile checksum error:\n Expected = %040s\n Detected = %040s\n", expectedHash.constData(), fileHash.result().toHex().constData());
{
m_fileHandle = NULL;
QFileInfo existingFile(filePath);
+ existingFile.setCaching(false);
+ //Make sure the file exists, before we try to lock it
if(!existingFile.exists())
{
char error_msg[256];
m_filePath = existingFile.canonicalFilePath();
//Now lock the file
- m_fileHandle = CreateFileW(QWCHAR(QDir::toNativeSeparators(filePath)), GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, NULL, NULL);
+ for(int i = 0; i < 10; i++)
+ {
+ m_fileHandle = CreateFileW(QWCHAR(QDir::toNativeSeparators(filePath)), GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, NULL, NULL);
+ if((m_fileHandle != NULL) && (m_fileHandle != INVALID_HANDLE_VALUE)) break;
+ Sleep(100);
+ }
- if(m_fileHandle == INVALID_HANDLE_VALUE)
+ //Locked successfully?
+ if((m_fileHandle == NULL) || (m_fileHandle == INVALID_HANDLE_VALUE))
{
char error_msg[256];
strcpy_s(error_msg, 256, QString("File '%1' could not be locked!").arg(existingFile.fileName()).toLatin1().constData());
{"aa89763a5ba4d1a5986549b9ee53e005c51940c1", "mpcdec.exe", 435},
{"38f81efca6c1eeab0b9dc39d06c2ac750267217f", "mpg123.exe", 1132},
{"8dd7138714c3bcb39f5a3213413addba13d06f1e", "oggdec.exe", UINT_MAX},
- {"ecd15abe103184aca96e406f5f1c82c6fb2e665d", "oggenc2_i386.exe", 287},
- {"ffe0fbd73352396dc3752ac9d484dbfc754a226d", "oggenc2_sse2.exe", 287},
- {"a8c50872e544a55495a824426e9378984f2ae01d", "oggenc2_x64.exe", 287},
+ {"a99109c88ef15ec12a482e38ee2e2e5f383b3628", "oggenc2_i386.exe", 287},
+ {"c4472f9eb4373e7ecb020ea8efcf5d80cff546c6", "oggenc2_sse2.exe", 287},
+ {"693946b97d03f0e3708a3e194f61e656a0c9ebb5", "oggenc2_x64.exe", 287},
{"0d9035bb62bdf46a2785261f8be5a4a0972abd15", "shorten.exe", 361},
{"2d08c3586f9cf99f2e4c89ac54eeb595f63aef61", "sox.exe", 1431},
{"8671e16497a2d217d3707d4aa418678d02b16bcc", "speexdec.exe", 12},