管理您的工程文件

当您编辑一个HTML模板文件、保存您的工程或调试应用程序时,Visual Basic 将 webclass 和与之相关的模板.htm 文件存储到您指定的目录中。当您调试工程时,Visual Basic 使用这个目录作为 IIS webclass 运行需要的虚拟目录。虚拟目录是 Web 服务器所在目录之外的一个目录,对浏览器来说它好象是主目录下面的一个子目录。虚拟目录允许您从主目录结构之外的目录向 Web 发布内容。

注意 所有的工程文件,包括设计器和模板引用的任何文件都应当在工程目录中或它下面的一个子目录中。模板的 .htm 文件必须在主工程目录中。

当您部署应用程序时,您可以将 IIS 应用程序的工程目录看作是 Web 服务器上将要使用的目录结构的一个“镜象”。您应当在打算使用的目录结构中安排为您的工程安排文件。例如,如果您打算在 Web 服务器上使用一个单独的图形目录,就应当在您的工程目录下面使用一个相似的子目录。

相对与绝对URL路径

在将一个模板文件链接到一个 webclass 之后,当布署应用程序到服务器时,您必须确保它所包含的对图像和其他文件的引用将正确地工作。在多数情况下,您可以通过在 URL 中使用相对路径引用这些图像和其他文件来确保它。

例如,假设您有一个 HTML 页面,它使用绝对的 URL 在您的本地驱动器中引用两个图像(绝对的 URL 是查找相关文件要指定的驱动器和目录的 URL 路径)。当您布署模板文件到服务器时,这些引用不再有效。相反,您必须用相对的 URL 替换这些绝对的引用(相对的 URL 是表示一个项目的位置相对于当前目录的 URL 路径,没有指定一个明确的驱动器或根目录)。只要您在开发计算机上使用的目录结构模仿了您在 Web 站点使用的目录结构,布署之后您的链接将会正确地解决。

有两种情况您可以安全地使用绝对的 URL 路径:

示例:为一个简单的 Webclass 设置目录

假设您有一个称为 feedback.vbp 的工程,这个工程中的 webclass 使用一个单一的模板文件:thankyou.htm。这个 HTML 页面引用两个图像文件:一个称为 logo.gif 的公司商标和一个称为 banner.gif 的装饰图片。下表显示了这个工程中文件的原始位置:

文件 原始位置
feedback.vbp c:\vb98\myproject\
thankyou.htm c:\front page\
logo.gif c:\front page\images\
banner.gif c:\front page\images\

在您添加模板到 webclass 并保存该工程后,Visual Basic 创建一个 HTML 页面的副本并把它保存在工程目录下。下表显示了添加模板后您目录结构的变化。这些变化是在您添加模板时自动发生的。

文件 临时位置
feedback.vbp c:\vb98\myproject\
thankyou.htm c:\vb98\myproject\
logo.gif c:\front page\images\
banner.gif c:\front page\images\

最后的步骤就是将.gif 文件移动到工程目录或它下面的一个子目录中。假设您打算在 Web 服务器上使用一个单独的图形目录来包含您的图像,您需要在开发计算机上使用这种相同的结构,所以您应当为您的图像在目录c:\vb98\myproject\ 下创建一个图形子目录,然后手工地复制文件到此位置。下表显示了在布署前文件的最终目录结构。您应通过复制文件到工程目录来手工地进行这些改变。

文件 最终位置
feedback.vbp c:\vb98\myproject\
thankyou.htm c:\vb98\myproject\
logo.gif c:\vb98\myproject\graphics\
banner.gif c:\vb98\myproject\graphics\

示例:使用相对路径

按上面所示复制图形文件到子目录后,您必须确信您对这些图像的引用在.htm 文件中,并且在您的 Visual Basic 代码中使用了准确反映布署后文件位置的相对路径。例如,在.htm 文件中对商标图像的任何引用应当是:

images/logo.gif

这被认为是一个相对的 URL,因为它对文件不提供完整的服务器和目录路径,而是表示文件可以在 Web 服务器目录的一个图形子目录中找到,从这里可以画出当前的页面。

详细信息 关于相对和绝对路径的详细信息,请参阅您选择的 HTML 参考。