tabs to spaces
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5075 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
parent
37c4571620
commit
ce5f73cdd2
1 changed files with 93 additions and 93 deletions
|
@ -18,13 +18,13 @@ int main(int argc, char* argv[])
|
||||||
|
|
||||||
// Parse the command line
|
// Parse the command line
|
||||||
|
|
||||||
string cmdline;
|
string cmdline;
|
||||||
|
|
||||||
string mode;
|
string mode;
|
||||||
string filename;
|
string filename;
|
||||||
string filepath;
|
string filepath;
|
||||||
|
|
||||||
int filefound = 0;
|
int filefound = 0;
|
||||||
|
|
||||||
if (argc != 4)
|
if (argc != 4)
|
||||||
return 1;
|
return 1;
|
||||||
|
@ -85,114 +85,114 @@ int main(int argc, char* argv[])
|
||||||
filefound = 1;
|
filefound = 1;
|
||||||
FindClose(hFind);
|
FindClose(hFind);
|
||||||
}
|
}
|
||||||
|
|
||||||
int versionfound = 0;
|
int versionfound = 0;
|
||||||
DWORD low = 0, high = 0;
|
DWORD low = 0, high = 0;
|
||||||
|
|
||||||
if (filefound)
|
if (filefound)
|
||||||
{
|
{
|
||||||
|
|
||||||
// Get version
|
// Get version
|
||||||
|
|
||||||
// DLL
|
// DLL
|
||||||
|
|
||||||
if (mode.compare("D") == 0)
|
if (mode.compare("D") == 0)
|
||||||
{
|
{
|
||||||
|
|
||||||
DWORD versionsize;
|
DWORD versionsize;
|
||||||
DWORD temp;
|
DWORD temp;
|
||||||
|
|
||||||
versionsize = GetFileVersionInfoSize((char*)filepath.c_str(), &temp);
|
versionsize = GetFileVersionInfoSize((char*)filepath.c_str(), &temp);
|
||||||
|
|
||||||
if (versionsize)
|
if (versionsize)
|
||||||
{
|
{
|
||||||
|
|
||||||
void *buf;
|
void *buf;
|
||||||
buf = (void *)GlobalAlloc(GPTR, versionsize);
|
buf = (void *)GlobalAlloc(GPTR, versionsize);
|
||||||
|
|
||||||
if (buf)
|
if (buf)
|
||||||
{
|
{
|
||||||
|
|
||||||
UINT uLen;
|
UINT uLen;
|
||||||
VS_FIXEDFILEINFO *pvsf;
|
VS_FIXEDFILEINFO *pvsf;
|
||||||
|
|
||||||
if (GetFileVersionInfo((char*)filepath.c_str(), 0, versionsize, buf) && VerQueryValue(buf, "\\", (void**)&pvsf,&uLen))
|
if (GetFileVersionInfo((char*)filepath.c_str(), 0, versionsize, buf) && VerQueryValue(buf, "\\", (void**)&pvsf,&uLen))
|
||||||
{
|
{
|
||||||
high = pvsf->dwFileVersionMS;
|
high = pvsf->dwFileVersionMS;
|
||||||
low = pvsf->dwFileVersionLS;
|
low = pvsf->dwFileVersionLS;
|
||||||
|
|
||||||
versionfound = 1;
|
versionfound = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
GlobalFree(buf);
|
GlobalFree(buf);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// TLB
|
// TLB
|
||||||
|
|
||||||
if (mode.compare("T") == 0)
|
if (mode.compare("T") == 0)
|
||||||
{
|
{
|
||||||
|
|
||||||
wchar_t ole_filename[1024];
|
wchar_t ole_filename[1024];
|
||||||
MultiByteToWideChar(CP_ACP, 0, filepath.c_str(), filepath.length() + 1, ole_filename, 1024);
|
MultiByteToWideChar(CP_ACP, 0, filepath.c_str(), filepath.length() + 1, ole_filename, 1024);
|
||||||
|
|
||||||
ITypeLib* typeLib;
|
ITypeLib* typeLib;
|
||||||
HRESULT hr;
|
HRESULT hr;
|
||||||
|
|
||||||
hr = LoadTypeLib(ole_filename, &typeLib);
|
hr = LoadTypeLib(ole_filename, &typeLib);
|
||||||
|
|
||||||
if (SUCCEEDED(hr)) {
|
if (SUCCEEDED(hr)) {
|
||||||
|
|
||||||
TLIBATTR* typelibAttr;
|
TLIBATTR* typelibAttr;
|
||||||
|
|
||||||
hr = typeLib->GetLibAttr(&typelibAttr);
|
hr = typeLib->GetLibAttr(&typelibAttr);
|
||||||
|
|
||||||
if (SUCCEEDED(hr)) {
|
if (SUCCEEDED(hr)) {
|
||||||
|
|
||||||
high = typelibAttr->wMajorVerNum;
|
high = typelibAttr->wMajorVerNum;
|
||||||
low = typelibAttr->wMinorVerNum;
|
low = typelibAttr->wMinorVerNum;
|
||||||
|
|
||||||
versionfound = 1;
|
versionfound = 1;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
typeLib->Release();
|
typeLib->Release();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Write the version to an NSIS header file
|
// Write the version to an NSIS header file
|
||||||
|
|
||||||
ofstream header(argv[3], ofstream::out);
|
ofstream header(argv[3], ofstream::out);
|
||||||
|
|
||||||
if (header)
|
if (header)
|
||||||
{
|
{
|
||||||
|
|
||||||
if (!filefound)
|
if (!filefound)
|
||||||
{
|
{
|
||||||
header << "!define LIBRARY_VERSION_FILENOTFOUND" << endl;
|
header << "!define LIBRARY_VERSION_FILENOTFOUND" << endl;
|
||||||
}
|
}
|
||||||
else if (!versionfound)
|
else if (!versionfound)
|
||||||
{
|
{
|
||||||
header << "!define LIBRARY_VERSION_NONE" << endl;
|
header << "!define LIBRARY_VERSION_NONE" << endl;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
header << "!define LIBRARY_VERSION_HIGH " << high << endl;
|
header << "!define LIBRARY_VERSION_HIGH " << high << endl;
|
||||||
header << "!define LIBRARY_VERSION_LOW " << low << endl;
|
header << "!define LIBRARY_VERSION_LOW " << low << endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
header.close();
|
header.close();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue