This is how we do it to make sure we get the right directory every time, especially with relative directories and DNN 3 friendly urls - I'm not positive if this is still an issue with DNN 3.0.12 or whether or not it was a beta issue, but we do it as such:
<code snippet>
dim FileName as String
FileName = Me.ResolveUrl("images/myfile.txt")
dim PhysicalFileName as String = Server.MapPath(FileName)
If you wanted to go relative to root directory (ie: root images folder), you'd do a:
FileName = Me.ResolveUrl("~/images/myfile.txt")
dim PhysicalFileName as String = Server.MapPath(FileName)
</end code snippet>
--Richard
ByDesignWebSights
www.dotnetnuke-modules.com
Portal Store, Advanced Email Manager, SiteTrack, Support Desk and many other modules for your DNN platform.