Debug under Windows + some minor corrections.

This commit is contained in:
rnv 2021-08-19 15:24:41 +03:00
parent db3a0bbde4
commit 096a139769

View File

@ -152,12 +152,16 @@ namespace
0,
NULL
);
if ( msgLen > 0 )
if ( msgLen > 0 ) {
#if defined( WIN32 ) && defined( UNICODE )
error = Kernel_Utils::encode((wchar_t*)cstr);
#else
error = (char*)cstr;
#endif
LocalFree(cstr);
}
return msgLen;
return (bool)msgLen;
#endif
}
@ -244,11 +248,11 @@ namespace
#ifdef WIN32
std::string outFile = tmpDir + "libMeshGemsKeyGenerator.dll";
std::string outFile = tmpDir + "MeshGemsKeyGenerator.dll";
// use wget (== Invoke-WebRequest) PowerShell command available since Windows 7
std::string psCmd = "wget -Uri " + url + " -OutFile " + outFile;
std::string cmd = "start powershell.exe " + psCmd;
std::string cmd = "powershell.exe " + psCmd;
#else
@ -275,6 +279,8 @@ namespace
if (ok)
libraryFile._name = outFile;
else
error = "Can't download file " + url;
return ok;
}
@ -357,6 +363,7 @@ namespace SMESHUtils_MGLicenseKeyGen // API implementation
if ( !loadLibrary( error, libraryFile ))
return false;
bool ok = false;
typedef bool (*SignFun)(void* );
SignFun signFun = (SignFun) GetProc( theLibraryHandle, "SignCAD" );
if ( !signFun )
@ -364,8 +371,8 @@ namespace SMESHUtils_MGLicenseKeyGen // API implementation
if ( ! getLastError( error ))
error = SMESH_Comment( "Can't find symbol 'SignCAD' in '") << getenv( theEnvVar ) << "'";
}
bool ok;
else
{
SMESH_TRY;
@ -377,7 +384,7 @@ namespace SMESHUtils_MGLicenseKeyGen // API implementation
ok = false;
else if ( !ok )
error = "SignCAD() failed (located in '" + libraryFile._name + "')";
}
return ok;
}