将一个文件或文件夹增加隐藏属性,而不改变其它属性值,该如何实现呀?

解决方案 »

  1.   

    Private Sub Command1_Click()
    SetAttr "c:\abc\temp.txt", vbHidden
    End Sub
      

  2.   

    GetFileAttributes VB声明 
    Declare Function GetFileAttributes Lib "kernel32" Alias "GetFileAttributesA" (ByVal lpFileName As String) As Long 
    说明 
    判断指定文件的属性 
    返回值 
    Long,-1表示出错。如返回包含了标志的一个Long值,则指定文件的属性。其中的标志对应于带有FILE_ATTRIBUTE_???前缀的常数。具体参考BY_HANDLE_FILE_INFORMATION结构的File Attribute Types table表格 
    参数表 
    参数 类型及说明 
    lpFileName String,指定欲获取属性的一个文件的名字 
    SetFileAttributes VB声明 
    Declare Function SetFileAttributes Lib "kernel32" Alias "SetFileAttributesA" (ByVal lpFileName As String, ByVal dwFileAttributes As Long) As Long 
    说明 
    设置文件属性 
    返回值 
    Long,非零表示成功,零表示失败。会设置GetLastError 
    参数表 
    参数 类型及说明 
    lpFileName String,要设置其属性的文件名 
    dwFileAttributes Long,带有FILE_ATTRIBUTE_??前缀的一个或多个常数 
      

  3.   


    SetAttr 语句
          为一个文件设置属性信息。语法SetAttr pathname, attributesSetAttr 语句的语法含有以下这些命名参数:部分 描述 
    pathname 必要参数。用来指定一个文件名的字符串表达式,可能包含目录或文件夹、以及驱动器。 
    Attributes 必要参数。常数或数值表达式,其总和用来表示文件的属性。 
    设置值attributes 参数设置可为:常数 值 描述 
    vbNormal 0 常规(缺省值) 
    VbReadOnly 1 只读。 
    vbHidden 2 隐藏。 
    vbSystem 4 系统文件 
    vbArchive 32 上次备份以后,文件已经改变 
    注意 这些常数是由 VBA 所指定的,在程序代码中的任何位置,可以使用这些常数来替换真正的数值。说明如果想要给一个已打开的文件设置属性,则会产生运行时错误。SetAttr 语句示例
    本示例使用 SetAttr 语句来设置文件属性。SetAttr"TESTFILE", vbHidden   ' 设置隐含属性。
    SetAttr"TESTFILE", vbHidden + vbReadOnly   ' 设置隐含并只读。