I'm running into similar issues - it seems to be a bad idea in DNN3 to use paths to files, whether relative or otherwise, since this info is now stored in the database. I think that the path to which you're pointing is the 'images' subdir of the main DNN directory. This thread might help you: http://www.asp.net/Forums/ShowPost.aspx?tabindex=1&PostID=751442
Basically, to do what you're trying to do and avoid necessitating a hard path, you need to change your database to hold a FileID value, rather than a path (used by the URLControl, for example). Then, run a query similar to the following:
select 'URL' = case when Files.FileName is null then Table.URL else Files.Folder + Files.FileName end
from Table
left outer join Files on Table.URL = 'fileid=' + convert(varchar,Files.FileID)
where Id = @Id
Another thing you might try - since your relative path is going to use the DNN virtual directory as its base (since we're always running from \{DNN Dir}\default.aspx), you could code a relative path such as the following:
imgMap.ImageUrl = "desktopmodules/{your module dir}/images/4floorsr.jpg"
Sean Voeller
Rapidigm, Inc.