Well, if you don't HAVE the file, how can it be loaded? That is the ROOT of the problem here.
RUNDLL32.EXE should NOT be anywhere but in its legal directories. The EXE does POINT to the file it will load, not where it is installed.
LOOK where it is on my W7 x64 system (and stop removing the serial number, these are meaningless to anyone, don't worry) :
===================
c:\>dir rundll32.exe /s
Volume in drive C is OS
Volume Serial Number is 1C5C-DD5E
Directory of c:\Windows\System32
07/13/09 09:39 PM 45,568 rundll32.exe
1 File(s) 45,568 bytes
Directory of c:\Windows\SysWOW64
07/13/09 09:14 PM 44,544 rundll32.exe
1 File(s) 44,544 bytes
Directory of c:\Windows\winsxs\amd64_microsoft-windows-rundll32_31bf3856ad364e3
5_6.1.7600.16385_none_33fa4336c49b998b
07/13/09 09:39 PM 45,568 rundll32.exe
1 File(s) 45,568 bytes
Directory of c:\Windows\winsxs\x86_microsoft-windows-rundll32_31bf3856ad364e35_
6.1.7600.16385_none_d7dba7b30c3e2855
07/13/09 09:14 PM 44,544 rundll32.exe
1 File(s) 44,544 bytes
Total Files Listed:
4 File(s) 180,224 bytes
0 Dir(s) 53,143,248,896 bytes free
c:\>
===========================
If it is ANYWHERE ELSE, you are INFECTED... get that cleaned up... but it will NOT solve your problem.
Was the restore to W7 or Vista, several years ago (almost 3) would have been Vista I think?
As I said, you are missing the file. Why? Unknown? Usually laid down with a video driver I think? If you restored it and then you probably have an x year old video driver. Update it to the latest from the card vendor's site might help. I guess you could also get the file from HERE and probably put it in C:\Windows\System32 folder and see what happens?
Irv S.