Sync explorer with Martin Fuchs:

- File Management by provided by winefile merge (Requires WINE Headers).
- Fixes registry startup provide via wineboot merge
- Explorer bar loading fixed
- Cleaned up explorer source tree a little.
- Added doc/TODO.txt

svn path=/trunk/; revision=5017
This commit is contained in:
Steven Edwards 2003-07-08 22:52:53 +00:00
parent 1c92882c66
commit 3159e14d52
28 changed files with 5053 additions and 45 deletions

View file

@ -0,0 +1,163 @@
/*
* Winefile
* German Language Support
*
* Copyright 2000 Martin Fuchs
* Copyright 2002 Steven Edwards
* Copyright 2002 Alexandre Julliard
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library 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
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
LANGUAGE LANG_GERMAN, SUBLANG_GERMAN
#pragma code_page(1252)
/* Menu */
IDM_WINEFILE MENU FIXED IMPURE
{
POPUP "&Datei" {
MENUITEM "Ö&ffnen\tEingabetaste" , 101
MENUITEM "&Verschieben...\tF7" , 106
MENUITEM "&Kopieren...\tF8" , 107
MENUITEM "&In Zwischenablage...\tF9" , 118
MENUITEM "&Löschen\tEntf" , 108
MENUITEM "&Umbenennen..." , 109
MENUITEM "&Eigenschaften...\tAlt+Eingabetaste" , ID_EDIT_PROPERTIES
MENUITEM SEPARATOR
MENUITEM "K&omprimieren..." , 119
MENUITEM "Deko&mprimieren..." , 120
MENUITEM SEPARATOR
MENUITEM "&Ausführen..." , ID_EXECUTE
MENUITEM "&Drucken..." , 102
MENUITEM "Zuord&nen..." , 103
MENUITEM SEPARATOR
MENUITEM "Ver&zeichnis erstellen..." , 111
MENUITEM "&Suchen..." , 104
MENUITEM "Dateien aus&wählen..." , 116
MENUITEM SEPARATOR
MENUITEM "&Beenden\tAlt+X" , ID_FILE_EXIT
}
POPUP "Da&tenträger" {
MENUITEM "Datenträger &kopieren..." , 201
MENUITEM "Datenträger &benennen..." , 202
MENUITEM SEPARATOR
MENUITEM "Datenträger &formatieren..." , 203
#ifdef _WIN95
MENUITEM "...", -1 //TODO
#endif
MENUITEM SEPARATOR
MENUITEM "Netzwerklaufwerk &verbinden..." , 252
MENUITEM "Netzwerklaufwerk &trennen..." , 253
MENUITEM SEPARATOR
MENUITEM "F&reigeben als..." , 254
MENUITEM "Freigabe been&den..." , 255
MENUITEM SEPARATOR
MENUITEM "Laufwerk aus&wählen..." , 251
}
POPUP "&Verzeichnisse" {
MENUITEM "&Nächste Ebene einblenden\t+" , 301
MENUITEM "&Zweig einblenden\t*" , 302
MENUITEM "Alle &Ebenen einblenden\tStrg+*" , 303
MENUITEM "Zweig &ausblenden\t-" , 304
MENUITEM SEPARATOR
MENUITEM "&Verzweigungen kennzeichnen" , 505
}
POPUP "&Ansicht" {
MENUITEM "Struktur &und Verzeichnis" , 413
MENUITEM "Nur St&ruktur" , 411
MENUITEM "Nur &Verzeichnis" , 412
MENUITEM SEPARATOR
MENUITEM "&Teilen" , 414
MENUITEM SEPARATOR
MENUITEM "&Name" , ID_VIEW_NAME
MENUITEM "A&lle Dateiangaben" , ID_VIEW_ALL_ATTRIBUTES, CHECKED
MENUITEM "&Bestimmte Dateiangaben..." , ID_VIEW_SELECTED_ATTRIBUTES
MENUITEM SEPARATOR
MENUITEM "Nach N&ame" , 404
MENUITEM "Nach T&yp" , 405
MENUITEM "Nach &Größe" , 406
MENUITEM "Nach &Datum" , 407
MENUITEM SEPARATOR
MENUITEM "Angaben ausw&ählen..." , 409
}
POPUP "&Optionen" {
MENUITEM "&Bestätigen..." , -1
MENUITEM "Schrift&art..." , -1
MENUITEM "Symbolleiste &definieren..." , -1
MENUITEM SEPARATOR
MENUITEM "Sy&mbolleiste" , ID_VIEW_TOOL_BAR, CHECKED
MENUITEM "Lauf&werkleiste" , ID_VIEW_DRIVE_BAR, CHECKED
MENUITEM "&Statusleiste" , ID_VIEW_STATUSBAR, CHECKED
#ifndef _NO_EXTENSIONS
MENUITEM "Vollb&ild\tStrg+Umschalt+S" , ID_VIEW_FULLSCREEN
#endif
MENUITEM SEPARATOR
MENUITEM "&Symbol nach Programmstart" , -1
MENUITEM "&Einstellungen beim Beenden speichern" , 511
}
POPUP "&Sicherheit" {
MENUITEM "&Berechtigungen..." , 605
MENUITEM "Über&wachen..." , 606
MENUITEM "Besi&tzer..." , 607
}
POPUP "&Fenster" {
MENUITEM "Neues &Fenster" , ID_WINDOW_NEW
MENUITEM "Über&lappend\tUmschalt+F5" , ID_WINDOW_CASCADE
MENUITEM "&Untereinander" , ID_WINDOW_TILE_HORZ
MENUITEM "&Nebeneinander\tUmschalt+F4" , ID_WINDOW_TILE_VERT
#ifndef _NO_EXTENSIONS
MENUITEM "au&tomatisch anordnen" , ID_WINDOW_AUTOSORT
#endif
MENUITEM "&Symbole anordnen" , ID_WINDOW_ARRANGE
MENUITEM "&Aktualisieren\tF5" , ID_REFRESH
}
POPUP "&?" {
MENUITEM "&Hilfethemen\tF1" , ID_HELP
MENUITEM "&Suchen...\tF1" , ID_HELP
MENUITEM "Hilfe &verwenden\tF1" , ID_HELP_USING
MENUITEM SEPARATOR
MENUITEM "Info about &Winefile..." , ID_ABOUT
/* POPUP "Inf&o..." {
MENUITEM "Info über &Wine..." , ID_ABOUT_WINE
// MENUITEM "&Lizenz" ID_LICENSE
// MENUITEM "&KEINE GARANTIE" ID_NO_WARRANTY
}*/
}
}
IDD_EXECUTE DIALOG FIXED IMPURE 15, 13, 210, 63
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Ausführen"
FONT 8, "MS Shell Dlg"
{
CONTROL "", 101, "Static", SS_SIMPLE|SS_NOPREFIX, 3, 6, 162, 10
CONTROL "Befehls&zeile:" , -1, "Static", SS_LEFTNOWORDWRAP|WS_GROUP, 3, 18, 60, 10
EDITTEXT 201, 3, 29, 134, 12, ES_AUTOHSCROLL
CONTROL "Als &Symbol" , 214, "Button", BS_AUTOCHECKBOX|WS_TABSTOP,3, 45, 71, 12
DEFPUSHBUTTON "OK" , 1, 158, 6, 47, 14
PUSHBUTTON "Abbrechen" , 2, 158, 23, 47, 14
PUSHBUTTON "&Hilfe" , 254, 158, 43, 47, 14
}

View file

@ -0,0 +1,167 @@
/*
* WineFile
* English Language Support
*
* Copyright 2000 Martin Fuchs
* Copyright 2002 Steven Edwards
* Copyright 2002 Alexandre Julliard
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library 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
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
#pragma code_page(850)
/* Menu */
IDM_WINEFILE MENU FIXED IMPURE
{
POPUP "&File" {
MENUITEM "&Open\tEnter" , 101
MENUITEM "&Move...\tF7" , 106
MENUITEM "&Copy...\tF8" , 107
MENUITEM "&In Clipboard...\tF9" , 118
MENUITEM "&Delete\tDel" , 108
MENUITEM "Re&name..." , 109
MENUITEM "Propert&ies...\tAlt+Enter" , ID_EDIT_PROPERTIES
MENUITEM SEPARATOR
MENUITEM "C&ompress..." , 119
MENUITEM "Dec&ompress..." , 120
MENUITEM SEPARATOR
MENUITEM "&Run..." , ID_EXECUTE
MENUITEM "&Print..." , 102
MENUITEM "Associate..." , 103
MENUITEM SEPARATOR
MENUITEM "Cr&eate Directory..." , 111
MENUITEM "Searc&h..." , 104
MENUITEM "&Select Files..." , 116
MENUITEM SEPARATOR
#ifndef _NO_EXTENSIONS
MENUITEM "E&xit\tAlt+X" , ID_FILE_EXIT
#else
MENUITEM "E&xit", ID_FILE_EXIT
#endif
}
POPUP "&Disk" {
MENUITEM "&Copy Disk..." , 201
MENUITEM "&Label Disk..." , 202
MENUITEM SEPARATOR
MENUITEM "&Format Disk..." , 203
#ifdef _WIN95
MENUITEM "&Make System Disk...", -1 //TODO
#endif
MENUITEM SEPARATOR
MENUITEM "Connect &Network Drive" , 252
MENUITEM "&Disconnect Network Drive" , 253
MENUITEM SEPARATOR
MENUITEM "Share as..." , 254
MENUITEM "&Remove Share..." , 255
MENUITEM SEPARATOR
MENUITEM "&Select Drive..." , 251
}
POPUP "&Directories" {
MENUITEM "&Next Level\t+" , 301
MENUITEM "Expand &Tree\t*" , 302
MENUITEM "Expand &all\tStrg+*" , 303
MENUITEM "Collapse &Tree\t-" , 304
MENUITEM SEPARATOR
MENUITEM "&Mark Childs" , 505
}
POPUP "&View" {
MENUITEM "T&ree and Directory" , 413
MENUITEM "Tr&ee Only" , 411
MENUITEM "Directory &Only" , 412
MENUITEM SEPARATOR
MENUITEM "Sp&lit" , 414
MENUITEM SEPARATOR
MENUITEM "&Name" , ID_VIEW_NAME
MENUITEM "&All File Details" , ID_VIEW_ALL_ATTRIBUTES, CHECKED
MENUITEM "&Partial Details..." , ID_VIEW_SELECTED_ATTRIBUTES
MENUITEM SEPARATOR
MENUITEM "&Sort by Name" , 404
MENUITEM "Sort &by Type" , 405
MENUITEM "Sort by Si&ze" , 406
MENUITEM "Sort by &Date" , 407
MENUITEM SEPARATOR
MENUITEM "Sort by &..." , 409
}
POPUP "&Options" {
MENUITEM "&Confirmation..." , -1
MENUITEM "&Font..." , -1
MENUITEM "Customize Tool&bar..." , -1
MENUITEM SEPARATOR
MENUITEM "&Toolbar" , ID_VIEW_TOOL_BAR, CHECKED
MENUITEM "&Drivebar" , ID_VIEW_DRIVE_BAR, CHECKED
MENUITEM "&Status Bar" , ID_VIEW_STATUSBAR, CHECKED
#ifndef _NO_EXTENSIONS
MENUITEM "F&ull Screen\tCtrl+Shift+S" , ID_VIEW_FULLSCREEN
#endif
MENUITEM SEPARATOR
MENUITEM "&Symbol nach Programmstart" , -1
MENUITEM "&Einstellungen beim Beenden speichern" , 511
}
POPUP "&Security" {
MENUITEM "&Access..." , 605
MENUITEM "&Logging..." , 606
MENUITEM "&Owner..." , 607
}
POPUP "&Window" {
MENUITEM "New &Window" , ID_WINDOW_NEW
MENUITEM "Cascading\tCtrl+F5" , ID_WINDOW_CASCADE
MENUITEM "Tile &Horizontally" , ID_WINDOW_TILE_HORZ
MENUITEM "Tile &Vertically\tCtrl+F4" , ID_WINDOW_TILE_VERT
#ifndef _NO_EXTENSIONS
MENUITEM "Arrange Automatically" , ID_WINDOW_AUTOSORT
#endif
MENUITEM "Arrange &Symbols" , ID_WINDOW_ARRANGE
MENUITEM "&Refresh\tF5" , ID_REFRESH
}
POPUP "&?" {
MENUITEM "&Help Topics\tF1" , ID_HELP
MENUITEM "Help &Search...\tF1" , ID_HELP
MENUITEM "&Using Help\tF1" , ID_HELP_USING
MENUITEM SEPARATOR
MENUITEM "Info about &Winefile..." , ID_ABOUT
/* POPUP "Info..." {
MENUITEM "Info about &Wine..." , ID_ABOUT_WINE
// MENUITEM "&License..." ID_LICENSE
// MENUITEM "&NO WARRANTY" ID_NO_WARRANTY
} */
}
}
IDD_EXECUTE DIALOG FIXED IMPURE 15, 13, 210, 63
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Execute"
FONT 8, "MS Shell Dlg"
{
CONTROL "", 101, "Static", SS_SIMPLE|SS_NOPREFIX, 3, 6, 162, 10
CONTROL "&Command:" , -1, "Static", SS_LEFTNOWORDWRAP|WS_GROUP, 3, 18, 60, 10
EDITTEXT 201, 3, 29, 134, 12, ES_AUTOHSCROLL
CONTROL "As &Symbol" , 214, "Button", BS_AUTOCHECKBOX|WS_TABSTOP,3, 45, 71, 12
DEFPUSHBUTTON "OK" , 1, 158, 6, 47, 14
PUSHBUTTON "Cancel" , 2, 158, 23, 47, 14
PUSHBUTTON "&Help" , 254, 158, 43, 47, 14
}

View file

@ -0,0 +1,216 @@
# Microsoft Developer Studio Project File - Name="WineFile" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Application" 0x0101
CFG=WineFile - Win32 Unicode Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "WineFile.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "WineFile.mak" CFG="WineFile - Win32 Unicode Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "WineFile - Win32 Debug" (based on "Win32 (x86) Application")
!MESSAGE "WineFile - Win32 Unicode Debug" (based on "Win32 (x86) Application")
!MESSAGE "WineFile - Win32 UNICODE Release" (based on "Win32 (x86) Application")
!MESSAGE "WineFile - Win32 Release" (based on "Win32 (x86) Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.cmd
MTL=midl.exe
RSC=rc.exe
!IF "$(CFG)" == "WineFile - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "WineFileDebug"
# PROP Intermediate_Dir "WineFileDebug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /Yu"stdafx.h" /FD /GZ /c
# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /D "_DEBUG" /D "_NO_EXTENSIONS" /D "_WINE_" /D WINE_UNUSED= /FR /YX /FD /GZ /c
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x407 /d "_DEBUG"
# ADD RSC /l 0x407 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.cmd
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept
# ADD LINK32 user32.lib gdi32.lib advapi32.lib comctl32.lib shell32.lib comdlg32.lib /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept
!ELSEIF "$(CFG)" == "WineFile - Win32 Unicode Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Unicode Debug"
# PROP BASE Intermediate_Dir "Unicode Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "WineFileUDebug"
# PROP Intermediate_Dir "WineFileUDebug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /FR /YX /FD /GZ /c
# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /D "_DEBUG" /D "UNICODE" /D "_WINE_" /D WINE_UNUSED= /FR /YX /FD /GZ /c
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x407 /d "_DEBUG"
# ADD RSC /l 0x407 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.cmd
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept
# ADD LINK32 user32.lib gdi32.lib advapi32.lib comctl32.lib shell32.lib comdlg32.lib /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept
!ELSEIF "$(CFG)" == "WineFile - Win32 UNICODE Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "WineFile___Win32_UNICODE_Release"
# PROP BASE Intermediate_Dir "WineFile___Win32_UNICODE_Release"
# PROP BASE Ignore_Export_Lib 0
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "WineFileURelease"
# PROP Intermediate_Dir "WineFileURelease"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c
# ADD CPP /nologo /W3 /GX /O2 /D "NDEBUG" /D "UNICODE" /D "_WINE_" /D WINE_UNUSED= /YX /FD /c
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x407 /d "NDEBUG"
# ADD RSC /l 0x407 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.cmd
# ADD BASE LINK32 user32.lib gdi32.lib advapi32.lib comctl32.lib shell32.lib comdlg32.lib /nologo /subsystem:windows /machine:I386
# ADD LINK32 user32.lib gdi32.lib advapi32.lib comctl32.lib shell32.lib comdlg32.lib /nologo /subsystem:windows /machine:I386
!ELSEIF "$(CFG)" == "WineFile - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "WineFile___Win32_Release"
# PROP BASE Intermediate_Dir "WineFile___Win32_Release"
# PROP BASE Ignore_Export_Lib 0
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "WineFileRelease"
# PROP Intermediate_Dir "WineFileRelease"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "NDEBUG" /D "UNICODE" /D WINE_UNUSED= /YX /FD /c
# ADD CPP /nologo /W3 /GX /O2 /D "NDEBUG" /D "_WINE_" /D WINE_UNUSED= /YX /FD /c
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x407 /d "NDEBUG"
# ADD RSC /l 0x407 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.cmd
# ADD BASE LINK32 user32.lib gdi32.lib advapi32.lib comctl32.lib shell32.lib comdlg32.lib /nologo /subsystem:windows /machine:I386
# ADD LINK32 user32.lib gdi32.lib advapi32.lib comctl32.lib shell32.lib comdlg32.lib /nologo /subsystem:windows /machine:I386
!ENDIF
# Begin Target
# Name "WineFile - Win32 Debug"
# Name "WineFile - Win32 Unicode Debug"
# Name "WineFile - Win32 UNICODE Release"
# Name "WineFile - Win32 Release"
# Begin Group "Resources"
# PROP Default_Filter ""
# Begin Source File
SOURCE=.\De.rc
# PROP Exclude_From_Build 1
# End Source File
# Begin Source File
SOURCE=.\drivebar.bmp
# End Source File
# Begin Source File
SOURCE=.\En.rc
# PROP Exclude_From_Build 1
# End Source File
# Begin Source File
SOURCE=.\images.bmp
# End Source File
# Begin Source File
SOURCE=.\resource.h
# End Source File
# Begin Source File
SOURCE=.\resource.rc
# PROP Exclude_From_Build 1
# End Source File
# Begin Source File
SOURCE=.\toolbar.bmp
# End Source File
# Begin Source File
SOURCE=.\winefile.ico
# End Source File
# Begin Source File
SOURCE=.\winefile.rc
# End Source File
# End Group
# Begin Source File
SOURCE=.\license.c
# End Source File
# Begin Source File
SOURCE=.\license.h
# End Source File
# Begin Source File
SOURCE=.\Makefile.in
# End Source File
# Begin Source File
SOURCE=.\splitpath.c
# End Source File
# Begin Source File
SOURCE=.\winefile.c
# End Source File
# Begin Source File
SOURCE=.\winefile.h
# End Source File
# End Target
# End Project

View file

@ -5,13 +5,14 @@
5th July 2003
*/
#include <stdio.h>
#include <windows.h>
#include "explorer.h"
const char DesktopClassName[] = "DesktopWindow";
#include "include/explorer.h"
const TCHAR DesktopClassName[] = TEXT("DesktopWindow");
LRESULT CALLBACK DeskWndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
@ -33,7 +34,7 @@ LRESULT CALLBACK DeskWndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
PAINTSTRUCT ps;
HDC DesktopDC = BeginPaint(hwnd, &ps);
char Text [] = "ReactOS 0.1.2 Desktop Example\nby Silver Blade";
TCHAR Text [] = TEXT("ReactOS 0.1.2 Desktop Example\nby Silver Blade");
int Width, Height;
@ -43,7 +44,8 @@ LRESULT CALLBACK DeskWndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
// This next part could be improved by working out how much
// space the text actually needs...
RECT r;
{
RECT r;
r.left = Width - 260;
r.top = Height - 80;
r.right = r.left + 250;
@ -51,10 +53,17 @@ LRESULT CALLBACK DeskWndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
SetTextColor(DesktopDC, 0x00ffffff);
SetBkMode(DesktopDC, TRANSPARENT);
DrawText(DesktopDC, &Text, -1, &r, DT_RIGHT);
DrawText(DesktopDC, Text, -1, &r, DT_RIGHT);
}
EndPaint(hwnd, &ps);
return 0;
}
case WM_LBUTTONDBLCLK:
ShowFileMgr(hwnd, SW_SHOWNORMAL);
return 0;
}
return DefWindowProc(hwnd, uMsg, wParam, lParam);
@ -68,16 +77,18 @@ int main(int argc, char *argv[])
WNDCLASSEX wc;
HWND Desktop;
STARTUPINFO startupinfo;
int cmdshow = SW_SHOWNORMAL;
STARTUPINFO startupinfo;
int nCmdShow = SW_SHOWNORMAL;
HINSTANCE hInstance = GetModuleHandle(NULL);
HWND hwndExplorerBar;
wc.cbSize = sizeof(WNDCLASSEX);
wc.style = 0;
wc.style = CS_DBLCLKS;
wc.lpfnWndProc = &DeskWndProc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = GetModuleHandle(NULL);
wc.hInstance = hInstance;
wc.hIcon = LoadIcon(NULL, IDI_APPLICATION);
wc.hCursor = LoadCursor(NULL, IDC_ARROW);
wc.hbrBackground= (HBRUSH) GetStockObject(BLACK_BRUSH);
@ -85,27 +96,47 @@ int main(int argc, char *argv[])
wc.lpszClassName= DesktopClassName;
wc.hIconSm = NULL;
if (! RegisterClassEx(&wc))
if (!RegisterClassEx(&wc))
return 1; // error
Width = GetSystemMetrics(SM_CXSCREEN);
Height = GetSystemMetrics(SM_CYSCREEN);
Desktop = CreateWindowEx(0, DesktopClassName, "Desktop",
Desktop = CreateWindowEx(0, DesktopClassName, TEXT("Desktop"),
WS_VISIBLE | WS_POPUP | WS_CLIPCHILDREN,
0, 0, Width, Height,
NULL, NULL, GetModuleHandle(NULL), NULL);
NULL, NULL, hInstance, NULL);
if (! Desktop)
return 1; // error
{
fprintf(stderr,"FATAL: Desktop window could not be initialized properly - Exiting.\n");
return 1; // error
}
// call winefile/menu startup routine
// call winefile startup routine
startupinfo.wShowWindow = SW_SHOWNORMAL;
GetStartupInfo(&startupinfo);
if (startupinfo.dwFlags & STARTF_USESHOWWINDOW)
cmdshow = startupinfo.wShowWindow;
nCmdShow = startupinfo.wShowWindow;
return Ex_BarMain(GetModuleHandle(NULL), Desktop, NULL, cmdshow);
//return startup(argc, argv); // invoke the startup groups
// Initializing the Explorer Bar !
if (!(hwndExplorerBar=InitializeExplorerBar(hInstance, nCmdShow)))
{
fprintf(stderr,"FATAL: Explorer bar could not be initialized properly ! Exiting !\n");
return 1;
}
// Load plugins
if (!ExplorerLoadPlugins(hwndExplorerBar))
{
fprintf(stderr,"WARNING: No plugin for desktop bar could be loaded.\n");
}
#ifndef _DEBUG //MF: disabled for debugging
startup(argc, argv); // invoke the startup groups
#endif
return winefile_main(hInstance, Desktop, nCmdShow);
}

View file

@ -0,0 +1,211 @@
1. Fix the Explorer Bar/Start Menu. Currently it is almost nothing like Windows.
2. Implement support for ICONs on the desktop.
3. Fix Mingw build. Currently Explorer requires the WINE headers to build.
When build with Mingw headers you will get a error like this:
G:\src\rosapps\explorer>make1
windres -DNDEBUG -DWIN32 -DUNICODE -D_ROS_ --include-dir ../../reactos/include -
-include-dir ../../reactos/include explorer.rc -o explorer.coff
gcc -fexceptions -O2 -DNDEBUG -DWIN32 -DUNICODE -D_ROS_ -W -I./ -I../../reactos/
include -pipe -march=i386 -D_M_IX86 -c desktop.c -o desktop.o
gcc -fexceptions -O2 -DNDEBUG -DWIN32 -DUNICODE -D_ROS_ -W -I./ -I../../reactos/
include -pipe -march=i386 -D_M_IX86 -c ex_bar.c -o ex_bar.o
gcc -fexceptions -O2 -DNDEBUG -DWIN32 -DUNICODE -D_ROS_ -W -I./ -I../../reactos/
include -pipe -march=i386 -D_M_IX86 -c license.c -o license.o
gcc -fexceptions -O2 -DNDEBUG -DWIN32 -DUNICODE -D_ROS_ -W -I./ -I../../reactos/
include -pipe -march=i386 -D_M_IX86 -c splitpath.c -o splitpath.o
In file included from C:/mingw/include/commctrl.h:7,
from winefile.h:38,
from splitpath.c:19:
C:/mingw/include/prsht.h:123: parse error before "LPCDLGTEMPLATE"
C:/mingw/include/prsht.h:138: parse error before '}' token
C:/mingw/include/prsht.h:139: parse error before '*' token
C:/mingw/include/prsht.h:146: parse error before "LPCDLGTEMPLATE"
C:/mingw/include/prsht.h:152: conflicting types for `pszTitle'
C:/mingw/include/prsht.h:129: previous declaration of `pszTitle'
C:/mingw/include/prsht.h:155: conflicting types for `pfnCallback'
C:/mingw/include/prsht.h:132: previous declaration of `pfnCallback'
C:/mingw/include/prsht.h:161: parse error before '}' token
C:/mingw/include/prsht.h:162: parse error before '*' token
C:/mingw/include/prsht.h:163: parse error before "LPPROPSHEETPAGEA"
C:/mingw/include/prsht.h:164: parse error before "LPPROPSHEETPAGEW"
C:/mingw/include/prsht.h:183: parse error before "LPCPROPSHEETPAGEA"
C:/mingw/include/prsht.h:185: parse error before '}' token
C:/mingw/include/prsht.h:186: conflicting types for `pfnCallback'
C:/mingw/include/prsht.h:155: previous declaration of `pfnCallback'
C:/mingw/include/prsht.h:198: parse error before '}' token
C:/mingw/include/prsht.h:199: parse error before '*' token
C:/mingw/include/prsht.h:216: parse error before "LPCPROPSHEETPAGEW"
C:/mingw/include/prsht.h:218: parse error before '}' token
C:/mingw/include/prsht.h:231: parse error before '}' token
C:/mingw/include/prsht.h:232: parse error before '*' token
C:/mingw/include/prsht.h:236: parse error before "NMHDR"
C:/mingw/include/prsht.h:238: parse error before '}' token
In file included from winefile.h:38,
from splitpath.c:19:
C:/mingw/include/commctrl.h:1473: parse error before "NMHDR"
C:/mingw/include/commctrl.h:1478: parse error before '}' token
C:/mingw/include/commctrl.h:1480: parse error before "NMHDR"
C:/mingw/include/commctrl.h:1483: conflicting types for `szText'
C:/mingw/include/commctrl.h:1476: previous declaration of `szText'
C:/mingw/include/commctrl.h:1485: parse error before '}' token
C:/mingw/include/commctrl.h:1493: parse error before "POINT"
C:/mingw/include/commctrl.h:1548: parse error before "NMHDR"
C:/mingw/include/commctrl.h:1553: parse error before '}' token
C:/mingw/include/commctrl.h:1564: parse error before "RECT"
C:/mingw/include/commctrl.h:1606: parse error before "RECT"
C:/mingw/include/commctrl.h:1608: parse error before '}' token
C:/mingw/include/commctrl.h:1611: parse error before "POINT"
C:/mingw/include/commctrl.h:1614: parse error before '}' token
C:/mingw/include/commctrl.h:1616: parse error before "NMHDR"
C:/mingw/include/commctrl.h:1620: parse error before '}' token
C:/mingw/include/commctrl.h:1622: parse error before "NMHDR"
C:/mingw/include/commctrl.h:1625: conflicting types for `pitem'
C:/mingw/include/commctrl.h:1619: previous declaration of `pitem'
C:/mingw/include/commctrl.h:1626: parse error before '}' token
C:/mingw/include/commctrl.h:1631: parse error before "NMHDR"
C:/mingw/include/commctrl.h:1634: conflicting types for `pitem'
C:/mingw/include/commctrl.h:1625: previous declaration of `pitem'
C:/mingw/include/commctrl.h:1635: parse error before '}' token
C:/mingw/include/commctrl.h:1638: parse error before "NMHDR"
C:/mingw/include/commctrl.h:1641: conflicting types for `pitem'
C:/mingw/include/commctrl.h:1634: previous declaration of `pitem'
C:/mingw/include/commctrl.h:1642: parse error before '}' token
C:/mingw/include/commctrl.h:1652: parse error before "NMHDR"
C:/mingw/include/commctrl.h:1655: conflicting types for `pszText'
C:/mingw/include/commctrl.h:1552: previous declaration of `pszText'
C:/mingw/include/commctrl.h:1659: parse error before '}' token
C:/mingw/include/commctrl.h:1661: parse error before "NMHDR"
C:/mingw/include/commctrl.h:1664: conflicting types for `pszText'
C:/mingw/include/commctrl.h:1655: previous declaration of `pszText'
C:/mingw/include/commctrl.h:1668: parse error before '}' token
C:/mingw/include/commctrl.h:1670: parse error before "NMHDR"
C:/mingw/include/commctrl.h:1673: parse error before "rc"
C:/mingw/include/commctrl.h:1677: parse error before '}' token
C:/mingw/include/commctrl.h:1679: parse error before "NMCUSTOMDRAW"
C:/mingw/include/commctrl.h:1685: parse error before '}' token
C:/mingw/include/commctrl.h:1687: parse error before "NMCUSTOMDRAW"
C:/mingw/include/commctrl.h:1693: parse error before '}' token
C:/mingw/include/commctrl.h:1729: parse error before "NMHDR"
C:/mingw/include/commctrl.h:1733: conflicting types for `pszText'
C:/mingw/include/commctrl.h:1664: previous declaration of `pszText'
C:/mingw/include/commctrl.h:1737: parse error before '}' token
C:/mingw/include/commctrl.h:1741: parse error before "NMHDR"
C:/mingw/include/commctrl.h:1745: conflicting types for `pszText'
C:/mingw/include/commctrl.h:1733: previous declaration of `pszText'
C:/mingw/include/commctrl.h:1749: parse error before '}' token
C:/mingw/include/commctrl.h:1757: parse error before "RECT"
C:/mingw/include/commctrl.h:1763: parse error before '}' token
C:/mingw/include/commctrl.h:1769: parse error before "RECT"
C:/mingw/include/commctrl.h:1771: conflicting types for `lpszText'
C:/mingw/include/commctrl.h:1759: previous declaration of `lpszText'
C:/mingw/include/commctrl.h:1775: parse error before '}' token
C:/mingw/include/commctrl.h:1778: parse error before "POINT"
C:/mingw/include/commctrl.h:1783: parse error before "POINT"
C:/mingw/include/commctrl.h:1787: parse error before "NMHDR"
C:/mingw/include/commctrl.h:1788: conflicting types for `lpszText'
C:/mingw/include/commctrl.h:1771: previous declaration of `lpszText'
C:/mingw/include/commctrl.h:1789: conflicting types for `szText'
C:/mingw/include/commctrl.h:1483: previous declaration of `szText'
C:/mingw/include/commctrl.h:1795: parse error before '}' token
C:/mingw/include/commctrl.h:1799: parse error before "NMHDR"
C:/mingw/include/commctrl.h:1800: conflicting types for `lpszText'
C:/mingw/include/commctrl.h:1788: previous declaration of `lpszText'
C:/mingw/include/commctrl.h:1801: conflicting types for `szText'
C:/mingw/include/commctrl.h:1789: previous declaration of `szText'
C:/mingw/include/commctrl.h:1807: parse error before '}' token
C:/mingw/include/commctrl.h:1815: parse error before "NMHDR"
C:/mingw/include/commctrl.h:1818: parse error before '}' token
C:/mingw/include/commctrl.h:1835: parse error before '*' token
C:/mingw/include/commctrl.h:1851: conflicting types for `FAR'
C:/mingw/include/commctrl.h:1835: previous declaration of `FAR'
C:/mingw/include/commctrl.h:1851: parse error before '*' token
C:/mingw/include/commctrl.h:1858: parse error before "POINT"
C:/mingw/include/commctrl.h:1860: parse error before '}' token
C:/mingw/include/commctrl.h:1860: parse error before "FAR"
C:/mingw/include/commctrl.h:1867: parse error before "POINT"
C:/mingw/include/commctrl.h:1869: parse error before '}' token
C:/mingw/include/commctrl.h:1869: parse error before "FAR"
C:/mingw/include/commctrl.h:1873: parse error before "POINT"
C:/mingw/include/commctrl.h:1879: parse error before '}' token
C:/mingw/include/commctrl.h:1893: conflicting types for `FAR'
C:/mingw/include/commctrl.h:1851: previous declaration of `FAR'
C:/mingw/include/commctrl.h:1893: parse error before '*' token
C:/mingw/include/commctrl.h:1907: conflicting types for `FAR'
C:/mingw/include/commctrl.h:1893: previous declaration of `FAR'
C:/mingw/include/commctrl.h:1907: parse error before '*' token
C:/mingw/include/commctrl.h:1912: parse error before "NMHDR"
C:/mingw/include/commctrl.h:1918: parse error before "ptAction"
C:/mingw/include/commctrl.h:1920: parse error before '}' token
C:/mingw/include/commctrl.h:1926: parse error before "NMHDR"
C:/mingw/include/commctrl.h:1928: parse error before '}' token
C:/mingw/include/commctrl.h:1928: parse error before "FAR"
C:/mingw/include/commctrl.h:1932: parse error before "NMHDR"
C:/mingw/include/commctrl.h:1933: conflicting types for `item'
C:/mingw/include/commctrl.h:1927: previous declaration of `item'
C:/mingw/include/commctrl.h:1934: parse error before '}' token
C:/mingw/include/commctrl.h:1934: parse error before "FAR"
C:/mingw/include/commctrl.h:1938: parse error before "NMHDR"
C:/mingw/include/commctrl.h:1941: parse error before '}' token
C:/mingw/include/commctrl.h:1943: parse error before "NMHDR"
C:/mingw/include/commctrl.h:1946: parse error before '}' token
C:/mingw/include/commctrl.h:2038: parse error before "POINT"
C:/mingw/include/commctrl.h:2041: parse error before '}' token
C:/mingw/include/commctrl.h:2055: parse error before "NMHDR"
C:/mingw/include/commctrl.h:2059: parse error before "ptDrag"
C:/mingw/include/commctrl.h:2065: parse error before "NMHDR"
C:/mingw/include/commctrl.h:2067: conflicting types for `itemOld'
C:/mingw/include/commctrl.h:2057: previous declaration of `itemOld'
C:/mingw/include/commctrl.h:2068: conflicting types for `itemNew'
C:/mingw/include/commctrl.h:2058: previous declaration of `itemNew'
C:/mingw/include/commctrl.h:2069: parse error before "ptDrag"
C:/mingw/include/commctrl.h:2075: parse error before "NMHDR"
C:/mingw/include/commctrl.h:2076: conflicting types for `item'
C:/mingw/include/commctrl.h:1933: previous declaration of `item'
C:/mingw/include/commctrl.h:2077: parse error before '}' token
C:/mingw/include/commctrl.h:2079: parse error before "NMHDR"
C:/mingw/include/commctrl.h:2080: conflicting types for `item'
C:/mingw/include/commctrl.h:2076: previous declaration of `item'
C:/mingw/include/commctrl.h:2081: parse error before '}' token
C:/mingw/include/commctrl.h:2083: parse error before "NMHDR"
C:/mingw/include/commctrl.h:2086: parse error before '}' token
C:/mingw/include/commctrl.h:2122: parse error before "POINT"
C:/mingw/include/commctrl.h:2124: parse error before '}' token
C:/mingw/include/commctrl.h:2126: parse error before "NMHDR"
C:/mingw/include/commctrl.h:2129: parse error before '}' token
C:/mingw/include/commctrl.h:2165: parse error before "POINT"
C:/mingw/include/commctrl.h:2168: parse error before '}' token
C:/mingw/include/commctrl.h:2172: parse error before "NMHDR"
C:/mingw/include/commctrl.h:2176: parse error before '}' token
C:/mingw/include/commctrl.h:2329: parse error before "LPRECT"
C:/mingw/include/commctrl.h:2330: parse error before "LPRECT"
C:/mingw/include/commctrl.h:2331: parse error before "LPRECT"
C:/mingw/include/commctrl.h:2361: parse error before "IMAGEINFO"
C:/mingw/include/commctrl.h:2382: parse error before "POINT"
C:/mingw/include/commctrl.h:2585: parse error before "TOOLINFO"
C:/mingw/include/commctrl.h:2586: parse error before "TTHITTESTINFO"
C:/mingw/include/commctrl.h:2587: parse error before "TOOLTIPTEXT"
C:/mingw/include/commctrl.h:2588: parse error before "NMTTDISPINFO"
C:/mingw/include/commctrl.h:2596: parse error before "NM_TREEVIEW"
C:/mingw/include/commctrl.h:2597: parse error before "NMTREEVIEW"
C:/mingw/include/commctrl.h:2598: parse error before "NMHDDISPINFO"
In file included from winefile.h:39,
from splitpath.c:19:
C:/mingw/include/shellapi.h:101: parse error before "RECT"
C:/mingw/include/shellapi.h:103: parse error before '}' token
In file included from winefile.h:39,
from splitpath.c:19:
C:/mingw/include/shellapi.h:199: parse error before "LPPOINT"
C:/mingw/include/shellapi.h:208: parse error before "PAPPBARDATA"
In file included from splitpath.c:19:
winefile.h:131: parse error before "SIZE"
winefile.h:131: warning: no semicolon at end of struct or union
winefile.h:138: parse error before '}' token
winefile.h:138: warning: data definition has no type or storage class
winefile.h:140: parse error before "Globals"
winefile.h:140: warning: data definition has no type or storage class
make1: *** [splitpath.o] Error 1
G:\src\rosapps\explorer>

View file

@ -0,0 +1,11 @@
14.10.2002 m. fuchs Korrektur der Anpassungen durch Übernahme in wine: Anzeige der Verzeichnisnamen in Tree Pane
m. fuchs Wieder-Anpassung an natives Übersetzen unter WIN32 mit VC++
15.10.2002 m. fuchs Entfernung der Warnungsmeldung durch SetWindowText(0, ...)
m. fuchs korrekte Anzeige der Header Control-Texte (nicht Unicode -> dlls/comctl32/header.c)
15.10.2002 m. fuchs sofortige Anzeige der Dateiliste beim Starten und Öffnen neuer Fenster
15.10.2002 m. fuchs Programmaufruf über Doppelklick in der Dateiliste
07.06.2003 m. fuchs integration with ROS desktop window

View file

@ -8,6 +8,8 @@
#include <windows.h>
#include <stdio.h>
#include "include/explorer.h"
HFONT tf;
HINSTANCE PlugInsHI[2]; // PlugIns table
int PlugNumber; // Number of loaded plugins
@ -51,7 +53,7 @@ HWND InitializeExplorerBar(HINSTANCE hInstance, int nCmdShow)
HWND ExplorerBar;
WNDCLASS ExplorerBarClass;
ExplorerBarClass.lpszClassName = "ExplorerBar"; // ExplorerBar classname
ExplorerBarClass.lpszClassName = TEXT("ExplorerBar"); // ExplorerBar classname
ExplorerBarClass.lpfnWndProc = ExplorerBarProc; // Default Explorer Callback Procedure
ExplorerBarClass.style = CS_VREDRAW | CS_HREDRAW; // Styles
ExplorerBarClass.hInstance = hInstance; // Instance
@ -68,8 +70,8 @@ HWND InitializeExplorerBar(HINSTANCE hInstance, int nCmdShow)
return NULL;
}
ExplorerBar = CreateWindowEx(LoadProperty(1),"ExplorerBar",
"ReactOS Explorer Bar",LoadProperty(2),LoadProperty(3),LoadProperty(4),
ExplorerBar = CreateWindowEx(LoadProperty(1),TEXT("ExplorerBar"),
TEXT("ReactOS Explorer Bar"),LoadProperty(2),LoadProperty(3),LoadProperty(4),
LoadProperty(5),LoadProperty(6),NULL,NULL,hInstance,NULL);
if (ExplorerBar == NULL)
{
@ -128,7 +130,7 @@ HINSTANCE InitializeExplorerPlugIn(HWND ExplorerHandle)
printf("1.%s 2.%s\n",ttl,line);
strcpy(epl_line[i],line);
epl_AppButtons[i] = CreateWindow(
epl_AppButtons[i] = CreateWindowA(
"BUTTON",ttl,WS_VISIBLE | WS_CHILD | BS_PUSHBUTTON,
(i*102)+2, 2, 100, 20, ExplorerHandle, NULL, (HINSTANCE) GetWindowLong(ExplorerHandle, GWL_HINSTANCE),NULL);
}
@ -197,7 +199,7 @@ int ExplorerPlugInMessageProc(HWND PlgnHandle, UINT Msg, WPARAM wParam, LPARAM l
if ((HWND)lParam==epl_AppButtons[i])
{
printf("Pressed Button Line : %s\n",epl_line[i]);
system(epl_line[i]);
launch_fileA(PlgnHandle, epl_line[i], SW_SHOWNORMAL);
}
}
break;
@ -233,6 +235,7 @@ int ExplorerLoadPlugins(HWND ExplWnd)
return 1;
}
/*
int WINAPI Ex_BarMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpszCmdLine,
@ -267,6 +270,7 @@ int WINAPI Ex_BarMain(HINSTANCE hInstance,
return 0;
}
*/
LRESULT CALLBACK ExplorerBarProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{

View file

@ -0,0 +1,306 @@
# Microsoft Developer Studio Project File - Name="explorer" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Console Application" 0x0103
CFG=explorer - Win32 Unicode Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "explorer.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "explorer.mak" CFG="explorer - Win32 Unicode Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "explorer - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "explorer - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE "explorer - Win32 Debug Release" (based on "Win32 (x86) Console Application")
!MESSAGE "explorer - Win32 Unicode Release" (based on "Win32 (x86) Console Application")
!MESSAGE "explorer - Win32 Unicode Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.cmd
RSC=rc.exe
!IF "$(CFG)" == "explorer - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /W3 /GX /O2 /D "NDEBUG" /D "WIN32" /D "UNICODE" /D "_ROS_" /YX /FD /c
# ADD BASE RSC /l 0x407 /d "NDEBUG"
# ADD RSC /l 0x407 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.cmd
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 user32.lib gdi32.lib advapi32.lib comctl32.lib shell32.lib /nologo /subsystem:console /machine:I386
!ELSEIF "$(CFG)" == "explorer - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /D "_DEBUG" /D "WIN32" /D "UNICODE" /D "_ROS_" /FR /YX /FD /GZ /c
# ADD BASE RSC /l 0x407 /d "_DEBUG"
# ADD RSC /l 0x407 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.cmd
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 user32.lib gdi32.lib advapi32.lib comctl32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
!ELSEIF "$(CFG)" == "explorer - Win32 Debug Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "explorer___Win32_Debug_Release"
# PROP BASE Intermediate_Dir "explorer___Win32_Debug_Release"
# PROP BASE Ignore_Export_Lib 0
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "DRelease"
# PROP Intermediate_Dir "DRelease"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "NDEBUG" /D "WIN32" /D "_ROS_" /YX /FD /c
# ADD CPP /nologo /W3 /GX /Zi /O2 /D "NDEBUG" /D "WIN32" /D "UNICODE" /D "_ROS_" /FR /YX /FD /c
# ADD BASE RSC /l 0x407 /d "NDEBUG"
# ADD RSC /l 0x407 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.cmd
# ADD BASE LINK32 user32.lib gdi32.lib advapi32.lib comctl32.lib shell32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 user32.lib gdi32.lib advapi32.lib comctl32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386
!ELSEIF "$(CFG)" == "explorer - Win32 Unicode Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "explorer___Win32_Unicode_Release"
# PROP BASE Intermediate_Dir "explorer___Win32_Unicode_Release"
# PROP BASE Ignore_Export_Lib 0
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "."
# PROP Intermediate_Dir "URelease"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "NDEBUG" /D "WIN32" /D "UNICODE" /D "_ROS_" /YX /FD /c
# ADD CPP /nologo /W3 /GX /O2 /D "NDEBUG" /D "WIN32" /D "UNICODE" /D "_ROS_" /YX /FD /c
# ADD BASE RSC /l 0x407 /d "NDEBUG"
# ADD RSC /l 0x407 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.cmd
# ADD BASE LINK32 user32.lib gdi32.lib advapi32.lib comctl32.lib shell32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 user32.lib gdi32.lib advapi32.lib comctl32.lib shell32.lib /nologo /subsystem:console /machine:I386
!ELSEIF "$(CFG)" == "explorer - Win32 Unicode Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "explorer___Win32_Unicode_Debug"
# PROP BASE Intermediate_Dir "explorer___Win32_Unicode_Debug"
# PROP BASE Ignore_Export_Lib 0
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "UDebug"
# PROP Intermediate_Dir "UDebug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "_DEBUG" /D "WIN32" /D "UNICODE" /D "_ROS_" /FR /YX /FD /GZ /c
# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /D "_DEBUG" /D "WIN32" /D "UNICODE" /D "_ROS_" /FR /YX /FD /GZ /c
# ADD BASE RSC /l 0x407 /d "_DEBUG"
# ADD RSC /l 0x407 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.cmd
# ADD BASE LINK32 user32.lib gdi32.lib advapi32.lib comctl32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 user32.lib gdi32.lib advapi32.lib comctl32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
!ENDIF
# Begin Target
# Name "explorer - Win32 Release"
# Name "explorer - Win32 Debug"
# Name "explorer - Win32 Debug Release"
# Name "explorer - Win32 Unicode Release"
# Name "explorer - Win32 Unicode Debug"
# Begin Group "res"
# PROP Default_Filter ""
# Begin Source File
SOURCE=.\De.rc
!IF "$(CFG)" == "explorer - Win32 Release"
# PROP Exclude_From_Build 1
!ELSEIF "$(CFG)" == "explorer - Win32 Debug"
# PROP Exclude_From_Build 1
!ELSEIF "$(CFG)" == "explorer - Win32 Debug Release"
# PROP Exclude_From_Build 1
!ELSEIF "$(CFG)" == "explorer - Win32 Unicode Release"
# PROP BASE Exclude_From_Build 1
# PROP Exclude_From_Build 1
!ELSEIF "$(CFG)" == "explorer - Win32 Unicode Debug"
# PROP BASE Exclude_From_Build 1
# PROP Exclude_From_Build 1
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\drivebar.bmp
# End Source File
# Begin Source File
SOURCE=.\En.rc
!IF "$(CFG)" == "explorer - Win32 Release"
# PROP Exclude_From_Build 1
!ELSEIF "$(CFG)" == "explorer - Win32 Debug"
# PROP Exclude_From_Build 1
!ELSEIF "$(CFG)" == "explorer - Win32 Debug Release"
# PROP Exclude_From_Build 1
!ELSEIF "$(CFG)" == "explorer - Win32 Unicode Release"
# PROP BASE Exclude_From_Build 1
# PROP Exclude_From_Build 1
!ELSEIF "$(CFG)" == "explorer - Win32 Unicode Debug"
# PROP BASE Exclude_From_Build 1
# PROP Exclude_From_Build 1
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\resource.rc
!IF "$(CFG)" == "explorer - Win32 Release"
# PROP Exclude_From_Build 1
!ELSEIF "$(CFG)" == "explorer - Win32 Debug"
# PROP Exclude_From_Build 1
!ELSEIF "$(CFG)" == "explorer - Win32 Debug Release"
# PROP Exclude_From_Build 1
!ELSEIF "$(CFG)" == "explorer - Win32 Unicode Release"
# PROP BASE Exclude_From_Build 1
# PROP Exclude_From_Build 1
!ELSEIF "$(CFG)" == "explorer - Win32 Unicode Debug"
# PROP BASE Exclude_From_Build 1
# PROP Exclude_From_Build 1
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\winefile.ico
# End Source File
# Begin Source File
SOURCE=.\winefile.rc
# End Source File
# End Group
# Begin Source File
SOURCE=.\desktop.c
# End Source File
# Begin Source File
SOURCE=.\ex_bar.c
# End Source File
# Begin Source File
SOURCE=.\explorer.h
# End Source File
# Begin Source File
SOURCE=.\license.h
# End Source File
# Begin Source File
SOURCE=.\resource.h
# End Source File
# Begin Source File
SOURCE=.\splitpath.c
# End Source File
# Begin Source File
SOURCE=.\startup.c
# End Source File
# Begin Source File
SOURCE=.\winefile.c
# End Source File
# Begin Source File
SOURCE=.\winefile.h
# End Source File
# End Target
# End Project

View file

@ -0,0 +1,29 @@
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "explorer"=.\explorer.dsp - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################

View file

@ -1,15 +0,0 @@
// launch start programs
extern int startup( int argc, char *argv[] );
// winefile main routine
extern int winefile_main(HINSTANCE hinstance, HWND hwndParent, int cmdshow);
// display file manager window
extern void ShowFileMgr(HWND hWndParent, int cmdshow);
extern int WINAPI Ex_BarMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpszCmdLine,
int nCmdShow);

View file

@ -1,5 +1,6 @@
#include <defines.h>
#include <reactos/resource.h>
#include "winefile.rc"
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US

View file

@ -0,0 +1,24 @@
// launch start programs
extern int startup( int argc, char *argv[] );
// winefile main routine
extern int winefile_main(HINSTANCE hinstance, HWND hwndParent, int cmdshow);
// display file manager window
extern void ShowFileMgr(HWND hWndParent, int cmdshow);
// start desktop bar
extern HWND InitializeExplorerBar(HINSTANCE hInstance, int nCmdShow);
// load plugins
extern int ExplorerLoadPlugins(HWND ExplWnd);
// launch a program or document file
extern BOOL launch_file(HWND hwnd, LPCTSTR cmd, UINT nCmdShow);
#ifdef UNICODE
extern BOOL launch_fileA(HWND hwnd, LPSTR cmd, UINT nCmdShow);
#else
#define launch_fileA launch_file
#endif

View file

@ -0,0 +1,24 @@
VOID WineLicense(HWND hWnd, LPCSTR lpszLanguage);
VOID WineWarranty(HWND hWnd, LPCSTR language);
typedef struct
{
LPCSTR License, LicenseCaption;
LPCSTR Warranty, WarrantyCaption;
} LICENSE;
extern LICENSE WineLicense_Cz;
extern LICENSE WineLicense_Da;
extern LICENSE WineLicense_De;
extern LICENSE WineLicense_En;
extern LICENSE WineLicense_Eo;
extern LICENSE WineLicense_Es;
extern LICENSE WineLicense_Fi;
extern LICENSE WineLicense_Fr;
extern LICENSE WineLicense_Hu;
extern LICENSE WineLicense_It;
extern LICENSE WineLicense_Ko;
extern LICENSE WineLicense_No;
extern LICENSE WineLicense_Pl;
extern LICENSE WineLicense_Po;
extern LICENSE WineLicense_Va;

View file

@ -0,0 +1,75 @@
/*
* Copyright 2000 Martin Fuchs
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library 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
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
/* images */
#define IDB_TOOLBAR 100
#define IDB_DRIVEBAR 101
#define IDB_IMAGES 102
#define IDI_WINEFILE 100
/* accellerators and menus */
#define IDA_WINEFILE 101
#define IDM_WINEFILE 102
/* dialogs */
#define IDD_EXECUTE 103
/* control ids */
#define ID_ACTIVATE 101
#define ID_EXECUTE 105
#define ID_FILE_EXIT 115
#define ID_VIEW_NAME 401
#define ID_VIEW_ALL_ATTRIBUTES 402
#define ID_VIEW_SELECTED_ATTRIBUTES 403
#define ID_VIEW_TOOL_BAR 508
#define ID_VIEW_DRIVE_BAR 507
#define ID_VIEW_STATUSBAR 503
#define ID_ABOUT 1803
#define ID_REFRESH 1704
#define ID_EDIT_PROPERTIES 57656
#define ID_WINDOW_NEW 0xE130
#define ID_WINDOW_ARRANGE 0xE131
#define ID_WINDOW_CASCADE 0xE132
#define ID_WINDOW_TILE_HORZ 0xE133
#define ID_WINDOW_TILE_VERT 0xE134
#define ID_WINDOW_SPLIT 0xE135
#define ID_HELP_USING 0xE144
#define ID_HELP 0xE146
/* range for drive bar command ids: 0x9000..0x90FF */
#define ID_DRIVE_FIRST 0x9001
/* winefile extensions */
#define ID_ABOUT_WINE 0x8000
#define ID_LICENSE 0x8001
#define ID_NO_WARRANTY 0x8002
#define ID_WINDOW_AUTOSORT 0x8003
#define ID_VIEW_FULLSCREEN 0x8004
#define ID_PREFERED_SIZES 0x8005
#ifdef __linux__
#define ID_DRIVE_UNIX_FS 0x9000
#endif

View file

@ -0,0 +1,146 @@
/*
* Copyright 2000 Martin Fuchs
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library 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
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#define WIN32_LEAN_AND_MEAN
#define WIN32_EXTRA_LEAN
#define NOSERVICE
#define NOMCX
#define NOIME
#define NOCOMM
#define NOKANJI
#define NORPC
#define NOPROXYSTUB
#define NOIMAGE
#define NOTAPE
#ifdef UNICODE
#define _UNICODE
#include <wchar.h>
#endif
#include <windows.h>
#include <windowsx.h>
#include <commctrl.h>
#include <shellapi.h>
#include <stdlib.h>
#include <stdio.h>
#include <tchar.h>
#include <ctype.h>
#ifdef _MSC_VER
#include <malloc.h> /* for alloca() */
#endif
#ifndef FILE_ATTRIBUTE_NOT_CONTENT_INDEXED
#define FILE_ATTRIBUTE_ENCRYPTED 0x00000040
#define FILE_ATTRIBUTE_SPARSE_FILE 0x00000200
#define FILE_ATTRIBUTE_REPARSE_POINT 0x00000400
#define FILE_ATTRIBUTE_NOT_CONTENT_INDEXED 0x00002000
#endif
#ifdef _DEBUG
#define ASSERT(x) {if (!(x)) DebugBreak();}
#else
#define ASSERT(x) /* nothing */
#endif
#ifdef _MSC_VER
#define LONGLONGARG _T("I64")
#else
#define LONGLONGARG _T("L")
#endif
#define BUFFER_LEN 1024
enum IMAGE {
IMG_NONE=-1, IMG_FILE=0, IMG_DOCUMENT, IMG_EXECUTABLE,
IMG_FOLDER, IMG_OPEN_FOLDER, IMG_FOLDER_PLUS,IMG_OPEN_PLUS, IMG_OPEN_MINUS,
IMG_FOLDER_UP, IMG_FOLDER_CUR
};
#define IMAGE_WIDTH 16
#define IMAGE_HEIGHT 13
#define SPLIT_WIDTH 5
#define IDW_STATUSBAR 0x100
#define IDW_TOOLBAR 0x101
#define IDW_DRIVEBAR 0x102
#define IDW_FIRST_CHILD 0xC000 /*0x200*/
#define IDW_TREE_LEFT 3
#define IDW_TREE_RIGHT 6
#define IDW_HEADER_LEFT 2
#define IDW_HEADER_RIGHT 5
#define WM_DISPATCH_COMMAND 0xBF80
#define COLOR_COMPRESSED RGB(0,0,255)
#define COLOR_SELECTION RGB(0,0,128)
#ifdef _NO_EXTENSIONS
#define COLOR_SPLITBAR WHITE_BRUSH
#else
#define COLOR_SPLITBAR LTGRAY_BRUSH
#endif
#define WINEFILEFRAME _T("WFS_Frame")
#define WINEFILETREE _T("WFS_Tree")
#define WINEFILEDRIVES _T("WFS_Drives")
#define WINEFILEMDICLIENT _T("WFS_MdiClient")
#define FRM_CALC_CLIENT 0xBF83
#define Frame_CalcFrameClient(hwnd, prt) ((BOOL)SNDMSG(hwnd, FRM_CALC_CLIENT, 0, (LPARAM)(PRECT)prt))
typedef struct
{
HANDLE hInstance;
HACCEL haccel;
ATOM hframeClass;
HWND hMainWnd;
HMENU hMenuFrame;
HMENU hWindowsMenu;
HMENU hLanguageMenu;
HMENU hMenuView;
HMENU hMenuOptions;
HWND hmdiclient;
HWND hstatusbar;
HWND htoolbar;
HWND hdrivebar;
HFONT hfont;
TCHAR num_sep;
SIZE spaceSize;
HIMAGELIST himl;
TCHAR drives[BUFFER_LEN];
BOOL prescan_node; /*TODO*/
UINT wStringTableOffset;
} WINEFILE_GLOBALS;
extern WINEFILE_GLOBALS Globals;
#ifdef UNICODE
extern void _wsplitpath(const WCHAR* path, WCHAR* drv, WCHAR* dir, WCHAR* name, WCHAR* ext);
#else
extern void _splitpath(const CHAR* path, CHAR* drv, CHAR* dir, CHAR* name, CHAR* ext);
#endif

View file

@ -0,0 +1,52 @@
/*
* Copyright 2000 Martin Fuchs
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library 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
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include "windows.h"
static const CHAR LicenseCaption[] = "LICENSE";
static const CHAR License[] =
"This library is free software; you can redistribute it and/or "
"modify it under the terms of the GNU Lesser General Public "
"License as published by the Free Software Foundation; either "
"version 2.1 of the License, or (at your option) any later version.\n"
"This library 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 "
"Lesser General Public License for more details.\n"
"You should have received a copy of the GNU Lesser General Public "
"License along with this library; if not, write to the Free Software "
"Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA";
static const CHAR NoWarrantyCaption[] = "NO WARRANTY";
static const CHAR NoWarranty[] =
"This library 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 "
"Lesser General Public License for more details.";
VOID WineLicense(HWND hwnd)
{
MessageBoxA(hwnd, License, LicenseCaption, MB_ICONINFORMATION|MB_OK);
}
VOID WineWarranty(HWND hwnd)
{
MessageBoxA(hwnd, NoWarranty, NoWarrantyCaption, MB_ICONEXCLAMATION|MB_OK);
}

View file

@ -1,17 +1,43 @@
#
# ReactOS winfile
#
# Makefile
#
PATH_TO_TOP = ../../..
TARGET_TYPE = program
TARGET_APPTYPE = windows
TARGET_SDKLIBS = gdi32.a
TARGET_NAME = explorer
TARGET_CFLAGS = -fexceptions -O2 -DNDEBUG -DWIN32 -DUNICODE -D_ROS_ -W
TARGET_RCFLAGS = -DNDEBUG -DWIN32 -DUNICODE -D_ROS_
WINE_MODE = yes
WINE_RC = $(TARGET_NAME)
WINE_INCLUDE = ./
TARGET_GCCLIBS = comctl32
TARGET_SDKLIBS = \
kernel32.a \
user32.a \
gdi32.a \
advapi32.a \
version.a \
TARGET_OBJECTS = \
desktop.o \
ex_bar.o \
startup.o
license.o \
splitpath.o \
startup.o \
winefile.o
include $(PATH_TO_TOP)/rules.mak

Binary file not shown.

After

Width:  |  Height:  |  Size: 742 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 958 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 766 B

View file

@ -0,0 +1,289 @@
/*
* Copyright 2000 Martin Fuchs
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library 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
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
IDA_WINEFILE ACCELERATORS DISCARDABLE
{
// VK_F1, ID_HELP, VIRTKEY, NOINVERT
// VK_F5, ID_REFRESH, VIRTKEY, NOINVERT
// VK_RETURN, ID_ACTIVATE, VIRTKEY, NOINVERT
#ifndef _NO_EXTENSIONS
"X", ID_FILE_EXIT, VIRTKEY, ALT, NOINVERT
"S", ID_VIEW_FULLSCREEN, VIRTKEY, SHIFT, CONTROL, NOINVERT
// VK_ADD, ID_PREFERED_SIZES, VIRTKEY, CONTROL, NOINVERT
#endif
}
IDI_WINEFILE ICON DISCARDABLE
#ifdef _WIN32
"res/winefile.ico"
#else
{
'00 00 01 00 01 00 20 20 10 00 00 00 00 00 E8 02'
'00 00 16 00 00 00 28 00 00 00 20 00 00 00 40 00'
'00 00 01 00 04 00 00 00 00 00 80 02 00 00 00 00'
'00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
'00 00 00 00 80 00 00 80 00 00 00 80 80 00 80 00'
'00 00 80 00 80 00 80 80 00 00 C0 C0 C0 00 80 80'
'80 00 00 00 FF 00 00 FF 00 00 00 FF FF 00 FF 00'
'00 00 FF 00 FF 00 FF FF 00 00 FF FF FF 00 00 00'
'00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
'00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 B7'
'B7 B7 B7 B7 B7 B7 B7 70 00 00 00 00 00 00 00 70'
'00 00 00 00 00 00 0B 73 00 00 00 00 00 00 00 B3'
'F7 B7 B7 B7 B7 B7 07 73 30 00 00 00 00 00 00 73'
'FB 7B 7B 7B 7B 7B 0B 73 33 00 00 00 00 00 00 B3'
'F7 BF FF FF F7 B7 07 73 33 00 00 00 00 00 00 73'
'FB 70 33 33 0B 7B 0B 73 33 00 0F FF FF 00 00 B3'
'F7 B0 33 33 07 B7 07 73 33 00 F0 00 00 F0 00 73'
'FB 70 00 00 0B 7B 0B 73 33 00 00 00 00 00 00 B3'
'F7 B7 B7 B7 B7 B7 07 73 33 00 00 00 00 00 00 73'
'FF FF FF FF FF FF 0B 73 33 00 00 02 00 00 00 B3'
'33 33 33 33 33 33 07 73 33 00 00 09 00 00 00 7B'
'7B 7B 7B 7B 7B 7B 7B 73 33 00 00 99 90 00 00 B0'
'00 00 00 00 00 00 07 73 33 00 0B BB BB 00 00 73'
'FB 7B 7B 7B 7B 7B 0B 73 33 00 BB BB BB B0 00 B3'
'F7 B7 B7 B7 B7 B7 07 73 33 00 00 00 E0 00 00 73'
'FB 7F FF FF FB 7B 0B 73 33 00 00 00 0E 00 00 B3'
'F7 B0 33 33 07 B7 07 73 33 00 00 00 00 00 00 73'
'FB 70 33 33 0B 7B 0B 73 33 00 00 00 00 00 00 B3'
'F7 B0 00 00 07 B7 07 73 33 00 00 00 00 00 00 73'
'FB 7B 7B 7B 7B 7B 0B 73 33 00 00 00 00 00 00 B3'
'FF FF FF FF FF FF 07 73 33 00 00 00 00 00 00 73'
'33 33 33 33 33 33 0B 73 33 00 00 00 00 00 00 B7'
'B7 B7 B7 B7 B7 B7 B7 73 33 00 00 00 00 00 00 FF'
'FF FF FF FF FF FF FF F3 33 00 00 00 00 00 00 07'
'B7 B7 B7 B7 B7 B7 B7 BF 33 00 00 00 00 00 00 00'
'7B 7B 7B 7B 7B 7B 7B 7B F3 00 00 00 00 00 00 00'
'07 B7 B7 B7 B7 B7 B7 B7 BF 00 00 00 00 00 00 00'
'00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
'00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
'00 00 00 00 00 00 00 00 00 00 00 00 00 00 FF FF'
'FF FF 80 00 1F FF 80 00 0F FF 80 00 07 FF 80 00'
'03 FF 80 00 01 FF 80 00 01 FF 80 00 01 83 80 00'
'01 39 80 00 01 C7 80 00 01 EF 80 00 01 EF 80 00'
'01 EF 80 00 01 C7 80 00 01 83 80 00 01 01 80 00'
'01 F7 80 00 01 FB 80 00 01 FF 80 00 01 FF 80 00'
'01 FF 80 00 01 FF 80 00 01 FF 80 00 01 FF 80 00'
'01 FF 80 00 01 FF C0 00 01 FF E0 00 01 FF F0 00'
'01 FF F8 00 01 FF FF FF FF FF FF FF FF FF'
}
#endif
IDB_TOOLBAR BITMAP DISCARDABLE
#ifdef _WIN32
"res/toolbar.bmp"
#else
{
'42 4D BE 03 00 00 00 00 00 00 76 00 00 00 28 00'
'00 00 70 00 00 00 0F 00 00 00 01 00 04 00 00 00'
'00 00 48 03 00 00 00 00 00 00 00 00 00 00 00 00'
'00 00 00 00 00 00 00 00 00 00 00 00 80 00 00 80'
'00 00 00 80 80 00 80 00 00 00 80 00 80 00 80 80'
'00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
'00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
'00 00 FF FF FF 00 77 77 77 88 88 88 88 88 77 77'
'77 77 77 77 77 77 77 88 88 88 88 88 88 87 77 88'
'88 88 88 88 88 87 77 88 88 88 88 88 88 88 78 88'
'88 88 88 88 88 87 77 77 77 07 07 07 07 07 77 77'
'74 44 44 44 44 48 77 77 77 88 88 88 88 88 74 44'
'44 44 44 44 44 87 74 44 44 44 44 44 44 87 74 44'
'44 44 44 44 44 48 44 44 44 44 44 44 44 87 77 77'
'77 77 77 77 77 70 77 77 74 FF FF FF FF 48 77 77'
'74 44 44 44 44 48 74 FF FF FF FF FF F4 87 74 FF'
'FF F4 FF FF F4 87 74 FF FF F4 FF FF FF 48 4F FF'
'FF 4F FF FF F4 87 07 07 07 07 77 77 77 77 77 77'
'74 FF FF FF FF 48 77 77 74 FF FF FF FF 48 74 FF'
'FF FF FF FF F4 87 74 FF FF F4 FF FF F4 87 74 FF'
'FF F4 FF FF FF 48 4F FF FF 44 44 44 44 87 77 77'
'77 77 77 77 77 70 77 88 88 88 88 88 FF 48 77 77'
'84 FF FF FF FF 48 74 FF FF FF FF FF F4 87 74 FF'
'FF F4 FF FF F4 87 74 FF FF F4 44 44 44 48 4F FF'
'FF 44 44 44 44 87 07 77 77 07 77 77 77 77 74 44'
'8B 44 44 48 44 48 77 74 44 FF FF FF FF 48 74 44'
'44 44 44 44 44 87 74 FF FF F4 FF FF F4 87 74 FF'
'FF F4 44 44 44 48 4F FF FF 4F FF 4F F4 87 77 77'
'77 70 70 70 70 70 7B FF 8B FF FF 48 44 47 77 74'
'F4 44 44 44 44 48 74 44 44 44 44 44 44 87 74 FF'
'FF F4 FF FF F4 87 74 FF FF F4 FF F4 FF 48 44 44'
'44 44 44 44 44 87 07 77 77 07 07 07 07 07 78 B8'
'8B F8 BF 48 77 77 77 84 F4 44 44 44 44 47 74 44'
'44 44 44 44 44 87 74 FF FF F4 FF FF F4 87 74 44'
'44 44 FF F4 FF 48 44 44 44 44 44 44 44 77 70 70'
'70 70 70 77 77 77 74 8B 8B 8B FF 48 88 87 74 44'
'FF FF FF FF 48 77 74 FF FF FF FF FF F4 87 74 FF'
'FF F4 FF FF F4 87 74 44 44 44 FF F4 FF 48 77 77'
'77 77 77 77 77 77 00 F7 07 07 07 70 70 77 7B B8'
'BB B4 44 48 44 87 74 F4 44 44 44 44 48 77 74 FF'
'FF FF FF FF F4 87 74 FF FF F4 FF FF F4 87 74 FF'
'FF F4 FF F4 FF 48 7C CC 77 CC 77 C7 7C 77 00 F7'
'78 87 77 77 77 07 74 88 BB B4 44 44 F4 87 74 F4'
'44 44 44 44 47 77 74 FF FF FF FF FF F4 87 74 FF'
'FF F4 FF FF F4 87 74 FF FF F4 FF F4 FF 48 C7 7C'
'7C 7C 7C 77 C7 C7 70 0F 00 F7 77 77 77 77 77 8B'
'8B 8B FF FF F4 87 74 FF FF FF FF 48 77 77 74 44'
'44 44 44 44 44 87 74 44 44 44 44 44 44 87 74 FF'
'FF F4 FF F4 FF 48 7C CC 7C 7C 7C 77 C7 C7 77 08'
'07 77 77 77 77 07 78 B7 8B FF FF FF F4 87 74 44'
'44 44 44 48 77 77 74 44 44 44 44 44 44 87 74 44'
'44 44 44 44 44 87 74 44 44 44 44 44 44 48 77 7C'
'7C 7C 7C 77 C7 C7 77 80 0F 77 77 77 77 77 7B 77'
'8B 44 8B 44 44 87 74 44 44 44 44 47 77 77 74 44'
'44 44 44 44 44 77 74 44 44 44 44 44 44 77 74 44'
'44 44 44 44 44 47 7C C7 7C 7C 7C C7 7C 77 80 07'
'70 F7 07 07 07 07 77 77 8B 44 54 44 44 77 77 77'
'77 77 77 77 77 77 77 77 77 77 77 77 77 77 77 77'
'77 77 77 77 77 77 77 77 77 77 77 77 77 77 77 77'
'77 77 7C 77 77 77 08 77 70 00 70 70 70 77'
}
#endif
IDB_DRIVEBAR BITMAP DISCARDABLE
#ifdef _WIN32
"res/drivebar.bmp"
#else
{
'42 4D E6 02 00 00 00 00 00 00 76 00 00 00 28 00'
'00 00 60 00 00 00 0D 00 00 00 01 00 04 00 00 00'
'00 00 70 02 00 00 00 00 00 00 00 00 00 00 00 00'
'00 00 00 00 00 00 00 00 00 00 00 00 80 00 00 80'
'00 00 00 80 80 00 80 00 00 00 80 00 80 00 80 80'
'00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
'00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
'00 00 FF FF FF 00 77 77 77 77 77 77 77 77 77 77'
'77 77 77 77 77 77 77 77 77 77 77 77 77 77 77 77'
'77 77 77 77 77 77 77 77 77 77 77 77 77 77 77 77'
'77 77 77 77 77 77 77 77 77 77 77 77 77 77 77 77'
'77 77 77 77 77 77 77 77 77 77 77 77 77 77 77 77'
'77 77 77 77 77 77 77 77 77 77 77 77 77 77 77 77'
'77 77 77 77 77 77 00 00 00 00 00 00 00 00 00 00'
'00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
'00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
'00 00 00 00 00 00 08 88 88 88 88 88 88 80 08 88'
'88 88 88 88 88 80 08 88 88 88 88 88 88 80 08 88'
'88 88 88 88 88 80 08 88 88 88 88 88 88 80 08 88'
'88 88 88 88 88 80 07 70 07 77 77 70 00 80 0F 77'
'77 77 77 77 77 80 0F 00 77 77 77 77 77 80 0F 77'
'77 77 77 79 97 80 0F 77 70 00 77 77 77 80 0F 77'
'07 07 07 07 77 80 07 77 70 07 00 00 77 80 0F 77'
'70 00 00 07 77 80 0F 00 00 00 00 00 00 80 0F 77'
'70 00 07 77 77 80 0F 77 77 07 77 77 77 80 0F 70'
'00 00 00 00 77 80 07 77 77 00 00 77 77 80 0F 00'
'00 00 00 00 00 80 0F 77 77 77 77 77 77 80 0F 77'
'07 7F 70 77 77 80 0F 77 70 00 77 77 77 80 0F 70'
'70 70 70 70 77 80 07 70 00 77 70 00 77 80 0F 77'
'70 00 00 07 77 80 0F 00 00 00 00 00 00 80 0F 00'
'87 F8 78 00 77 80 0F 00 00 70 00 00 07 80 0F 70'
'00 00 00 00 77 80 07 07 77 77 77 70 00 80 0F 77'
'77 77 77 77 70 80 0F 77 77 77 77 77 77 80 0F 00'
'00 00 00 00 77 80 0F 77 77 77 77 77 77 80 0F 77'
'07 07 07 07 77 80 07 77 77 77 77 77 77 80 0F FF'
'FF FF FF FF FF 80 0F FF FF FF FF FF FF 80 0F FF'
'FF FF FF FF FF 80 0F FF FF FF FF FF FF 80 0F FF'
'FF FF FF FF FF 80 00 00 00 00 00 00 00 00 00 00'
'00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
'00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
'00 00 00 00 00 00 77 77 77 77 77 77 77 77 77 77'
'77 77 77 77 77 77 77 77 77 77 77 77 77 77 77 77'
'77 77 77 77 77 77 77 77 77 77 77 77 77 77 77 77'
'77 77 77 77 77 77 77 77 77 77 77 77 77 77 77 77'
'77 77 77 77 77 77 77 77 77 77 77 77 77 77 77 77'
'77 77 77 77 77 77 77 77 77 77 77 77 77 77 77 77'
'77 77 77 77 77 77'
}
#endif
IDB_IMAGES BITMAP DISCARDABLE
#ifdef _WIN32
"res/images.bmp"
#else
{
'42 4D 86 04 00 00 00 00 00 00 76 00 00 00 28 00'
'00 00 A0 00 00 00 0D 00 00 00 01 00 04 00 00 00'
'00 00 10 04 00 00 00 00 00 00 00 00 00 00 00 00'
'00 00 00 00 00 00 00 00 00 00 00 00 80 00 00 80'
'00 00 00 80 80 00 80 00 00 00 80 00 80 00 80 80'
'00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
'00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
'00 00 FF FF FF 00 AA AA 00 00 00 00 00 AA AA AA'
'00 00 00 00 00 AA AA 00 00 00 00 00 00 00 AA 00'
'00 00 00 00 00 00 AA A0 00 00 00 00 00 0A AA 00'
'00 00 00 00 00 00 AA A0 00 00 00 00 00 0A AA A0'
'00 00 00 00 00 0A AA AA AA AA AA AA AA AA AA AA'
'AA AA AA AA AA AA AA A7 77 77 77 77 70 AA AA A7'
'77 77 77 77 70 AA A7 77 77 77 77 77 77 70 A7 77'
'77 77 77 77 77 80 AA 77 77 77 77 77 77 0A A7 77'
'77 77 77 77 77 80 AA 77 77 77 77 77 77 0A AA 77'
'77 77 77 77 77 0A AA AA AA AA AA AA AA AA AA AA'
'AA AA AA AA AA AA AA A7 FF FF FF FF 70 AA AA A7'
'FF FF FF FF 70 AA A7 7F 7F 7F 7F 7F 7F 70 A7 FB'
'FB FB FB FB FB 80 AA 7F BF BF BF BF B7 0A A7 FB'
'FB FB FB FB FB 80 AA 7F BF BF BF BF B7 0A AA 7F'
'BF BF BF BF B7 0A AA AA AA 00 00 00 0A AA AA AA'
'AA 00 AA AA AA AA AA A7 FF FF FF FF 70 AA AA A7'
'FF 44 44 FF 70 AA A7 F7 F7 F7 F7 F7 F7 70 A7 FF'
'BF BF BF BF BF 80 A7 FB FB FB FB FB F0 8A A7 FF'
'BF B0 BF BF BF 80 A7 FB FB F0 FB FB F0 8A A7 FB'
'FB FB FB FB F0 8A AA AA A0 E6 68 86 0A AA AA AA'
'A0 E8 0A AA AA AA AA A7 FF FF FF FF 70 AA AA A7'
'FF FF FF FF 70 AA A7 7F 7F 7F 7F 7F 7F 70 A7 FB'
'FB FB FB FB FB 80 A7 BF BF BF BF BF 70 8A A7 FB'
'FB F0 FB FB FB 80 A7 BF B0 00 0F BF 70 8A A7 BF'
'B0 00 0F BF 70 8A AA AA A0 E0 00 00 AA AA AA AA'
'A0 E8 0A AA AA AA AA A7 FF FF FF FF 70 AA AA A7'
'FF 44 44 FF 70 AA A7 F7 F7 F7 F7 F7 F7 70 A7 FF'
'BF BF BF BF BF 80 7B FB FB FB FB FB 88 8A A7 FF'
'B0 00 00 BF BF 80 7B FB FB 0B FB FB 88 8A 7B FB'
'FB FB FB FB 88 8A AA AA A0 E0 AA AA AA AA AA AA'
'AA 00 AA AA AA AA AA A7 FF FF FF FF 70 AA AA A7'
'FF FF FF FF 70 AA A7 7F 7F 7F 7F 7F 7F 70 A7 FB'
'FB FB FB FB FB 80 7F FF FF FF FF F7 0F 8A A7 FB'
'FB F0 FB FB FB 80 7F FF FF FF FF F7 0F 8A 7F FF'
'FF FF FF F7 0F 8A AA AA A0 E0 AA AA AA AA AA AA'
'AA AA AA AA AA AA AA A7 FF FF FF FF 70 AA AA A7'
'FF 44 44 FF 70 AA A7 F7 F7 F7 F7 F7 F7 70 A7 FF'
'BF BF BF BF BF 80 77 77 77 77 77 78 FB 8A A7 FF'
'BF B0 BF BF BF 80 77 77 77 77 77 78 FB 8A 77 77'
'77 77 77 78 FB 8A AA A0 00 E0 00 AA AA AA AA AA'
'AA AA AA AA AA AA AA A7 FF FF FF FF 70 AA AA A7'
'FF FF FF FF 70 AA A7 7F 7F 7F 7F 7F 7F 70 A7 FB'
'FB FB FB FB FB 80 A7 BF BF BF BF BF BF 8A A7 FB'
'FB FB FB FB FB 80 A7 BF BF BF BF BF BF 8A A7 BF'
'BF BF BF BF BF 8A AA A0 E6 66 60 AA AA AA AA AA'
'AA AA AA AA AA AA AA A7 FF FF F7 77 7A AA AA A7'
'FF 44 F7 77 7A AA A7 F7 F7 F7 F7 F7 F7 70 A7 FF'
'FF FF FF FF FF 80 A7 FB FB FB FF FF FF 8A A7 FF'
'FF FF FF FF FF 80 A7 FB FB FB FF FF FF 8A A7 FB'
'FB FB FF FF FF 8A AA AA 0E 66 0A AA AA AA AA AA'
'AA AA AA AA AA AA AA A7 FF FF F7 F7 AA AA AA A7'
'FF FF F7 F7 AA AA A7 77 77 77 77 77 77 70 A7 FB'
'FB FB F7 77 77 8A A7 BF BF BF F7 77 77 8A A7 FB'
'FB FB F7 77 77 8A A7 BF BF BF F7 77 77 8A A7 BF'
'BF BF F7 77 77 8A AA AA A0 E0 AA AA AA AA AA AA'
'AA AA AA AA AA AA AA A7 FF FF F7 7A AA AA AA A7'
'FF FF F7 7A AA AA A7 EE EE EE EE EE EE 70 AA 7F'
'BF BF 7A AA AA AA AA 7F FF FF 7A AA AA AA AA 7F'
'BF BF 7A AA AA AA AA 7F FF FF 7A AA AA AA AA 7F'
'FF FF 7A AA AA AA AA AA AA 0A AA AA AA AA AA AA'
'AA AA AA AA AA AA AA A7 77 77 77 AA AA AA AA A7'
'77 77 77 AA AA AA A7 77 77 77 77 77 77 7A AA A7'
'77 77 AA AA AA AA AA A7 77 77 AA AA AA AA AA A7'
'77 77 AA AA AA AA AA A7 77 77 AA AA AA AA AA A7'
'77 77 AA AA AA AA AA AA AA AA AA AA AA AA AA AA'
'AA AA AA AA AA AA'
}
#endif

View file

@ -0,0 +1,151 @@
/*
* Copyright 2000 Martin Fuchs
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library 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
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include "include/winefile.h"
#ifdef UNICODE
void _wsplitpath(const WCHAR* path, WCHAR* drv, WCHAR* dir, WCHAR* name, WCHAR* ext)
{
const WCHAR* end; /* end of processed string */
const WCHAR* p; /* search pointer */
const WCHAR* s; /* copy pointer */
/* extract drive name */
if (path[0] && path[1]==':') {
if (drv) {
*drv++ = *path++;
*drv++ = *path++;
*drv = L'\0';
}
} else if (drv)
*drv = L'\0';
/* search for end of string or stream separator */
for(end=path; *end && *end!=L':'; )
end++;
/* search for begin of file extension */
for(p=end; p>path && *--p!=L'\\' && *p!=L'/'; )
if (*p == L'.') {
end = p;
break;
}
if (ext)
for(s=end; *ext=*s++; )
ext++;
/* search for end of directory name */
for(p=end; p>path; )
if (*--p=='\\' || *p=='/') {
p++;
break;
}
if (name) {
for(s=p; s<end; )
*name++ = *s++;
*name = L'\0';
}
if (dir) {
for(s=path; s<p; )
*dir++ = *s++;
*dir = L'\0';
}
}
#else
void _splitpath(const CHAR* path, CHAR* drv, CHAR* dir, CHAR* name, CHAR* ext)
{
const CHAR* end; /* end of processed string */
const CHAR* p; /* search pointer */
const CHAR* s; /* copy pointer */
/* extract drive name */
if (path[0] && path[1]==':') {
if (drv) {
*drv++ = *path++;
*drv++ = *path++;
*drv = '\0';
}
} else if (drv)
*drv = '\0';
/* search for end of string or stream separator */
for(end=path; *end && *end!=':'; )
end++;
/* search for begin of file extension */
for(p=end; p>path && *--p!='\\' && *p!='/'; )
if (*p == '.') {
end = p;
break;
}
if (ext)
for(s=end; (*ext=*s++); )
ext++;
/* search for end of directory name */
for(p=end; p>path; )
if (*--p=='\\' || *p=='/') {
p++;
break;
}
if (name) {
for(s=p; s<end; )
*name++ = *s++;
*name = '\0';
}
if (dir) {
for(s=path; s<p; )
*dir++ = *s++;
*dir = '\0';
}
}
#endif
/*
void main() // test splipath()
{
TCHAR drv[_MAX_DRIVE+1], dir[_MAX_DIR], name[_MAX_FNAME], ext[_MAX_EXT];
_tsplitpath(L"x\\y", drv, dir, name, ext);
_tsplitpath(L"x\\", drv, dir, name, ext);
_tsplitpath(L"\\x", drv, dir, name, ext);
_tsplitpath(L"x", drv, dir, name, ext);
_tsplitpath(L"", drv, dir, name, ext);
_tsplitpath(L".x", drv, dir, name, ext);
_tsplitpath(L":x", drv, dir, name, ext);
_tsplitpath(L"a:x", drv, dir, name, ext);
_tsplitpath(L"a.b:x", drv, dir, name, ext);
_tsplitpath(L"W:\\/\\abc/Z:~", drv, dir, name, ext);
_tsplitpath(L"abc.EFGH:12345", drv, dir, name, ext);
_tsplitpath(L"C:/dos/command.com", drv, dir, name, ext);
}
*/

View file

@ -58,7 +58,7 @@
static BOOL GetLine( HANDLE hFile, char *buf, size_t buflen )
{
int i=0;
size_t i=0;
buf[0]='\0';
do
@ -327,9 +327,9 @@ static BOOL ProcessRunKeys( HKEY hkRoot, LPCWSTR szKeyName, BOOL bDelete,
WCHAR *szValue=NULL;
if (hkRoot==HKEY_LOCAL_MACHINE)
printf("processing %s entries under HKLM\n"); //,wine_dbgstr_w(szKeyName) );
wprintf(L"processing %s entries under HKLM\n", szKeyName);
else
printf("processing %s entries under HKCU\n"); //,wine_dbgstr_w(szKeyName) );
wprintf(L"processing %s entries under HKCU\n", szKeyName);
if( (res=RegOpenKeyExW( hkRoot, WINKEY_NAME, 0, KEY_READ, &hkWin ))!=ERROR_SUCCESS )
{
@ -517,5 +517,5 @@ int startup( int argc, char *argv[] )
printf("Operation done\n");
//return res?0:101;
return res?0:101;
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,29 @@
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "WineFile"=.\WineFile.dsp - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################

View file

@ -0,0 +1,31 @@
/*
* Copyright 2000 Martin Fuchs
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library 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
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include "windows.h"
#include "include/resource.h"
/* define language neutral resources */
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
#include "resource.rc"
/* include localised resources */
#include "De.rc"
#include "En.rc"