Sync to Wine-20050930:
Michael Jung <mjung@iss.tu-darmstadt.de>
- Don't clone pidlLast in SHBindToParent.
- Pass correct pointer to SHFree in case of failure in
  UNIXFS_path_to_pidl.
- Return E_FAIL if we can't get the unix path in
  IPersistFolder3::InitializeEx.
- Return E_NOAGGREGATION if non-NULL pUnkOuter is given to the
  constructor.
Alexandre Julliard <julliard@winehq.org>
- We are no longer generating .spec.c files.
- Generate 16-bit spec files as assembly code too.
- Use a more portable scheme for storing the name of a critical
  section.
- Removed unused debug channels.
- Specify 64-bit integers as double instead of long long in spec files
  so that we get the correct number of arguments.
- We are no longer generating .dbg.c files.
Milko Krachounov <milko@3mhz.net>
- Bulgarian resources for mpr, msi, user, commdlg, oleaut32, shdocvw,
  shell32, comctl32, msrle32, mshtml, winspool, wineps, serialui,
  setupapi, wininet, regedit, uninstaller, notepad, winecfg and
  winhelp.
Kevin Koltzau <kevin@plop.org>
- Fix warnings in 64bit.
Dmitry Timoshkov <dmitry@codeweavers.com>
- Stop using a not initialized variable szTemp in
  _dbg_ILSimpleGetText, make _dbg_ILSimpleGetText return no value since
  nobody is using it.
- Stop dereferencing a possible NULL in pdump since
  _dbg_ILGetDataPointer can potentially return NULL (for instance for
  root or desktop pidl).
- Make shdebugstr_guid use standard wine_dbg_sprintf instead of the
  handmade solution.
- Translate file name from unix to ANSI encoding in
  UnixFolder_IShellFolder2_GetDisplayNameOf.
- Pass a locally modified version of SHELLEXECUTEINFO to
  IShellExecuteHookW_Execute, this should pass through at least
  sei_tmp.nShow retrieved from an .lnk file (fStartup).
Alexander N. Sørnes <alex@thehandofagony.com>
- Added Norwegian translation of comctl32 and shell32.
Kimmo Myllyvirta <kimmo.myllyvirta@gmail.com>
- Update Finnish resources.
Modified: trunk/reactos/lib/shell32/Makefile.in
Modified: trunk/reactos/lib/shell32/brsfolder.c
Modified: trunk/reactos/lib/shell32/changenotify.c
Modified: trunk/reactos/lib/shell32/control.c
Modified: trunk/reactos/lib/shell32/dde.c
Modified: trunk/reactos/lib/shell32/debughlp.c
Modified: trunk/reactos/lib/shell32/iconcache.c
Modified: trunk/reactos/lib/shell32/pidl.c
Modified: trunk/reactos/lib/shell32/shell.c
Modified: trunk/reactos/lib/shell32/shell32.spec
Added: trunk/reactos/lib/shell32/shell32_Bg.rc
Modified: trunk/reactos/lib/shell32/shell32_Fi.rc
Modified: trunk/reactos/lib/shell32/shell32_No.rc
Modified: trunk/reactos/lib/shell32/shell32_main.c
Modified: trunk/reactos/lib/shell32/shelllink.c
Modified: trunk/reactos/lib/shell32/shellord.c
Modified: trunk/reactos/lib/shell32/shellpath.c
Modified: trunk/reactos/lib/shell32/shlexec.c
Modified: trunk/reactos/lib/shell32/shlmenu.c
Modified: trunk/reactos/lib/shell32/shres.rc
Modified: trunk/reactos/lib/shell32/shv_bg_cmenu.c
Modified: trunk/reactos/lib/shell32/shv_item_cmenu.c

Modified: trunk/reactos/lib/shell32/Makefile.in
--- trunk/reactos/lib/shell32/Makefile.in	2005-10-08 17:26:40 UTC (rev 18347)
+++ trunk/reactos/lib/shell32/Makefile.in	2005-10-08 17:41:41 UTC (rev 18348)
@@ -81,8 +81,8 @@
 version16.res: version16.rc
 	$(LDPATH) $(RC16) $(RC16FLAGS) -fo$@ $(SRCDIR)/version16.rc
 
-shell.spec.c: shell.spec version16.res
-	$(WINEBUILD) $(DEFS) $(DLLFLAGS) --dll -o $@ --main-module $(MODULE) --res version16.res --export $(SRCDIR)/shell.spec
+shell.spec.o: shell.spec version16.res
+	$(WINEBUILD) $(WINEBUILDFLAGS) --dll -o $@ --main-module $(MODULE) --res version16.res --export $(SRCDIR)/shell.spec
 
 authors.c: $(TOPSRCDIR)/AUTHORS
 	(LC_ALL=C; export LC_ALL; echo 'const char * const SHELL_Authors[] = {' && \

Modified: trunk/reactos/lib/shell32/brsfolder.c
--- trunk/reactos/lib/shell32/brsfolder.c	2005-10-08 17:26:40 UTC (rev 18347)
+++ trunk/reactos/lib/shell32/brsfolder.c	2005-10-08 17:41:41 UTC (rev 18348)
@@ -316,7 +316,7 @@
 	HRESULT		hr;
 	HWND		hwnd = GetParent( info->hwndTreeView );
 
-	TRACE("%p %p %x %p\n",lpsf, pidl, (INT)hParent, lpe);
+	TRACE("%p %p %p %p\n",lpsf, pidl, hParent, lpe);
 
 	/* No IEnumIDList -> No children */
 	if (!lpe) return;

Modified: trunk/reactos/lib/shell32/changenotify.c
--- trunk/reactos/lib/shell32/changenotify.c	2005-10-08 17:26:40 UTC (rev 18347)
+++ trunk/reactos/lib/shell32/changenotify.c	2005-10-08 17:41:41 UTC (rev 18348)
@@ -36,7 +36,7 @@
 {
     0, 0, &SHELL32_ChangenotifyCS,
     { &critsect_debug.ProcessLocksList, &critsect_debug.ProcessLocksList },
-      0, 0, { 0, (DWORD)(__FILE__ ": SHELL32_ChangenotifyCS") }
+      0, 0, { (DWORD_PTR)(__FILE__ ": SHELL32_ChangenotifyCS") }
 };
 static CRITICAL_SECTION SHELL32_ChangenotifyCS = { &critsect_debug, -1, 0, 0, 0, 0 };
 

Modified: trunk/reactos/lib/shell32/control.c
--- trunk/reactos/lib/shell32/control.c	2005-10-08 17:26:40 UTC (rev 18347)
+++ trunk/reactos/lib/shell32/control.c	2005-10-08 17:41:41 UTC (rev 18348)
@@ -153,7 +153,7 @@
 {
    CPanel*	panel = (CPanel*)cs->lpCreateParams;
 
-   SetWindowLongA(hWnd, 0, (LPARAM)panel);
+   SetWindowLongPtrA(hWnd, 0, (LONG_PTR)panel);
    panel->status = 0;
    panel->hWnd = hWnd;
 }
@@ -244,7 +244,7 @@
 static LRESULT WINAPI	Control_WndProc(HWND hWnd, UINT wMsg,
 					WPARAM lParam1, LPARAM lParam2)
 {
-   CPanel*	panel = (CPanel*)GetWindowLongA(hWnd, 0);
+   CPanel*	panel = (CPanel*)GetWindowLongPtrA(hWnd, 0);
 
    if (panel || wMsg == WM_CREATE) {
       switch (wMsg) {

Modified: trunk/reactos/lib/shell32/dde.c
--- trunk/reactos/lib/shell32/dde.c	2005-10-08 17:26:40 UTC (rev 18347)
+++ trunk/reactos/lib/shell32/dde.c	2005-10-08 17:41:41 UTC (rev 18348)
@@ -104,16 +104,16 @@
     switch (uType)
     {
     case XTYP_CONNECT:
-        return (HDDEDATA)Dde_OnConnect(hsz1, hsz2);
+        return (HDDEDATA)(DWORD_PTR)Dde_OnConnect(hsz1, hsz2);
     case XTYP_CONNECT_CONFIRM:
         Dde_OnConnectConfirm(hconv, hsz1, hsz2);
         return NULL;
     case XTYP_WILDCONNECT:
-        return (HDDEDATA)Dde_OnWildConnect(hsz1, hsz2);
+        return (HDDEDATA)(DWORD_PTR)Dde_OnWildConnect(hsz1, hsz2);
     case XTYP_REQUEST:
         return (HDDEDATA)Dde_OnRequest(uFmt, hconv, hsz1, hsz2);
     case XTYP_EXECUTE:
-        return (HDDEDATA)Dde_OnExecute(hconv, hsz1, hdata);
+        return (HDDEDATA)(DWORD_PTR)Dde_OnExecute(hconv, hsz1, hdata);
     case XTYP_DISCONNECT:
         Dde_OnDisconnect(hconv);
         return NULL;

Modified: trunk/reactos/lib/shell32/debughlp.c
--- trunk/reactos/lib/shell32/debughlp.c	2005-10-08 17:26:40 UTC (rev 18347)
+++ trunk/reactos/lib/shell32/debughlp.c	2005-10-08 17:41:41 UTC (rev 18348)
@@ -144,14 +144,12 @@
 }
 
 static
-DWORD _dbg_ILSimpleGetText (LPCITEMIDLIST pidl, LPSTR szOut, UINT uOutSize)
+void _dbg_ILSimpleGetText (LPCITEMIDLIST pidl, LPSTR szOut, UINT uOutSize)
 {
-	DWORD		dwReturn=0;
 	LPSTR		szSrc;
 	GUID const * 	riid;
-	char szTemp[MAX_PATH];
 
-	if (!pidl) return 0;
+	if (!pidl) return;
 
 	if (szOut)
 	  *szOut = 0;
@@ -160,13 +158,11 @@
 	{
 	 /* desktop */
 	  if (szOut) lstrcpynA(szOut, "Desktop", uOutSize);
-	  dwReturn = strlen ("Desktop");
 	}
 	else if (( szSrc = _dbg_ILGetTextPointer(pidl) ))
 	{
 	  /* filesystem */
 	  if (szOut) lstrcpynA(szOut, szSrc, uOutSize);
-	  dwReturn = strlen(szSrc);
 	}
 	else if (( riid = _dbg_ILGetGUIDPointer(pidl) ))
 	{
@@ -175,9 +171,7 @@
                  riid->Data1, riid->Data2, riid->Data3,
                  riid->Data4[0], riid->Data4[1], riid->Data4[2], riid->Data4[3],
                  riid->Data4[4], riid->Data4[5], riid->Data4[6], riid->Data4[7] );
-	  dwReturn = strlen (szTemp);
 	}
-	return dwReturn;
 }
 
 
@@ -202,17 +196,18 @@
 	    {
 	      DWORD dwAttrib = 0;
 	      LPPIDLDATA pData   = _dbg_ILGetDataPointer(pidltemp);
-	      DWORD type         = pData->type;
+	      DWORD type = pData ? pData->type : 0;
 	      LPSTR szLongName   = _dbg_ILGetTextPointer(pidltemp);
 	      LPSTR szShortName  = _dbg_ILGetSTextPointer(pidltemp);
 	      char szName[MAX_PATH];
 
 	      _dbg_ILSimpleGetText(pidltemp, szName, MAX_PATH);
-	      if( PT_FOLDER == type || PT_VALUE == type)
+	      if ( pData && (PT_FOLDER == type || PT_VALUE == type) )
 	        dwAttrib = pData->u.file.uFileAttribs;
 
-	      MESSAGE ("[%p] size=%04u type=%lx attr=0x%08lx name=\"%s\" (%s,%s)\n",
-	               pidltemp, pidltemp->mkid.cb,type,dwAttrib,szName,debugstr_a(szLongName), debugstr_a(szShortName));
+	      MESSAGE ("[%p] size=%04u type=%lx attr=0x%08lx name=%s (%s,%s)\n",
+	               pidltemp, pidltemp->mkid.cb, type, dwAttrib,
+                       debugstr_a(szName), debugstr_a(szLongName), debugstr_a(szShortName));
 
 	      pidltemp = _dbg_ILGetNext(pidltemp);
 
@@ -290,11 +285,7 @@
     return TRUE;
 }
 
-static char shdebugstr_buf1[100];
-static char shdebugstr_buf2[100];
-static char * shdebugstr_buf = shdebugstr_buf1;
-
-static struct {
+static const struct {
 	REFIID riid;
 	const char *name;
 } InterfaceDesc[] = {
@@ -328,11 +319,8 @@
 	const char* name = NULL;
 	char clsidbuf[100];
 
-	shdebugstr_buf = (shdebugstr_buf == shdebugstr_buf1) ? shdebugstr_buf2 : shdebugstr_buf1;
+	if (!id) return "(null)";
 
-	if (!id) {
-	  strcpy (shdebugstr_buf, "(null)");
-	} else {
 	    for (i=0;InterfaceDesc[i].riid && !name;i++) {
 	        if (IsEqualIID(InterfaceDesc[i].riid, id)) name = InterfaceDesc[i].name;
 	    }
@@ -341,10 +329,8 @@
 		    name = clsidbuf;
 	    }
 
-	    sprintf( shdebugstr_buf, "\n\t{%08lx-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x} (%s)",
+            return wine_dbg_sprintf( "\n\t{%08lx-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x} (%s)",
                  id->Data1, id->Data2, id->Data3,
                  id->Data4[0], id->Data4[1], id->Data4[2], id->Data4[3],
                  id->Data4[4], id->Data4[5], id->Data4[6], id->Data4[7], name ? name : "unknown" );
-	}
-	return shdebugstr_buf;
 }

Modified: trunk/reactos/lib/shell32/iconcache.c
--- trunk/reactos/lib/shell32/iconcache.c	2005-10-08 17:26:40 UTC (rev 18347)
+++ trunk/reactos/lib/shell32/iconcache.c	2005-10-08 17:41:41 UTC (rev 18348)
@@ -67,7 +67,7 @@
 {
     0, 0, &SHELL32_SicCS,
     { &critsect_debug.ProcessLocksList, &critsect_debug.ProcessLocksList },
-      0, 0, { 0, (DWORD)(__FILE__ ": SHELL32_SicCS") }
+      0, 0, { (DWORD_PTR)(__FILE__ ": SHELL32_SicCS") }
 };
 static CRITICAL_SECTION SHELL32_SicCS = { &critsect_debug, -1, 0, 0, 0, 0 };
 

Modified: trunk/reactos/lib/shell32/pidl.c
--- trunk/reactos/lib/shell32/pidl.c	2005-10-08 17:26:40 UTC (rev 18347)
+++ trunk/reactos/lib/shell32/pidl.c	2005-10-08 17:41:41 UTC (rev 18348)
@@ -1278,55 +1278,41 @@
  */
 HRESULT WINAPI SHBindToParent(LPCITEMIDLIST pidl, REFIID riid, LPVOID *ppv, LPCITEMIDLIST *ppidlLast)
 {
-    IShellFolder    * psf;
-    LPITEMIDLIST    pidlChild, pidlParent;
+    IShellFolder    * psfDesktop;
     HRESULT         hr=E_FAIL;
 
     TRACE_(shell)("pidl=%p\n", pidl);
     pdump(pidl);
-
+    
+    if (!pidl || !ppv)
+        return E_INVALIDARG;
+    
     *ppv = NULL;
     if (ppidlLast)
         *ppidlLast = NULL;
 
+    hr = SHGetDesktopFolder(&psfDesktop);
+    if (FAILED(hr))
+        return hr;
+
     if (_ILIsPidlSimple(pidl))
     {
-        IShellFolder* desktop;
-
         /* we are on desktop level */
-        hr = SHGetDesktopFolder(&desktop);
-
-        if (SUCCEEDED(hr))
-        {
-            hr = IShellFolder_QueryInterface(desktop, riid, ppv);
-
-            if (SUCCEEDED(hr) && ppidlLast)
-                *ppidlLast = ILClone(pidl);
-
-            IShellFolder_Release(desktop);
-        }
+        hr = IShellFolder_QueryInterface(psfDesktop, riid, ppv);
     }
     else
     {
-        pidlChild =  ILClone(ILFindLastID(pidl));
-        pidlParent = ILClone(pidl);
+        LPITEMIDLIST pidlParent = ILClone(pidl);
         ILRemoveLastID(pidlParent);
-
-        hr = SHGetDesktopFolder(&psf);
-
-        if (SUCCEEDED(hr))
-            hr = IShellFolder_BindToObject(psf, pidlParent, NULL, riid, ppv);
-
-        if (SUCCEEDED(hr) && ppidlLast)
-            *ppidlLast = pidlChild;
-        else
-            ILFree (pidlChild);
-
+        hr = IShellFolder_BindToObject(psfDesktop, pidlParent, NULL, riid, ppv);
         SHFree (pidlParent);
-        if (psf)
-            IShellFolder_Release(psf);
     }
 
+    IShellFolder_Release(psfDesktop);
+
+    if (SUCCEEDED(hr) && ppidlLast)
+        *ppidlLast = ILFindLastID(pidl);
+
     TRACE_(shell)("-- psf=%p pidl=%p ret=0x%08lx\n", *ppv, (ppidlLast)?*ppidlLast:NULL, hr);
     return hr;
 }

Modified: trunk/reactos/lib/shell32/shell.c
--- trunk/reactos/lib/shell32/shell.c	2005-10-08 17:26:40 UTC (rev 18347)
+++ trunk/reactos/lib/shell32/shell.c	2005-10-08 17:41:41 UTC (rev 18348)
@@ -51,7 +51,6 @@
 #include "wine/debug.h"
 
 WINE_DEFAULT_DEBUG_CHANNEL(shell);
-WINE_DECLARE_DEBUG_CHANNEL(exec);
 
 
 typedef struct {     /* structure for dropped files */

Modified: trunk/reactos/lib/shell32/shell32.spec
--- trunk/reactos/lib/shell32/shell32.spec	2005-10-08 17:26:40 UTC (rev 18347)
+++ trunk/reactos/lib/shell32/shell32.spec	2005-10-08 17:41:41 UTC (rev 18348)
@@ -120,9 +120,9 @@
  127 stdcall -noname SHWinHelp(long long long long)
  129 stdcall -noname DAD_AutoScroll(long ptr ptr)
  130 stdcall -noname DAD_DragEnter(long)
- 131 stdcall -noname DAD_DragEnterEx(long long long)
+ 131 stdcall -noname DAD_DragEnterEx(long double)
  132 stdcall -noname DAD_DragLeave()
- 134 stdcall -noname DAD_DragMove(long long)
+ 134 stdcall -noname DAD_DragMove(double)
  136 stdcall -noname DAD_SetDragImage(long long)
  137 stdcall -noname DAD_ShowDragImage(long)
  139 stub Desktop_UpdateBriefcaseOnEvent

Copied: trunk/reactos/lib/shell32/shell32_Bg.rc (from rev 18347, vendor/wine/dlls/shell32/current/shell32_Bg.rc)
Property changes on: trunk/reactos/lib/shell32/shell32_Bg.rc ___________________________________________________________________ Name: svn:keywords   + Author Date Id Revision Name: svn:eol-style   + native
Modified: trunk/reactos/lib/shell32/shell32_Fi.rc
--- trunk/reactos/lib/shell32/shell32_Fi.rc	2005-10-08 17:26:40 UTC (rev 18347)
+++ trunk/reactos/lib/shell32/shell32_Fi.rc	2005-10-08 17:41:41 UTC (rev 18348)
@@ -1,5 +1,5 @@
 /*
- * Copyright 1998 Juergen Schmied
+ * Copyright 2005 Kimmo Myllyvirta
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -18,9 +18,95 @@
 
 LANGUAGE LANG_FINNISH, SUBLANG_DEFAULT
 
+MENU_001 MENU DISCARDABLE
+BEGIN
+	MENUITEM "&Suuret Kuvakkeet",		FCIDM_SHVIEW_BIGICON
+	MENUITEM "&Pienet Kuvakkeet",		FCIDM_SHVIEW_SMALLICON
+	MENUITEM "&Lista",			FCIDM_SHVIEW_LISTVIEW
+	MENUITEM "&Tiedot",			FCIDM_SHVIEW_REPORTVIEW
+END
+
+/*
+ shellview background menu
+*/
+MENU_002 MENU DISCARDABLE
+BEGIN
+	POPUP ""
+	BEGIN
+	  POPUP "&Nõkymõ"
+	  BEGIN
+	    MENUITEM "&Pienet Kuvakkeet",	FCIDM_SHVIEW_BIGICON
+	    MENUITEM "&Suuret Kuvakkeet",	FCIDM_SHVIEW_SMALLICON
+	    MENUITEM "&Lista",			FCIDM_SHVIEW_LISTVIEW
+	    MENUITEM "&Tiedot",			FCIDM_SHVIEW_REPORTVIEW
+	  END
+	  MENUITEM SEPARATOR
+	  POPUP "&Jõrjestõ Kuvakkeet"
+	  BEGIN
+	    MENUITEM "&Nimen mukaan",		0x30	/* column 0 */
+	    MENUITEM "&Tyypin mukaan",		0x32	/* column 2 */
+	    MENUITEM "&Koon mukaan",		0x31	/* ... */
+	    MENUITEM "&Põivõmõõrõn mukaan",	0x33
+	    MENUITEM SEPARATOR
+	    MENUITEM "Jõrjestõ &Automaattisesti", FCIDM_SHVIEW_AUTOARRANGE
+	  END
+	  MENUITEM "Jõrjestõ kuvakkeet riviin",	FCIDM_SHVIEW_SNAPTOGRID
+	  MENUITEM SEPARATOR
+	  MENUITEM "Põivitõ",			FCIDM_SHVIEW_REFRESH
+	  MENUITEM SEPARATOR
+	  MENUITEM "Liitõ",			FCIDM_SHVIEW_INSERT
+	  MENUITEM "Liitõ Linkiksi",		FCIDM_SHVIEW_INSERTLINK
+	  MENUITEM SEPARATOR
+	  POPUP "Uusi"
+	  BEGIN
+	    MENUITEM "Uusi &Kansio",		FCIDM_SHVIEW_NEWFOLDER
+	    MENUITEM "Uusi &Linkki",		FCIDM_SHVIEW_NEWLINK
+	    MENUITEM SEPARATOR
+	  END
+	  MENUITEM SEPARATOR
+	  MENUITEM "Ominaisuudet",		FCIDM_SHVIEW_PROPERTIES
+	END
+END
+
+/*
+ shellview item menu
+*/
+MENU_SHV_FILE MENU DISCARDABLE
+BEGIN
+	POPUP ""
+	BEGIN
+	  MENUITEM "&Selaa",			FCIDM_SHVIEW_EXPLORE
+	  MENUITEM "&Avaa",			FCIDM_SHVIEW_OPEN
+	  MENUITEM SEPARATOR
+	  MENUITEM "&Leikkaa",			FCIDM_SHVIEW_CUT
+	  MENUITEM "&Kopioi",			FCIDM_SHVIEW_COPY
+	  MENUITEM SEPARATOR
+	  MENUITEM "Lu&o Linkki",		FCIDM_SHVIEW_CREATELINK
+	  MENUITEM "&Poista",			FCIDM_SHVIEW_DELETE
+	  MENUITEM "&Nimeõ Uudelleen",		FCIDM_SHVIEW_RENAME
+	  MENUITEM SEPARATOR
+	  MENUITEM "&Ominaisuudet",		FCIDM_SHVIEW_PROPERTIES
+	END
+END
+
+SHBRSFORFOLDER_MSGBOX DIALOG LOADONCALL MOVEABLE DISCARDABLE 15, 40, 188, 192
+STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU | DS_MODALFRAME | DS_SETFONT | DS_3DLOOK
+CAPTION "Valitse Kansio"
+FONT 8, "MS Shell Dlg"
+{
+ DEFPUSHBUTTON "OK", 1, 80, 176, 50, 12, BS_DEFPUSHBUTTON | WS_GROUP | WS_TABSTOP
+ PUSHBUTTON "Peruuta", 2, 134, 176, 50, 12, WS_GROUP | WS_TABSTOP
+ LTEXT "", IDD_TITLE, 4, 4, 180, 12
+ LTEXT "", IDD_STATUS, 4, 25, 180, 12
+ CONTROL "", IDD_TREEVIEW, "SysTreeView32",
+ 	TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT |
+	WS_BORDER | WS_TABSTOP,
+	4, 40, 180, 120
+}
+
 SHELL_ABOUT_MSGBOX DIALOG LOADONCALL MOVEABLE DISCARDABLE 15, 40, 210, 152
 STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
-CAPTION "Tietoja: %s"
+CAPTION "Tietoja %s"
 FONT 10, "MS Shell Dlg"
 {
  DEFPUSHBUTTON "OK", IDOK, 153, 133, 50, 12, WS_TABSTOP
@@ -28,7 +114,7 @@
  ICON "", 1088, 10, 10, 14, 16
  LTEXT "", 100, 30, 10, 137, 10
  LTEXT "", 101, 30, 22, 137, 10
- LTEXT "ReactOS:n tekijõt:", 98, 8, 55, 137, 10
+ LTEXT "ReactOS:n toi Sinulle:", 98, 8, 55, 137, 10
 }
 
 SHELL_RUN_DLG DIALOG LOADONCALL MOVEABLE DISCARDABLE 0, 0, 227, 95
@@ -37,10 +123,82 @@
 FONT 8, "MS Shell Dlg"
 {
  ICON "", 12297, 7, 11, 18, 20, WS_VISIBLE
- LTEXT "Type the name of a program, folder, document, or Internet resource, and ReactOS will open it for you.", 12289, 36, 11, 182, 18
- LTEXT "&Open:", 12305, 7, 39, 24, 10
+ LTEXT "Anna ohjelma, dokumentti, tai Internet -ressurssi, ja ReactOS avaa sen Sinulle.", 12289, 36, 11, 182, 18
+ LTEXT "&Avaa:", 12305, 7, 39, 24, 10
  CONTROL "", 12298, "COMBOBOX", WS_TABSTOP | WS_GROUP | WS_VSCROLL | WS_VISIBLE | CBS_DISABLENOSCROLL | CBS_AUTOHSCROLL | CBS_DROPDOWN, 36, 37, 183, 100
  DEFPUSHBUTTON "OK", IDOK, 62, 63, 50, 14, WS_TABSTOP
- PUSHBUTTON "Cancel", IDCANCEL, 116, 63, 50, 14, WS_TABSTOP
- PUSHBUTTON "&Browse...", 12288, 170, 63, 50, 14, WS_TABSTOP
+ PUSHBUTTON "Peruuta", IDCANCEL, 116, 63, 50, 14, WS_TABSTOP
+ PUSHBUTTON "&Selaa...", 12288, 170, 63, 50, 14, WS_TABSTOP
 }
+
+STRINGTABLE DISCARDABLE
+{
+        /* columns in the shellview */
+	IDS_SHV_COLUMN1		"Tiedosto"
+	IDS_SHV_COLUMN2		"Koko"
+	IDS_SHV_COLUMN3		"Tyyppi"
+	IDS_SHV_COLUMN4		"Muokattu"
+	IDS_SHV_COLUMN5		"Ominaisuudet"
+	IDS_SHV_COLUMN6		"Koko"
+	IDS_SHV_COLUMN7		"Tilaa jõljellõ"
+	IDS_SHV_COLUMN8		"Nimi"
+	IDS_SHV_COLUMN9		"Kommentit"
+	IDS_SHV_COLUMN10	"Omistaja"
+	IDS_SHV_COLUMN11	"Ryhmõ"
+
+        /* special folders */
+	IDS_DESKTOP		"Ty÷p÷ytõ"
+	IDS_MYCOMPUTER		"Oma Tietokone"
+
+        /* context menus */
+	IDS_VIEW_LARGE		"&Suuret Kuvakkeet"
+	IDS_VIEW_SMALL		"&Pienet Kuvakkeet"
+	IDS_VIEW_LIST		"&Lista"
+	IDS_VIEW_DETAILS	"&Tiedot"
+	IDS_SELECT		"Valitse"
+	IDS_OPEN		"Avaa"
+
+	IDS_CREATEFOLDER_DENIED "Uutta kansiota ei voitu luoda: Oikeudet eivõt riitõ."
+	IDS_CREATEFOLDER_CAPTION "Virhe luotaessa uutta kansiota"
+	IDS_DELETEITEM_CAPTION "Vahvista tiedoston tuhoaminen"
+	IDS_DELETEFOLDER_CAPTION "Vahvista kansion tuhoaminen"
+	IDS_DELETEITEM_TEXT "Haluatko varmasti tuhota '%1':n?"
+	IDS_DELETEMULTIPLE_TEXT "Haluatko varmasti tuhota nõmõ %1?"
+	IDS_OVERWRITEFILE_TEXT "Ylikirjoita tiedosto %1?"
+	IDS_OVERWRITEFILE_CAPTION "Vahvista Tiedoston Ylikirjoitus"
+
+        /* message box strings */
+        IDS_RESTART_TITLE       "Kõynnistõ uudestaan"
+        IDS_RESTART_PROMPT      "Haluatko simuloida Windows:n uudelleenkõynnistõmistõ?"
+        IDS_SHUTDOWN_TITLE      "Sammuta"
+        IDS_SHUTDOWN_PROMPT     "Haluatko lopettaa Wine:n istunnon?"
+
+        /* shell folder path default values */
+	IDS_PROGRAMS                "Kõynnistõ\\Ohjelmat"
+	IDS_PERSONAL                "Omat tiedostot"
+	IDS_FAVORITES               "Suosikit"
+	IDS_STARTUP                 "Kõynnistõ\\Ohjelmat\\Kõynnistys"
+	IDS_RECENT                  "?skettõin kõytetyt"
+	IDS_SENDTO                  "Lõhetõ"
+	IDS_STARTMENU               "Kõynnistõ"
+	IDS_MYMUSIC                 "Omat tiedostot\\Omat musiikkitiedostot"
+	IDS_MYVIDEO                 "Omat tiedostot\\Omat videotiedostot"
+	IDS_DESKTOPDIRECTORY        "Ty÷p÷ytõ"
+	IDS_NETHOOD                 "Verkkoympõrist÷"
+	IDS_TEMPLATES               "Mallit"
+	IDS_APPDATA                 "Ohjelmien Tiedot"
+	IDS_PRINTHOOD               "Tulostinympõrist÷"
+	IDS_LOCAL_APPDATA           "Paikalliset Asetukset\\Ohjelmien Tiedot"
+	IDS_INTERNET_CACHE          "Võliaikaiset Internet-tiedostot"
+	IDS_COOKIES                 "Evõsteet"
+	IDS_HISTORY                 "Historia"
+	IDS_PROGRAM_FILES           "Ohjelmat"
+	IDS_MYPICTURES              "Omat tiedostot\\Omat kuvatiedostot"
+	IDS_PROGRAM_FILES_COMMON    "Ohjelmat\\Yhteiset Tiedostot"
+	IDS_COMMON_DOCUMENTS        "Dokumentit"
+	IDS_ADMINTOOLS              "Kõynnistys\\Ohjauspaneeli\\Administrative Tools"
+	IDS_COMMON_MUSIC            "Dokumentit\\Omat musiikkitiedostot"
+	IDS_COMMON_PICTURES         "Dokumentit\\Omat kuvatiedostot"
+	IDS_COMMON_VIDEO            "Dokumentit\\Omat videotiedostot"
+	IDS_CDBURN_AREA             "Paikalliset Asetukset\\Ohjelmien Tiedot\\Microsoft\\CD Burning"
+}

Modified: trunk/reactos/lib/shell32/shell32_No.rc
--- trunk/reactos/lib/shell32/shell32_No.rc	2005-10-08 17:26:40 UTC (rev 18347)
+++ trunk/reactos/lib/shell32/shell32_No.rc	2005-10-08 17:41:41 UTC (rev 18348)
@@ -1,5 +1,5 @@
 /*
- * Copyright 1998 Juergen Schmied
+ * Copyright 2005 Alexander N. S°rnes <alex@thehandofagony.com>
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -16,8 +16,94 @@
  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  */
 
-LANGUAGE LANG_NORWEGIAN, SUBLANG_DEFAULT
+LANGUAGE LANG_NORWEGIAN, SUBLANG_NORWEGIAN_BOKMAL
 
+MENU_001 MENU DISCARDABLE
+BEGIN
+	MENUITEM "&Store ikoner",	FCIDM_SHVIEW_BIGICON
+	MENUITEM "&SmÕ ikoner",	FCIDM_SHVIEW_SMALLICON
+	MENUITEM "&Liste",		FCIDM_SHVIEW_LISTVIEW
+	MENUITEM "&Detaljer",		FCIDM_SHVIEW_REPORTVIEW
+END
+
+/*
+ shellview background menu
+*/
+MENU_002 MENU DISCARDABLE
+BEGIN
+	POPUP ""
+	BEGIN
+	  POPUP "&Vis"
+	  BEGIN
+	    MENUITEM "&Store ikoner",	FCIDM_SHVIEW_BIGICON
+	    MENUITEM "S&mÕ ikoner",	FCIDM_SHVIEW_SMALLICON
+	    MENUITEM "&Liste",		FCIDM_SHVIEW_LISTVIEW
+	    MENUITEM "&Detaljer",	FCIDM_SHVIEW_REPORTVIEW
+	  END
+	  MENUITEM SEPARATOR
+	  POPUP "Ordne &ikoner"
+	  BEGIN
+	    MENUITEM "Etter &navn",	0x30	/* column 0 */
+	    MENUITEM "Etter &type",	0x32	/* column 2 */
+	    MENUITEM "Etter &st°rrelse",	0x31	/* ... */
+	    MENUITEM "Etter &dato",	0x33
+	    MENUITEM SEPARATOR
+	    MENUITEM "Ordne &automatisk",	FCIDM_SHVIEW_AUTOARRANGE
+	  END
+	  MENUITEM "Still opp ikoner",	FCIDM_SHVIEW_SNAPTOGRID
+	  MENUITEM SEPARATOR
+	  MENUITEM "Oppdater",		FCIDM_SHVIEW_REFRESH
+	  MENUITEM SEPARATOR
+	  MENUITEM "Lim inn",		FCIDM_SHVIEW_INSERT
+	  MENUITEM "Lim inn som snarvei",	FCIDM_SHVIEW_INSERTLINK
+	  MENUITEM SEPARATOR
+	  POPUP "Ny"
+	  BEGIN
+	    MENUITEM "Ny &mappe",	FCIDM_SHVIEW_NEWFOLDER
+	    MENUITEM "Ny &snarvei",	FCIDM_SHVIEW_NEWLINK
+	    MENUITEM SEPARATOR
+	  END
+	  MENUITEM SEPARATOR
+	  MENUITEM "Egenskaper",	FCIDM_SHVIEW_PROPERTIES
+	END
+END
+
+/*
+ shellview item menu
+*/
+MENU_SHV_FILE MENU DISCARDABLE
+BEGIN
+	POPUP ""
+	BEGIN
+	  MENUITEM "&Utforsk",		FCIDM_SHVIEW_EXPLORE
+	  MENUITEM "&?pne",		FCIDM_SHVIEW_OPEN
+	  MENUITEM SEPARATOR
+	  MENUITEM "Klipp &ut",		FCIDM_SHVIEW_CUT
+	  MENUITEM "&Kopier",		FCIDM_SHVIEW_COPY
+	  MENUITEM SEPARATOR
+	  MENUITEM "&Opprett snarvei",	FCIDM_SHVIEW_CREATELINK
+	  MENUITEM "&Slett",		FCIDM_SHVIEW_DELETE
+	  MENUITEM "&Gi nytt navn",		FCIDM_SHVIEW_RENAME
+	  MENUITEM SEPARATOR
+	  MENUITEM "Egenska&per",	FCIDM_SHVIEW_PROPERTIES
+	END
+END
+
+SHBRSFORFOLDER_MSGBOX DIALOG LOADONCALL MOVEABLE DISCARDABLE 15, 40, 188, 192
+STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU | DS_MODALFRAME | DS_SETFONT | DS_3DLOOK
+CAPTION "Bla etter mappe"
+FONT 8, "MS Shell Dlg"
+{
+ DEFPUSHBUTTON "OK", 1, 80, 176, 50, 12, BS_DEFPUSHBUTTON | WS_GROUP | WS_TABSTOP
+ PUSHBUTTON "Avbryt", 2, 134, 176, 50, 12, WS_GROUP | WS_TABSTOP
+ LTEXT "", IDD_TITLE, 4, 4, 180, 12
+ LTEXT "", IDD_STATUS, 4, 25, 180, 12
+ CONTROL "", IDD_TREEVIEW, "SysTreeView32",
+ 	TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT |
+	WS_BORDER | WS_TABSTOP,
+	4, 40, 180, 120
+}
+
 SHELL_ABOUT_MSGBOX DIALOG LOADONCALL MOVEABLE DISCARDABLE 15, 40, 210, 152
 STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
 CAPTION "Om %s"
@@ -28,7 +114,7 @@
  ICON "", 1088, 10, 10, 14, 16
  LTEXT "", 100, 30, 10, 137, 10
  LTEXT "", 101, 30, 22, 137, 10
- LTEXT "ReactOS was brought to you by:", 98, 8, 55, 137, 10
+ LTEXT "ReactOS er laget av", 98, 8, 55, 137, 10
 }
 
 SHELL_RUN_DLG DIALOG LOADONCALL MOVEABLE DISCARDABLE 0, 0, 227, 95
@@ -37,10 +123,82 @@
 FONT 8, "MS Shell Dlg"
 {
  ICON "", 12297, 7, 11, 18, 20, WS_VISIBLE
- LTEXT "Type the name of a program, folder, document, or Internet resource, and ReactOS will open it for you.", 12289, 36, 11, 182, 18
- LTEXT "&Open:", 12305, 7, 39, 24, 10
+ LTEXT "Skriv inn navnet pÕ programmet, mappen, dokumentet etter Internett-ressursen du °nsker Õ Õpne.", 12289, 36, 11, 182, 18
+ LTEXT "&?pne:", 12305, 7, 39, 24, 10
  CONTROL "", 12298, "COMBOBOX", WS_TABSTOP | WS_GROUP | WS_VSCROLL | WS_VISIBLE | CBS_DISABLENOSCROLL | CBS_AUTOHSCROLL | CBS_DROPDOWN, 36, 37, 183, 100
  DEFPUSHBUTTON "OK", IDOK, 62, 63, 50, 14, WS_TABSTOP
- PUSHBUTTON "Cancel", IDCANCEL, 116, 63, 50, 14, WS_TABSTOP
- PUSHBUTTON "&Browse...", 12288, 170, 63, 50, 14, WS_TABSTOP
+ PUSHBUTTON "Avbryt", IDCANCEL, 116, 63, 50, 14, WS_TABSTOP
+ PUSHBUTTON "&Bla . . .", 12288, 170, 63, 50, 14, WS_TABSTOP
 }
+
+STRINGTABLE DISCARDABLE
+{
+        /* columns in the shellview */
+	IDS_SHV_COLUMN1		"Fil"
+	IDS_SHV_COLUMN2		"St°rrelse"
+	IDS_SHV_COLUMN3		"Type"
+	IDS_SHV_COLUMN4		"Endret"
+	IDS_SHV_COLUMN5		"Egenskaper"
+	IDS_SHV_COLUMN6		"St°rrelse"
+	IDS_SHV_COLUMN7		"Ledig plass"
+	IDS_SHV_COLUMN8		"Navn"
+	IDS_SHV_COLUMN9		"Kommentarer"
+	IDS_SHV_COLUMN10	"Eier"
+	IDS_SHV_COLUMN11	"Gruppe"
+
+        /* special folders */
+	IDS_DESKTOP		"Skrivebord"
+	IDS_MYCOMPUTER		"Min datamaskin"
+
+        /* context menus */
+	IDS_VIEW_LARGE		"&Store ikoner"
+	IDS_VIEW_SMALL		"S&mÕ ikoner"
+	IDS_VIEW_LIST		"&Liste"
+	IDS_VIEW_DETAILS	"&Detaljer"
+	IDS_SELECT		"Velg"
+	IDS_OPEN		"?pne"
+
+	IDS_CREATEFOLDER_DENIED "Kunne ikke opprette ny mappe: tilgang nektet."
+	IDS_CREATEFOLDER_CAPTION "Feil ved oppretting av ny mappe"
+	IDS_DELETEITEM_CAPTION "Bekreft filsletting"
+	IDS_DELETEFOLDER_CAPTION "Bekreft sletting av mappe"
+	IDS_DELETEITEM_TEXT "Virkelig slette '%1'?"
+	IDS_DELETEMULTIPLE_TEXT "Virkelig slette disse %1 elementene?"
+	IDS_OVERWRITEFILE_TEXT "Overskrive filen '%1'?"
+	IDS_OVERWRITEFILE_CAPTION "Bekreft overskriving av fil"
+
+        /* message box strings */
+        IDS_RESTART_TITLE       "Starte pÕ nytt"
+        IDS_RESTART_PROMPT      "Vil du simulere en omstart av Windows?"
+        IDS_SHUTDOWN_TITLE      "Avslutt"
+        IDS_SHUTDOWN_PROMPT     "Vil du avslutte Wine-°kten?"
+
+        /* shell folder path default values */
+	IDS_PROGRAMS                "Start-meny\\Programmer"
+	IDS_PERSONAL                "Mine dokumenter"
+	IDS_FAVORITES               "Favoritter"
+	IDS_STARTUP                 "Start-meny\\Programmer\\Oppstart"
+	IDS_RECENT                  "Recent"
+	IDS_SENDTO                  "SendTo"
+	IDS_STARTMENU               "Start-meny"
+	IDS_MYMUSIC                 "Mine dokumenter\\Min musikk"
+	IDS_MYVIDEO                 "Mine dokumenter\\Mine videoklipp"
+	IDS_DESKTOPDIRECTORY        "Skrivebord"
+	IDS_NETHOOD                 "NetHood"
+	IDS_TEMPLATES               "Templates"
+	IDS_APPDATA                 "Application Data"
+	IDS_PRINTHOOD               "PrintHood"
+	IDS_LOCAL_APPDATA           "Local Settings\\Application Data"
+	IDS_INTERNET_CACHE          "Temporary Internet Files"
+	IDS_COOKIES                 "Cookies"
+	IDS_HISTORY                 "History"
+	IDS_PROGRAM_FILES           "Program Files"
+	IDS_MYPICTURES              "Mine dokumenter\\Mine bilder"
+	IDS_PROGRAM_FILES_COMMON    "Programfiler\\Fellesfiler"
+	IDS_COMMON_DOCUMENTS        "Dokumenter"
+	IDS_ADMINTOOLS              "Start-meny\\Programmer\\Administrative verkt°y"
+	IDS_COMMON_MUSIC            "Dokumenter\\Min musikk"
+	IDS_COMMON_PICTURES         "Dokumenter\\Mine bilder"
+	IDS_COMMON_VIDEO            "Dokumenter\\Mine videoklipp"
+	IDS_CDBURN_AREA             "Local Settings\\Application Data\\Microsoft\\CD Burning"
+}

Modified: trunk/reactos/lib/shell32/shell32_main.c
--- trunk/reactos/lib/shell32/shell32_main.c	2005-10-08 17:26:40 UTC (rev 18347)
+++ trunk/reactos/lib/shell32/shell32_main.c	2005-10-08 17:41:41 UTC (rev 18348)
@@ -308,12 +308,13 @@
  * SHGetFileInfoW            [SHELL32.@]
  *
  */
-DWORD WINAPI SHGetFileInfoW(LPCWSTR path,DWORD dwFileAttributes,
-                            SHFILEINFOW *psfi, UINT sizeofpsfi, UINT flags )
+DWORD_PTR WINAPI SHGetFileInfoW(LPCWSTR path,DWORD dwFileAttributes,
+                                SHFILEINFOW *psfi, UINT sizeofpsfi, UINT flags )
 {
     WCHAR szLocation[MAX_PATH], szFullPath[MAX_PATH];
     int iIndex;
-    DWORD ret = TRUE, dwAttributes = 0;
+    DWORD_PTR ret = TRUE;
+    DWORD dwAttributes = 0;
     IShellFolder * psfParent = NULL;
     IExtractIconW * pei = NULL;
     LPITEMIDLIST    pidlLast = NULL, pidl = NULL;
@@ -557,9 +558,9 @@
         if (ret)
         {
             if (flags & SHGFI_SMALLICON)
-                ret = (DWORD) ShellSmallIconList;
+                ret = (DWORD_PTR) ShellSmallIconList;
             else
-                ret = (DWORD) ShellBigIconList;
+                ret = (DWORD_PTR) ShellBigIconList;
         }
     }
 
@@ -596,9 +597,9 @@
 /*************************************************************************
  * SHGetFileInfoA            [SHELL32.@]
  */
-DWORD WINAPI SHGetFileInfoA(LPCSTR path,DWORD dwFileAttributes,
-                              SHFILEINFOA *psfi, UINT sizeofpsfi,
-                              UINT flags )
+DWORD_PTR WINAPI SHGetFileInfoA(LPCSTR path,DWORD dwFileAttributes,
+                                SHFILEINFOA *psfi, UINT sizeofpsfi,
+                                UINT flags )
 {
     INT len;
     LPWSTR temppath;
@@ -706,7 +707,7 @@
     {
         ret = PrivateExtractIconsW(lpszFile, 0, cx, cy, NULL, NULL, 0, LR_DEFAULTCOLOR);
         if (ret != 0xFFFFFFFF && ret)
-            return (HICON)ret;
+            return (HICON)(UINT_PTR)ret;
         return NULL;
     }
     else

Modified: trunk/reactos/lib/shell32/shelllink.c
--- trunk/reactos/lib/shell32/shelllink.c	2005-10-08 17:26:40 UTC (rev 18347)
+++ trunk/reactos/lib/shell32/shelllink.c	2005-10-08 17:41:41 UTC (rev 18348)
@@ -2384,7 +2384,7 @@
 }
 
 static HRESULT WINAPI
-ShellLink_GetCommandString( IContextMenu* iface, UINT idCmd, UINT uType,
+ShellLink_GetCommandString( IContextMenu* iface, UINT_PTR idCmd, UINT uType,
                             UINT* pwReserved, LPSTR pszName, UINT cchMax )
 {
     IShellLinkImpl *This = impl_from_IContextMenu(iface);

Modified: trunk/reactos/lib/shell32/shellord.c
--- trunk/reactos/lib/shell32/shellord.c	2005-10-08 17:26:40 UTC (rev 18347)
+++ trunk/reactos/lib/shell32/shellord.c	2005-10-08 17:41:41 UTC (rev 18348)
@@ -355,16 +355,16 @@
 	va_start(args, uType);
 	/* wvsprintfA(buf,fmt, args); */
 
-	TRACE("(%08lx,%08lx,%p,%p,%08x)\n",
-	(DWORD)hInstance,(DWORD)hWnd,lpText,lpCaption,uType);
+	TRACE("(%p,%p,%p,%p,%08x)\n",
+	    hInstance,hWnd,lpText,lpCaption,uType);
 
-	if (!HIWORD(lpCaption))
-	  LoadStringW(hInstance, (DWORD)lpCaption, szTitle, sizeof(szTitle)/sizeof(szTitle[0]));
+	if (IS_INTRESOURCE(lpCaption))
+	  LoadStringW(hInstance, LOWORD(lpCaption), szTitle, sizeof(szTitle)/sizeof(szTitle[0]));
 	else
 	  pszTitle = lpCaption;
 
-	if (!HIWORD(lpText))
-	  LoadStringW(hInstance, (DWORD)lpText, szText, sizeof(szText)/sizeof(szText[0]));
+	if (IS_INTRESOURCE(lpText))
+	  LoadStringW(hInstance, LOWORD(lpText), szText, sizeof(szText)/sizeof(szText[0]));
 	else
 	  pszText = lpText;
 
@@ -412,16 +412,16 @@
 	va_start(args, uType);
 	/* wvsprintfA(buf,fmt, args); */
 
-	TRACE("(%08lx,%08lx,%p,%p,%08x)\n",
-	(DWORD)hInstance,(DWORD)hWnd,lpText,lpCaption,uType);
+	TRACE("(%p,%p,%p,%p,%08x)\n",
+	    hInstance,hWnd,lpText,lpCaption,uType);
 
-	if (!HIWORD(lpCaption))
-	  LoadStringA(hInstance, (DWORD)lpCaption, szTitle, sizeof(szTitle));
+	if (IS_INTRESOURCE(lpCaption))
+	  LoadStringA(hInstance, LOWORD(lpCaption), szTitle, sizeof(szTitle));
 	else
 	  pszTitle = lpCaption;
 
-	if (!HIWORD(lpText))
-	  LoadStringA(hInstance, (DWORD)lpText, szText, sizeof(szText));
+	if (IS_INTRESOURCE(lpText))
+	  LoadStringA(hInstance, LOWORD(lpText), szText, sizeof(szText));
 	else
 	  pszText = lpText;
 
@@ -1004,10 +1004,9 @@
  * NOTES
  *  Sets the interface
  */
-HRESULT WINAPI SHSetInstanceExplorer (LPUNKNOWN lpUnknown)
+VOID WINAPI SHSetInstanceExplorer (LPUNKNOWN lpUnknown)
 {	TRACE("%p\n", lpUnknown);
 	SHELL32_IExplorerInterface = lpUnknown;
-	return (HRESULT) lpUnknown;
 }
 /*************************************************************************
  * SHGetInstanceExplorer			[SHELL32.@]

Modified: trunk/reactos/lib/shell32/shellpath.c
--- trunk/reactos/lib/shell32/shellpath.c	2005-10-08 17:26:40 UTC (rev 18347)
+++ trunk/reactos/lib/shell32/shellpath.c	2005-10-08 17:41:41 UTC (rev 18348)
@@ -1303,7 +1303,7 @@
      IS_INTRESOURCE(CSIDL_Data[folder].szDefaultPath))
     {
         if (LoadStringW(shell32_hInstance,
-         (UINT)CSIDL_Data[folder].szDefaultPath, resourcePath, MAX_PATH))
+         LOWORD(CSIDL_Data[folder].szDefaultPath), resourcePath, MAX_PATH))
         {
             hr = S_OK;
             pDefaultPath = resourcePath;

Modified: trunk/reactos/lib/shell32/shlexec.c
--- trunk/reactos/lib/shell32/shlexec.c	2005-10-08 17:26:40 UTC (rev 18347)
+++ trunk/reactos/lib/shell32/shlexec.c	2005-10-08 17:41:41 UTC (rev 18348)
@@ -928,7 +928,7 @@
     if (wDirectory) SHFree( wDirectory );
 
     TRACE("returning %s\n", lpResult);
-    return (HINSTANCE)retval;
+    return retval;
 }
 
 /*************************************************************************
@@ -1051,7 +1051,7 @@
 
 	if (SUCCEEDED(hr))
 	{
-	    hr = IShellExecuteHookW_Execute(pSEH, sei);
+	    hr = IShellExecuteHookW_Execute(pSEH, &sei_tmp);
 
 	    IShellExecuteHookW_Release(pSEH);
 
@@ -1151,7 +1151,7 @@
 
 		if (SUCCEEDED(hr))
 		{
-		    hr = IShellExecuteHookW_Execute(pSEH, sei);
+		    hr = IShellExecuteHookW_Execute(pSEH, &sei_tmp);
 
 		    IShellExecuteHookW_Release(pSEH);
 
@@ -1338,7 +1338,7 @@
         WCHAR lpstrTmpFile[256];
         strcpyW(lpstrTmpFile, wHttp);
         strcatW(lpstrTmpFile, lpFile);
-        retval = (UINT)ShellExecuteW(sei_tmp.hwnd, sei_tmp.lpVerb, lpstrTmpFile, NULL, NULL, 0);
+        retval = (UINT_PTR)ShellExecuteW(sei_tmp.hwnd, sei_tmp.lpVerb, lpstrTmpFile, NULL, NULL, 0);
     }
 
     TRACE("retval %u\n", retval);

Modified: trunk/reactos/lib/shell32/shlmenu.c
--- trunk/reactos/lib/shell32/shlmenu.c	2005-10-08 17:26:40 UTC (rev 18347)
+++ trunk/reactos/lib/shell32/shlmenu.c	2005-10-08 17:41:41 UTC (rev 18348)
@@ -206,7 +206,7 @@
 
 		    MenuInfo.cbSize = sizeof(MENUINFO);
 		    MenuInfo.fMask = MIM_MENUDATA;
-		    MenuInfo.dwMenuData = (DWORD) lpFmMi;
+		    MenuInfo.dwMenuData = (ULONG_PTR) lpFmMi;
 		    SetMenuInfo (hMenuPopup, &MenuInfo);
 
 		    FileMenu_AppendItemW (hmenu, sTemp, uID, iIcon, hMenuPopup, FM_DEFAULT_HEIGHT);
@@ -277,7 +277,7 @@
 
 	MenuInfo.cbSize = sizeof(MENUINFO);
 	MenuInfo.fMask = MIM_MENUDATA;
-	MenuInfo.dwMenuData = (DWORD) menudata;
+	MenuInfo.dwMenuData = (ULONG_PTR) menudata;
 	SetMenuInfo (hMenu, &MenuInfo);
 
 	return hMenu;
@@ -342,7 +342,7 @@
 	  myItem->iIconIndex = icon;
 	  myItem->hMenu = hMenu;
 	  mii.fMask = MIIM_DATA;
-	  mii.dwItemData = (DWORD) myItem;
+	  mii.dwItemData = (ULONG_PTR) myItem;
 	}
 
 	if ( hMenuPopup )

Modified: trunk/reactos/lib/shell32/shres.rc
--- trunk/reactos/lib/shell32/shres.rc	2005-10-08 17:26:40 UTC (rev 18347)
+++ trunk/reactos/lib/shell32/shres.rc	2005-10-08 17:41:41 UTC (rev 18348)
@@ -24358,6 +24358,7 @@
  * which also have a neutral version. This is to
  * get localized bitmaps for example.
  */
+#include "shell32_Bg.rc"
 #include "shell32_Ca.rc"
 #include "shell32_Cn.rc"
 #include "shell32_Cs.rc"

Modified: trunk/reactos/lib/shell32/shv_bg_cmenu.c
--- trunk/reactos/lib/shell32/shv_bg_cmenu.c	2005-10-08 17:26:40 UTC (rev 18347)
+++ trunk/reactos/lib/shell32/shv_bg_cmenu.c	2005-10-08 17:41:41 UTC (rev 18348)
@@ -400,7 +400,7 @@
  */
 static HRESULT WINAPI ISVBgCm_fnGetCommandString(
 	IContextMenu2 *iface,
-	UINT idCommand,
+	UINT_PTR idCommand,
 	UINT uFlags,
 	UINT* lpReserved,
 	LPSTR lpszName,

Modified: trunk/reactos/lib/shell32/shv_item_cmenu.c
--- trunk/reactos/lib/shell32/shv_item_cmenu.c	2005-10-08 17:26:40 UTC (rev 18347)
+++ trunk/reactos/lib/shell32/shv_item_cmenu.c	2005-10-08 17:41:41 UTC (rev 18348)
@@ -467,7 +467,7 @@
 */
 static HRESULT WINAPI ISvItemCm_fnGetCommandString(
 	IContextMenu2 *iface,
-	UINT idCommand,
+	UINT_PTR idCommand,
 	UINT uFlags,
 	UINT* lpReserved,
 	LPSTR lpszName,