From f657ef360fed09893d33a4b6745a056f1e03c96a Mon Sep 17 00:00:00 2001 From: rainwater Date: Wed, 28 Aug 2002 18:39:39 +0000 Subject: [PATCH] Updated makensisw git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@783 212acab6-be3b-0410-9dea-997c60f758d6 --- Contrib/Makensisw/Readme.txt | 4 ++++ Contrib/Makensisw/makensisw.cpp | 32 +++++++++++++++----------------- Contrib/Makensisw/makensisw.dsp | 2 +- 3 files changed, 20 insertions(+), 18 deletions(-) diff --git a/Contrib/Makensisw/Readme.txt b/Contrib/Makensisw/Readme.txt index 8468f2f4..b29f4038 100644 --- a/Contrib/Makensisw/Readme.txt +++ b/Contrib/Makensisw/Readme.txt @@ -129,6 +129,10 @@ Version History - Editbox not limited to 32k (now using richedit control) - Made the log window font-size smaller. +1.7 + - Added check for warnings + - Added sound for sucessfull compilations + Copyright Information --------------------- diff --git a/Contrib/Makensisw/makensisw.cpp b/Contrib/Makensisw/makensisw.cpp index e753d273..9f14080f 100644 --- a/Contrib/Makensisw/makensisw.cpp +++ b/Contrib/Makensisw/makensisw.cpp @@ -17,11 +17,9 @@ 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. - */ #include #include - #include "makensisw.h" #include "resource.h" #include "noclib.h" @@ -245,18 +243,9 @@ BOOL CALLBACK DialogProc(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam) { } return 0; } -DWORD CALLBACK EditStreamCallback(DWORD dwCookie,LPBYTE pbBuff, LONG cb, LONG FAR *pcb) { - DWORD dwNumberOfBytesRead ; - lstrcpy((char *)pbBuff,"tttttt"); - //PeekNamedPipe((HANDLE)dwCookie,pbBuff,cb,&dwNumberOfBytesRead,&dwNumberOfBytesRead,NULL); - BOOL bSuccess = ReadFile((HANDLE)dwCookie,pbBuff,cb,&dwNumberOfBytesRead,NULL); - *pcb = dwNumberOfBytesRead; - return 0; -} DWORD WINAPI MakeNSISProc(LPVOID p) { char buf[1024]; - EDITSTREAM es; STARTUPINFO si={sizeof(si),}; SECURITY_ATTRIBUTES sa={sizeof(sa),}; SECURITY_DESCRIPTOR sd={0,}; @@ -291,15 +280,24 @@ DWORD WINAPI MakeNSISProc(LPVOID p) { PostMessage(g_hwnd,WM_MAKENSIS_PROCESSCOMPLETE,0,0); return 1; } - unsigned long exit=0,read,avail; my_memset(buf,0,sizeof(buf)); - es.dwCookie = (DWORD)read_stdout; - es.dwError = 0; - es.pfnCallback = EditStreamCallback; - //SendDlgItemMessage(g_hwnd,IDC_LOGWIN,EM_STREAMIN,SF_TEXT,(LPARAM)&es); while(1) { - //SendDlgItemMessage(g_hwnd,IDC_LOGWIN,EM_STREAMIN,SF_TEXT,(LPARAM)&es); + PeekNamedPipe(read_stdout,buf,sizeof(buf)-1,&read,&avail,NULL); + if (read != 0) { + my_memset(buf,0,sizeof(buf)); + if (avail > sizeof(buf)-1) { + while (read >= sizeof(buf)-1) { + ReadFile(read_stdout,buf,sizeof(buf)-1,&read,NULL); + LogMessage(g_hwnd,buf); + my_memset(buf,0,sizeof(buf)); + } + } + else { + ReadFile(read_stdout,buf,sizeof(buf),&read,NULL); + LogMessage(g_hwnd,buf); + } + } GetExitCodeProcess(pi.hProcess,&exit); if (exit != STILL_ACTIVE) break; Sleep(TIMEOUT); diff --git a/Contrib/Makensisw/makensisw.dsp b/Contrib/Makensisw/makensisw.dsp index f193fdb2..ada70e71 100644 --- a/Contrib/Makensisw/makensisw.dsp +++ b/Contrib/Makensisw/makensisw.dsp @@ -43,7 +43,7 @@ RSC=rc.exe # PROP Ignore_Export_Lib 0 # PROP Target_Dir "" # ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /W3 /O1 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D RELEASE=1.6 /FD /c +# ADD CPP /nologo /W3 /O1 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D RELEASE=1.7 /FD /c # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32 # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32 # ADD BASE RSC /l 0x409 /d "NDEBUG"