More details in the rosapps makefile message. Split sysutils. Modified: trunk/rosapps/cmdutils/find.rc Modified: trunk/rosapps/cmdutils/mode/mode.rc Modified: trunk/rosapps/cmdutils/more.rc Modified: trunk/rosapps/cmdutils/sort.rc Modified: trunk/rosapps/cmdutils/tee.rc Modified: trunk/rosapps/cmdutils/touch/touch.rc Modified: trunk/rosapps/cmdutils/y.rc Modified: trunk/rosapps/devutils/gdb2/gdb2.cpp Modified: trunk/rosapps/makefile Modified: trunk/rosapps/net/niclist/niclist.rc Added: trunk/rosapps/sysutils/chkdsk/ Added: trunk/rosapps/sysutils/chkdsk/chkdsk.c Added: trunk/rosapps/sysutils/chkdsk/chkdsk.rc Added: trunk/rosapps/sysutils/chkdsk/chkdsk.xml Deleted: trunk/rosapps/sysutils/chkdsk.c Deleted: trunk/rosapps/sysutils/chkdsk.rc Added: trunk/rosapps/sysutils/chklib/ Added: trunk/rosapps/sysutils/chklib/chklib.c Added: trunk/rosapps/sysutils/chklib/chklib.rc Added: trunk/rosapps/sysutils/chklib/chklib.xml Deleted: trunk/rosapps/sysutils/chklib.c Deleted: trunk/rosapps/sysutils/chklib.rc Added: trunk/rosapps/sysutils/format/ Added: trunk/rosapps/sysutils/format/format.c Added: trunk/rosapps/sysutils/format/format.rc Deleted: trunk/rosapps/sysutils/format.c Deleted: trunk/rosapps/sysutils/format.rc Deleted: trunk/rosapps/sysutils/ldd.c Deleted: trunk/rosapps/sysutils/ldd.rc Added: trunk/rosapps/sysutils/lib/ Added: trunk/rosapps/sysutils/lib/lib.xml Added: trunk/rosapps/sysutils/lib/win32err.c Added: trunk/rosapps/sysutils/lsdd/ Added: trunk/rosapps/sysutils/lsdd/lsdd.c Added: trunk/rosapps/sysutils/lsdd/lsdd.rc Added: trunk/rosapps/sysutils/lsdd/lsdd.xml Added: trunk/rosapps/sysutils/pedump/ Added: trunk/rosapps/sysutils/pedump/pedump.c Added: trunk/rosapps/sysutils/pedump/pedump.rc Added: trunk/rosapps/sysutils/pedump/pedump.xml Deleted: trunk/rosapps/sysutils/pedump.c Deleted: trunk/rosapps/sysutils/pedump.rc Deleted: trunk/rosapps/sysutils/qsi.c Deleted: trunk/rosapps/sysutils/qsi.rc Added: trunk/rosapps/sysutils/qssi/ Added: trunk/rosapps/sysutils/qssi/qssi.c Added: trunk/rosapps/sysutils/qssi/qssi.rc Added: trunk/rosapps/sysutils/shutdown/ Added: trunk/rosapps/sysutils/shutdown/shutdown.c Added: trunk/rosapps/sysutils/shutdown/shutdown.rc Added: trunk/rosapps/sysutils/shutdown/shutdown.xml Deleted: trunk/rosapps/sysutils/shutdown.c Deleted: trunk/rosapps/sysutils/shutdown.rc Modified: trunk/rosapps/sysutils/sysutils.xml Deleted: trunk/rosapps/sysutils/win32err.c _____
Modified: trunk/rosapps/cmdutils/find.rc --- trunk/rosapps/cmdutils/find.rc 2005-07-29 13:30:22 UTC (rev 16860) +++ trunk/rosapps/cmdutils/find.rc 2005-07-29 13:46:03 UTC (rev 16861) @@ -1,4 +1,4 @@
-/* $Id: find.rc,v 1.2 2004/10/16 22:30:16 gvg Exp $ */ +/* $Id$ */
#define REACTOS_STR_FILE_DESCRIPTION "W32 find command\0" #define REACTOS_STR_INTERNAL_NAME "find\0" _____
Modified: trunk/rosapps/cmdutils/mode/mode.rc --- trunk/rosapps/cmdutils/mode/mode.rc 2005-07-29 13:30:22 UTC (rev 16860) +++ trunk/rosapps/cmdutils/mode/mode.rc 2005-07-29 13:46:03 UTC (rev 16861) @@ -1,4 +1,4 @@
-/* $Id: mode.rc,v 1.2 2004/10/16 22:30:16 gvg Exp $ */ +/* $Id$ */
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS mode utility\0" #define REACTOS_STR_INTERNAL_NAME "mode\0" _____
Modified: trunk/rosapps/cmdutils/more.rc --- trunk/rosapps/cmdutils/more.rc 2005-07-29 13:30:22 UTC (rev 16860) +++ trunk/rosapps/cmdutils/more.rc 2005-07-29 13:46:03 UTC (rev 16861) @@ -1,4 +1,4 @@
-/* $Id: more.rc,v 1.3 2004/10/16 22:30:16 gvg Exp $ */ +/* $Id$ */
#define REACTOS_STR_FILE_DESCRIPTION "W32 more command\0" #define REACTOS_STR_INTERNAL_NAME "more\0" _____
Modified: trunk/rosapps/cmdutils/sort.rc --- trunk/rosapps/cmdutils/sort.rc 2005-07-29 13:30:22 UTC (rev 16860) +++ trunk/rosapps/cmdutils/sort.rc 2005-07-29 13:46:03 UTC (rev 16861) @@ -1,4 +1,4 @@
-/* $Id: sort.rc,v 1.2 2004/10/16 22:30:16 gvg Exp $ */ +/* $Id$ */
#define REACTOS_STR_FILE_DESCRIPTION "W32 sort command\0" #define REACTOS_STR_INTERNAL_NAME "sort\0" _____
Modified: trunk/rosapps/cmdutils/tee.rc --- trunk/rosapps/cmdutils/tee.rc 2005-07-29 13:30:22 UTC (rev 16860) +++ trunk/rosapps/cmdutils/tee.rc 2005-07-29 13:46:03 UTC (rev 16861) @@ -1,4 +1,4 @@
-/* $Id: tee.rc,v 1.3 2004/10/16 22:30:16 gvg Exp $ */ +/* $Id$ */
#define REACTOS_STR_FILE_DESCRIPTION "W32 tee command\0" #define REACTOS_STR_INTERNAL_NAME "tee\0" _____
Modified: trunk/rosapps/cmdutils/touch/touch.rc --- trunk/rosapps/cmdutils/touch/touch.rc 2005-07-29 13:30:22 UTC (rev 16860) +++ trunk/rosapps/cmdutils/touch/touch.rc 2005-07-29 13:46:03 UTC (rev 16861) @@ -1,4 +1,4 @@
-/* $Id: touch.rc,v 1.3 2004/10/16 22:30:16 gvg Exp $ */ +/* $Id$ */
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS Touch utility\0" #define REACTOS_STR_INTERNAL_NAME "touch\0" _____
Modified: trunk/rosapps/cmdutils/y.rc --- trunk/rosapps/cmdutils/y.rc 2005-07-29 13:30:22 UTC (rev 16860) +++ trunk/rosapps/cmdutils/y.rc 2005-07-29 13:46:03 UTC (rev 16861) @@ -1,4 +1,4 @@
-/* $Id: y.rc,v 1.3 2004/10/16 22:30:16 gvg Exp $ */ +/* $Id$ */
#define REACTOS_STR_FILE_DESCRIPTION "W32 y command\0" #define REACTOS_STR_INTERNAL_NAME "y\0" _____
Modified: trunk/rosapps/devutils/gdb2/gdb2.cpp --- trunk/rosapps/devutils/gdb2/gdb2.cpp 2005-07-29 13:30:22 UTC (rev 16860) +++ trunk/rosapps/devutils/gdb2/gdb2.cpp 2005-07-29 13:46:03 UTC (rev 16861) @@ -1,4 +1,4 @@
-/* $Id: gdb2.cpp,v 1.1 2001/04/15 23:42:07 narnaoud Exp $ +/* $Id$ * * gdb2 - gdb output splitter * _____
Modified: trunk/rosapps/makefile --- trunk/rosapps/makefile 2005-07-29 13:30:22 UTC (rev 16860) +++ trunk/rosapps/makefile 2005-07-29 13:46:03 UTC (rev 16861) @@ -1,3 +1,13 @@
all: - @echo To build rosapps it has to be copied it into the reactos\modules folder. After - @echo this you can run "make depends" in the \reactos directory to compile it. + @echo To build "rosapps" there are two paths: + @echo --- + @echo 1. copy the rosapps folder into the reactos\modules folder + @echo 2. link reactos/modules/rosapps to rosapps + @echo UNIX + @echo cd $${ROS_SRC_ROOT}/reactos/modules + @echo ln -s $${ROS_SRC_ROOT}/rosapps rosapps + @echo WINDOWS + @echo cd %%ROS_SRC_ROOT%%\reactos\modules + @echo junction rosapps %%ROS_SRC_ROOT%%\rosapps + @echo --- + @echo Eventually you can run "make depends" in the \reactos directory to compile it. _____
Modified: trunk/rosapps/net/niclist/niclist.rc --- trunk/rosapps/net/niclist/niclist.rc 2005-07-29 13:30:22 UTC (rev 16860) +++ trunk/rosapps/net/niclist/niclist.rc 2005-07-29 13:46:03 UTC (rev 16861) @@ -1,4 +1,4 @@
-/* $Id: niclist.rc,v 1.4 2004/10/16 22:30:17 gvg Exp $ */ +/* $Id$ */
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS packet driver niclist\0" #define REACTOS_STR_INTERNAL_NAME "niclist\0" _____
Copied: trunk/rosapps/sysutils/chkdsk/chkdsk.c (from rev 16855, trunk/rosapps/sysutils/chkdsk.c) _____
Copied: trunk/rosapps/sysutils/chkdsk/chkdsk.rc (from rev 16855, trunk/rosapps/sysutils/chkdsk.rc) _____
Added: trunk/rosapps/sysutils/chkdsk/chkdsk.xml --- trunk/rosapps/sysutils/chkdsk/chkdsk.xml 2005-07-29 13:30:22 UTC (rev 16860) +++ trunk/rosapps/sysutils/chkdsk/chkdsk.xml 2005-07-29 13:46:03 UTC (rev 16861) @@ -0,0 +1,9 @@
+<module name="chkdsk" type="win32cui" installbase="system32" installname="chkdsk.exe" warnings="true"> + <define name="__USE_W32API" /> + <define name="UNICODE" /> + <define name="_UNICODE" /> + <library>fmifs</library> + <library>ntdll</library> + <file>chkdsk.c</file> + <file>chkdsk.rc</file> +</module> Property changes on: trunk/rosapps/sysutils/chkdsk/chkdsk.xml ___________________________________________________________________ Name: svn:eol-style + native _____
Deleted: trunk/rosapps/sysutils/chkdsk.c --- trunk/rosapps/sysutils/chkdsk.c 2005-07-29 13:30:22 UTC (rev 16860) +++ trunk/rosapps/sysutils/chkdsk.c 2005-07-29 13:46:03 UTC (rev 16861) @@ -1,478 +0,0 @@
-//===================================================================== = -// -// $Id$ -// -// Chkdskx -// -// Copyright (c) 1998 Mark Russinovich -// Systems Internals -// http://www.sysinternals.com/ -// -// -------------------------------------------------------------------- -// -// This software is free software; you can redistribute it and/or -// modify it under the terms of the GNU Library General Public License as -// published by the Free Software Foundation; either version 2 of the -// License, or (at your option) any later version. -// -// This software is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Library General Public License for more details. -// -// You should have received a copy of the GNU Library General Public -// License along with this software; see the file COPYING.LIB. If -// not, write to the Free Software Foundation, Inc., 675 Mass Ave, -// Cambridge, MA 02139, USA. -// -// -------------------------------------------------------------------- -// -// Chkdsk clone that demonstrates the use of the FMIFS file system -// utility library. -// -// 1999 February (Emanuele Aliberti) -// Adapted for ReactOS and lcc-win32. -// -// 1999 April (Emanuele Aliberti) -// Adapted for ReactOS and egcs. -// -//===================================================================== = -#define UNICODE -#include <windows.h> -#include <stdio.h> -#include <fmifs.h> -#define _UNICODE 1 -#include <tchar.h> -#include "config.h" -#include "win32err.h" - -// -// Globals -// -BOOL Error = FALSE; - -// switches -BOOL FixErrors = FALSE; -BOOL SkipClean = FALSE; -BOOL ScanSectors = FALSE; -BOOL Verbose = FALSE; -PWCHAR Drive = NULL; -WCHAR CurrentDirectory[1024]; - -#ifndef FMIFS_IMPORT_DLL -// -// FMIFS function -// -//PCHKDSK Chkdsk; -#endif /* ndef FMIFS_IMPORT_DLL */ - - -//-------------------------------------------------------------------- -// -// CtrlCIntercept -// -// Intercepts Ctrl-C's so that the program can't be quit with the -// disk in an inconsistent state. -// -//-------------------------------------------------------------------- -BOOL -WINAPI -CtrlCIntercept( DWORD dwCtrlType ) -{ - // - // Handle the event so that the default handler doesn't - // - return TRUE; -} - - -//--------------------------------------------------------------------- - -// -// Usage -// -// Tell the user how to use the program -// -// 19990216 EA Missing printf %s argument -//--------------------------------------------------------------------- - -VOID -Usage( PWCHAR ProgramName ) -{ - _tprintf( - L"\ -Usage: %s [drive:] [-F] [-V] [-R] [-C]\n\n\ - [drive:] Specifies the drive to check.\n\ - -F Fixes errors on the disk.\n\ - -V Displays the full path of every file on the disk.\n\ - -R Locates bad sectors and recovers readable information.\n\ - -C Checks the drive only if it is dirty.\n\n", - ProgramName - ); -} - - -//--------------------------------------------------------------------- - -// -// ParseCommandLine -// -// Get the switches. -// -//--------------------------------------------------------------------- - -int -ParseCommandLine( - int argc, - WCHAR *argv [] - ) -{ - int i; - BOOLEAN gotFix = FALSE; - BOOLEAN gotVerbose = FALSE; - BOOLEAN gotClean = FALSE; - /*BOOLEAN gotScan = FALSE;*/ - - - for ( i = 1; - (i < argc); - i++ - ) { - switch( argv[i][0] ) - { - case L'-': - case L'/': - - switch( argv[i][1] ) - { - case L'F': - case L'f': - - if( gotFix ) return i; - FixErrors = TRUE; - gotFix = TRUE; - break; - - case L'V': - case L'v': - - if( gotVerbose) return i; - Verbose = TRUE; - gotVerbose = TRUE; - break; - - case L'R': - case L'r': - - if( gotFix ) return i; - ScanSectors = TRUE; - gotFix = TRUE; - break; - - case L'C': - case L'c': - - if( gotClean ) return i; - SkipClean = TRUE; - gotClean = TRUE; - break; - - default: - return i; - } - break; - - default: - - if( Drive ) return i; - if( argv[i][1] != L':' ) return i; - - Drive = argv[i]; - break; - } - } - return 0; -} - - -//--------------------------------------------------------------------- - -// -// ChkdskCallback -// -// The file system library will call us back with commands that we -// can interpret. If we wanted to halt the chkdsk we could return FALSE. -// -//--------------------------------------------------------------------- - -BOOLEAN -STDCALL -ChkdskCallback( - CALLBACKCOMMAND Command, - DWORD Modifier, - PVOID Argument - ) -{ - PDWORD percent; - PBOOLEAN status; - PTEXTOUTPUT output; - - // - // We get other types of commands, - // but we don't have to pay attention to them - // - switch( Command ) - { - case UNKNOWN2: - wprintf(L"UNKNOWN2\r"); - break; - - case UNKNOWN3: - wprintf(L"UNKNOWN3\r"); - break; - - case UNKNOWN4: - wprintf(L"UNKNOWN4\r"); - break; - - case UNKNOWN5: - wprintf(L"UNKNOWN5\r"); - break; - - case UNKNOWN7: - wprintf(L"UNKNOWN7\r"); - break; - - case UNKNOWN8: - wprintf(L"UNKNOWN8\r"); - break; - - case UNKNOWN9: - wprintf(L"UNKNOWN9\r"); - break; - - case UNKNOWNA: - wprintf(L"UNKNOWNA\r"); - break; - - case UNKNOWNC: - wprintf(L"UNKNOWNC\r"); - break; - - case UNKNOWND: - wprintf(L"UNKNOWND\r"); - break; - - case INSUFFICIENTRIGHTS: - wprintf(L"INSUFFICIENTRIGHTS\r"); - break; - - case STRUCTUREPROGRESS: - wprintf(L"STRUCTUREPROGRESS\r"); - break; - - case DONEWITHSTRUCTURE: - wprintf(L"DONEWITHSTRUCTURE\r"); - break; - - case PROGRESS: - percent = (PDWORD) Argument; - wprintf(L"%d percent completed.\r", *percent); - break; - - case OUTPUT: - output = (PTEXTOUTPUT) Argument; - fwprintf(stdout, L"%s", output->Output); - break; - - case DONE: - status = (PBOOLEAN) Argument; - if ( *status == TRUE ) - { - wprintf(L"Chkdsk was unable to complete successfully.\n\n"); - Error = TRUE; - } - break; - } - return TRUE; -} - -#ifndef FMIFS_IMPORT_DLL -//--------------------------------------------------------------------- - -// -// LoadFMIFSEntryPoints -// -// Loads FMIFS.DLL and locates the entry point(s) we are going to use -// -// 19990216 EA Used wide functions -// -//--------------------------------------------------------------------- - -BOOLEAN -LoadFMIFSEntryPoints(VOID) -{ - LoadLibraryW( L"fmifs.dll" ); - - if( !(Chkdsk = - (void *) GetProcAddress( - GetModuleHandleW(L"fmifs.dll"), - "Chkdsk" )) - ) - { - return FALSE; - } - return TRUE; -} -#endif /* ndef FMIFS_IMPORT_DLL */ - - -//--------------------------------------------------------------------- - -// -// WMain -// -// Engine. Just get command line switches and fire off a chkdsk. This -// could also be done in a GUI like Explorer does when you select a -// drive and run a check on it. -// -// We do this in UNICODE because the chkdsk command expects PWCHAR -// arguments. -// -//--------------------------------------------------------------------- - -int -wmain( int argc, WCHAR *argv[] ) -{ - int badArg; - HANDLE volumeHandle; - WCHAR fileSystem [1024]; - WCHAR volumeName [1024]; - DWORD serialNumber; - DWORD flags, - maxComponent; - - wprintf( - L"\n\ -Chkdskx v1.0.1 by Mark Russinovich\n\ -Systems Internals - http://www.sysinternals.com/%5Cn%5C -ReactOS adaptation 1999 by Emanuele Aliberti\n\n" - ); -#ifndef FMIFS_IMPORT_DLL - // - // Get function pointers - // - if( !LoadFMIFSEntryPoints()) - { - wprintf(L"Could not located FMIFS entry points.\n\n"); - return -1; - } -#endif /* ndef FMIFS_IMPORT_DLL */ - // - // Parse command line - // - if( (badArg = ParseCommandLine( argc, argv ))) - { - wprintf( - L"Unknown argument: %s\n", - argv[badArg] - ); - - Usage(argv[0]); - return -1; - } - - // - // Get the drive's format - // - if( !Drive ) - { - if( !GetCurrentDirectoryW( - sizeof(CurrentDirectory), - CurrentDirectory - ) - ) { - - PrintWin32Error( - L"Could not get current directory", - GetLastError() - ); - return -1; - } - - } else { - - wcscpy( CurrentDirectory, Drive ); - } - CurrentDirectory[2] = L'\'; - CurrentDirectory[3] = L'\0'; - Drive = CurrentDirectory; - - // - // Determine the drive's file system format, which we need to - // tell chkdsk - // - if( !GetVolumeInformationW( - Drive, - volumeName, - sizeof volumeName, - & serialNumber, - & maxComponent, - & flags, - fileSystem, - sizeof fileSystem - ) - ) { - PrintWin32Error( - L"Could not query volume", - GetLastError() - ); - return -1; - } - - // - // If they want to fix, we need to have access to the drive - // - if ( FixErrors ) - { - swprintf( - volumeName, - L"\\.\%C:", - Drive[0] - ); - volumeHandle = CreateFileW( - volumeName, - GENERIC_WRITE, - 0, - NULL, - OPEN_EXISTING, - 0, - 0 - ); - if( volumeHandle == INVALID_HANDLE_VALUE ) - { - wprintf(L"Chdskx cannot run because the volume is in use by another process.\n\n"); - return -1; - } - CloseHandle( volumeHandle ); - - // - // Can't let the user break out of a chkdsk that can modify the drive - // - SetConsoleCtrlHandler( CtrlCIntercept, TRUE ); - } - - // - // Just do it - // - wprintf( - L"The type of file system is %s.\n", - fileSystem - ); - Chkdsk( - Drive, - fileSystem, - FixErrors, - Verbose, - SkipClean, - ScanSectors, - NULL, - NULL, - ChkdskCallback - ); - - if ( Error ) return -1; - return 0; -} - -/* EOF */ _____
Deleted: trunk/rosapps/sysutils/chkdsk.rc --- trunk/rosapps/sysutils/chkdsk.rc 2005-07-29 13:30:22 UTC (rev 16860) +++ trunk/rosapps/sysutils/chkdsk.rc 2005-07-29 13:46:03 UTC (rev 16861) @@ -1,7 +0,0 @@
-/* $Id$ */ - -#define REACTOS_STR_FILE_DESCRIPTION "ReactOS Disk Checking Utility\0" -#define REACTOS_STR_INTERNAL_NAME "chkdsk\0" -#define REACTOS_STR_ORIGINAL_FILENAME "chkdsk.exe\0" -#define REACTOS_STR_ORIGINAL_COPYRIGHT "1998 Mark Russinovich\0" -#include <reactos/version.rc> _____
Copied: trunk/rosapps/sysutils/chklib/chklib.c (from rev 16855, trunk/rosapps/sysutils/chklib.c) _____
Copied: trunk/rosapps/sysutils/chklib/chklib.rc (from rev 16855, trunk/rosapps/sysutils/chklib.rc) --- trunk/rosapps/sysutils/chklib.rc 2005-07-29 11:40:01 UTC (rev 16855) +++ trunk/rosapps/sysutils/chklib/chklib.rc 2005-07-29 13:46:03 UTC (rev 16861) @@ -0,0 +1,6 @@
+/* $Id$ */ + +#define REACTOS_STR_FILE_DESCRIPTION "Tool to check a dynamic library for a symbol\0" +#define REACTOS_STR_INTERNAL_NAME "chklib\0" +#define REACTOS_STR_ORIGINAL_FILENAME "chklib.exe\0" +#include <reactos/version.rc> _____
Added: trunk/rosapps/sysutils/chklib/chklib.xml --- trunk/rosapps/sysutils/chklib/chklib.xml 2005-07-29 13:30:22 UTC (rev 16860) +++ trunk/rosapps/sysutils/chklib/chklib.xml 2005-07-29 13:46:03 UTC (rev 16861) @@ -0,0 +1,10 @@
+<module name="chklib" type="win32cui" installbase="system32" installname="chklib.exe" warnings="true"> + <linkerflag>--numeric-sort</linkerflag> + <define name="__USE_W32API" /> + <define name="_WIN32_IE">0x0501</define> + <define name="_WIN32_WINNT">0x0501</define> + <library>kernel32</library> + <library>win32err</library> + <file>chklib.c</file> + <file>chklib.rc</file> +</module> Property changes on: trunk/rosapps/sysutils/chklib/chklib.xml ___________________________________________________________________ Name: svn:eol-style + native _____
Deleted: trunk/rosapps/sysutils/chklib.c --- trunk/rosapps/sysutils/chklib.c 2005-07-29 13:30:22 UTC (rev 16860) +++ trunk/rosapps/sysutils/chklib.c 2005-07-29 13:46:03 UTC (rev 16861) @@ -1,200 +0,0 @@
-/* $Id$ - * - * chklib.c - * - * Copyright (C) 1998, 1999 Emanuele Aliberti. - * - * -------------------------------------------------------------------- - * - * This software is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of the - * License, or (at your option) any later version. - * - * This software is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this software; see the file COPYING. If - * not, write to the Free Software Foundation, Inc., 675 Mass Ave, - * Cambridge, MA 02139, USA. - * - * -------------------------------------------------------------------- - * Check a PE DLL for loading and get an exported symbol's address - * (relocated). - * - */ -//#define UNICODE -#include <stdio.h> -#include <stdlib.h> -#include <assert.h> - -#include <stdarg.h> -#include <windef.h> -#include <winbase.h> - -#include "win32err.h" - -#ifdef DISPLAY_VERSION -static -void -DisplayVersion( - HANDLE dll, - PCHAR ModuleName - ) -{ - DWORD Zero; - DWORD Size; - PVOID vi = NULL; - - assert(ModuleName); - Size = GetFileVersionInfoSize( - ModuleName, - & Zero - ); - if (Size == 0) - { - PrintWin32Error( - L"GetFileVersionInfoSize", - GetLastError() - ); - return; - } - vi = (PVOID) LocalAlloc(LMEM_ZEROINIT,Size); - if (!vi) return; - assert(dll != INVALID_HANDLE_VALUE); - if (0 == GetFileVersionInfo( - ModuleName, - (DWORD) dll, - Size, - vi - ) - ) { - PrintWin32Error( - L"GetFileVersionInfo", - GetLastError() - ); - return; - } -/* - VerQueryValue( - vi, - L"\StringFileInfo\040904E4\FileDescription", - & lpBuffer, - & dwBytes - ); -*/ - LocalFree(vi); -} -#endif /* def DISPLAY_VERSION */ - - -static -void -DisplayEntryPoint( - const HANDLE dll, - LPCSTR SymbolName - ) -{ - FARPROC EntryPoint; - - printf( - "[%s]\n", - SymbolName - ); - EntryPoint = GetProcAddress( - dll, - SymbolName - ); - if (!EntryPoint) - { - PrintWin32Error( - L"GetProcAddress", - GetLastError() - ); - return; - } - printf( - "%08X %s\n", - EntryPoint, - SymbolName - ); -} - - -/* --- MAIN --- */ - - -int -main( - int argc, - char * argv [] - ) -{ - HINSTANCE dll; - TCHAR ModuleName [_MAX_PATH]; - - if (argc < 2) - { - fprintf( - stderr, - "\ -ReactOS System Tools\n\ -Check a Dynamic Link Library (DLL) for loading\n\ -Copyright (c) 1998, 1999 Emanuele Aliberti\n\n\ -usage: %s module [symbol [, ...]]\n", - argv[0] - ); - exit(EXIT_FAILURE); - } - dll = LoadLibraryA(argv[1]); - if (!dll) - { - UINT LastError; - - LastError = GetLastError(); - PrintWin32Error(L"LoadLibrary",LastError); - fprintf( - stderr, - "%s: loading %s failed (%d).\n", - argv[0], - argv[1], - LastError - ); - exit(EXIT_FAILURE); - } - GetModuleFileName( - (HANDLE) dll, - ModuleName, - sizeof ModuleName - ); - printf( - "%s loaded.\n", - ModuleName - ); -#ifdef DISPLAY_VERSION - DisplayVersion(dll,ModuleName); -#endif - if (argc > 2) - { - int CurrentSymbol; - - for ( CurrentSymbol = 2; - (CurrentSymbol < argc); - ++CurrentSymbol - ) - { - DisplayEntryPoint( dll, argv[CurrentSymbol] ); - } - } - FreeLibrary(dll); - printf( - "%s unloaded.\n", - ModuleName - ); - return EXIT_SUCCESS; -} - -/* EOF */ _____
Deleted: trunk/rosapps/sysutils/chklib.rc --- trunk/rosapps/sysutils/chklib.rc 2005-07-29 13:30:22 UTC (rev 16860) +++ trunk/rosapps/sysutils/chklib.rc 2005-07-29 13:46:03 UTC (rev 16861) @@ -1,6 +0,0 @@
-/* $Id: chklib.rc,v 1.3 2004/10/16 22:30:18 gvg Exp $ */ - -#define REACTOS_STR_FILE_DESCRIPTION "Tool to check a dynamic library for a symbol\0" -#define REACTOS_STR_INTERNAL_NAME "chklib\0" -#define REACTOS_STR_ORIGINAL_FILENAME "chklib.exe\0" -#include <reactos/version.rc> _____
Copied: trunk/rosapps/sysutils/format/format.c (from rev 16855, trunk/rosapps/sysutils/format.c) _____
Copied: trunk/rosapps/sysutils/format/format.rc (from rev 16855, trunk/rosapps/sysutils/format.rc) _____
Deleted: trunk/rosapps/sysutils/format.c --- trunk/rosapps/sysutils/format.c 2005-07-29 13:30:22 UTC (rev 16860) +++ trunk/rosapps/sysutils/format.c 2005-07-29 13:46:03 UTC (rev 16861) @@ -1,648 +0,0 @@
-//===================================================================== = -// -// $Id$ -// -// Formatx -// -// Copyright (c) 1998 Mark Russinovich -// Systems Internals -// http://www.sysinternals.com/ -// -// This software is free software; you can redistribute it and/or -// modify it under the terms of the GNU Library General Public License as -// published by the Free Software Foundation; either version 2 of the -// License, or (at your option) any later version. -// -// This software is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Library General Public License for more details. -// -// You should have received a copy of the GNU Library General Public -// License along with this software; see the file COPYING.LIB. If -// not, write to the Free Software Foundation, Inc., 675 Mass Ave, -// Cambridge, MA 02139, USA. -// -// --------------------------------------------------------------------- -// Format clone that demonstrates the use of the FMIFS file system -// utility library. -// -// 1999 February (Emanuele Aliberti) -// Adapted for ReactOS and lcc-win32. -// -// 1999 April (Emanuele Aliberti) -// Adapted for ReactOS and egcs. -// -//===================================================================== = -#define UNICODE 1 -#define _UNICODE 1 -#include <windows.h> -#include <stdio.h> -#include "../../reactos/include/fmifs.h" -//#include <tchar.h> -#include "win32err.h" -#include "config.h" - -#define WBUFSIZE(b) (sizeof(b) / sizeof (wchar_t)) - - -// -// Globals -// -BOOL Error = FALSE; - -// switches -BOOL QuickFormat = FALSE; -DWORD ClusterSize = 0; -BOOL CompressDrive = FALSE; -BOOL GotALabel = FALSE; -PWCHAR Label = L""; -PWCHAR Drive = NULL; -PWCHAR Format = L"FAT"; - -WCHAR RootDirectory [MAX_PATH]; -WCHAR LabelString [12]; - -#ifndef FMIFS_IMPORT_DLL -// -// Functions in FMIFS.DLL -// -PFORMATEX FormatEx; -PENABLEVOLUMECOMPRESSION EnableVolumeCompression; -#endif /* ndef FMIFS_IMPORT_DLL */ - -// -// Size array -// -typedef -struct -{ - WCHAR SizeString [16]; - DWORD ClusterSize; - -} SIZEDEFINITION, *PSIZEDEFINITION; - - -SIZEDEFINITION -LegalSizes [] = -{ - { L"512", 512 }, - { L"1024", 1024 }, - { L"2048", 2048 }, - { L"4096", 4096 }, - { L"8192", 8192 }, - { L"16K", 16384 }, - { L"32K", 32768 }, - { L"64K", 65536 }, - { L"128K", 65536 * 2 }, - { L"256K", 65536 * 4 }, - { L"", 0 }, -}; - - -//--------------------------------------------------------------------- - -// -// Usage -// -// Tell the user how to use the program -// -// 1990218 EA ProgramName missing in wprintf arg list -// -//--------------------------------------------------------------------- - -VOID -Usage( PWCHAR ProgramName ) -{ - wprintf( - L"\ -Usage: %s drive: [-FS:file-system] [-V:label] [-Q] [-A:size] [-C]\n\n\ - [drive:] Specifies the drive to format.\n\ - -FS:file-system Specifies the type of file system (e.g. FAT).\n\ - -V:label Specifies volume label.\n\ - -Q Performs a quick format.\n\ [truncated at 1000 lines; 8522 more skipped]