If you aren't sure what is actually in the backup file, or even if you think you are sure--execute this statement from a fresh query window:
RESTORE FILELISTONLY
FROM DISK = 'X:\MDD\Clients\Lg\H4\H4L.bak'
The information about the mdf/ldf files will show up looking like this:

In this example, I was restoring a database to a different server with different filegroups, directory setups, etc.--so I had to 'MOVE' the location paths to represent the drives I had available. If I were restoring to the same location, I would NOT have needed the 'MOVE' condition. BTW, this assumes you are restoring from a full backup--and that the database already exists. If this isn't your case, go to SQL Server Books Online for more information about your combination of circumstances.
-- Look before you leap to be sure you know what you have.
restore filelistonly
from disk = 'e:\backups\MetroDesign.bak'
-- Dump everyone off of the database
ALTER DATABASE [MetroDesign] SET SINGLE_USER WITH ROLLBACK IMMEDIATE
GO
-- We are asking SQL Server to replace what is there and to place specific files to a new location
RESTORE DATABASE MetroDesign
FROM DISK = 'e:\backups\MetroDesign.bak'
WITH REPLACE,MOVE 'MetroDesign' TO 'e:\sql\data\mdf\MetroDesign.mdf',
MOVE 'MetroDesign_log' TO 'l:\sql\data\ldf\MetroDesign_log.ldf'
-- Allow users back on to the database when through with the backup.
ALTER DATABASE [MetroDesign] SET MULTI_USER WITH NO_WAIT