我用的是IS10.5,在文件夹选项中添加了文件和文件夹,安装完成后,凡是文件夹中有内容的都复制成功了,而空的则没有复制,请高手指导!附加数据库中(attach),如www.cnblogs.com/culturenet/archive/2006/12/19/596930.html所示直接在 安装设计视图中创建连接后,直接创建一个sqlscript,会在安装的时候直接执行。这样的话就的提前知道安装的位置(这是不可能的),于是就直接写成可替换的字符串,然后使用 text replacement 选项卡,设置替换项。其中,sqlscript如下:USE master; 
 GO
-- Drop database if it exists. 
IF EXISTS (SELECT name FROM sys.databases WHERE NAME = 'dmydb') 
   DROP DATABASE dmydb; 
GO
CREATE DATABASE dlbj ON PRIMARY 
   (FILENAME = 
      '%TEXT_TO_BE_REPLACED_IN_THE_FILE%\dmydb.mdf')
   LOG ON (FILENAME = 
      '%TEXT_TO_BE_REPLACED_IN_THE_FILE%\dmydb_log.LDF')
   FOR ATTACH;
GO其中:%TEXT_TO_BE_REPLACED_IN_THE_FILE% 是要替换为安装目录的字符串。这里有个值得注意的地方,如果是installscript项目。那么,在text replacement 选项卡,替换后的内容不能直接设置为[INSTALLDIR]或者 [TARGETDIR],而是要同样设置为一个替换变量,如:<USER_DATA>,即就是,把:%TEXT_TO_BE_REPLACED_IN_THE_FILE% 替换为:<USER_DATA>,然后在 installscript 的 Dlg_SdAskDestPath2: 代码段中,执行如下语句即可。TextSubSetValue ("<USER_DATA>", TARGETDIR , TRUE );当时这里困扰我很长世界,最后还是上国外的网站上找到了解决方案。
使用的替换的路径%TEXT_TO_BE_REPLACED_IN_THE_FILE%必须为有效路径,我使用的是"C:\dir",当我有这个目录时,能成功附加数据库,没有时提示错误信息,请高手指点,不胜感谢!