精华内容
下载资源
问答
  • 现在很多企业局域网都有文件服务器,经常将公司的一些图纸文档等重要资料放到上面共享给局域网...下面小编给大家带来了如何设置共享文件不能复制或者设置共享文件只读不能复制,实现共享文件禁止复制的方法,一起看看
  • 目前,我正在参与的项目需要在本机上创建一个文件夹,并将其设置只读共享,其他用户可以通过局域网读取该文件夹内的文件。环境是XP+VC6.0。 创建文件夹使用的命令是CreateDirectory("F:\\TEMP", NULL); 使用WIN...

    目前,我正在参与的项目需要在本机上创建一个文件夹,并将其设置为只读共享,其他用户可以通过局域网读取该文件夹内的文件。环境是XP+VC6.0。

    创建文件夹使用的命令是CreateDirectory("F:\\TEMP", NULL);

    使用WIN32 API设置文件夹为共享的命令是NetShareAdd();

    具体方法见:http://www.haogongju.net/art/827019

    但是这里有一个问题,SHARE_INFO_2中的shi2_permissions对于Windows XP无效,你可以设为任意值,但对文件夹的共享读写权限不起作用。

    因此使用SHARE_INFO_2是无法设置文件夹为只读共享的。文章中提供了另一种设置的方法,但本人觉得太繁杂。

    于是借鉴文章最后提到的方法使用SHARE_INFO_502来设置。由于作者只是给出了一个方向,并未提出具体的解决方案,所以需要自己想办法。

    遇到的困难集中在PSECURITY_DESCRIPTOR shi502_security_descriptor参数的设置上,这个参数设置很繁琐。

    经过搜索后,发现使用这种方法的人很少,网上的内容具有参考价值的少之又少。

    最后本人难得从国外的网站上发现一个范例,能够很好的解决该问题,主要功能就是设置PSECURITY_DESCRIPTOR shi502_security_descriptor参数。

    贴出来大家共享一下,同时为后来者提供一个参考,避免走弯路。

     // create the SID representing everyone
      SID_IDENTIFIER_AUTHORITY world_auth = SECURITY_WORLD_SID_AUTHORITY;
      if (!AllocateAndInitializeSid(&world_auth,
       1, SECURITY_WORLD_RID, 0, 0, 0, 0, 0, 0, 0, &sid))
      {
       res = GetLastError();
       goto error;
      }
    
      // create an ACL with read access for everyone,
      // note GENERIC_READ|GENERIC_EXECUTE seem to correspond to
      // read only access on a share but I haven't seen this documented
      EXPLICIT_ACCESS access;
      access.grfAccessPermissions = GENERIC_READ|GENERIC_EXECUTE;
      access.grfAccessMode = SET_ACCESS;
      access.grfInheritance = NO_INHERITANCE;
      access.Trustee.pMultipleTrustee = 0;
      access.Trustee.MultipleTrusteeOperation = NO_MULTIPLE_TRUSTEE;
      access.Trustee.TrusteeForm = TRUSTEE_IS_SID;
      access.Trustee.TrusteeType = TRUSTEE_IS_GROUP;
      access.Trustee.ptstrName = (LPSTR)sid;
      res = SetEntriesInAclA(1, &access, 0, &dacl);
      if (res != ERROR_SUCCESS)
      {
       goto error;
      }
    
      // create empty security descriptor
      SECURITY_DESCRIPTOR sd;
      if (!InitializeSecurityDescriptor(&sd, SECURITY_DESCRIPTOR_REVISION))
      {
       res = GetLastError();
       goto error;
      }
    
      // add the ACL to the security descriptor
      if (!SetSecurityDescriptorDacl(&sd, TRUE, dacl, FALSE))
      {
       res = GetLastError();
       goto error;
      }
    
      // create the share
      SHARE_INFO_502 info;
      info.shi502_netname = (LPTSTR)wshare;
      info.shi502_type = STYPE_DISKTREE;
      info.shi502_remark = (LPTSTR)L"";
      info.shi502_permissions = ACCESS_ALL;
      info.shi502_max_uses = -1;
      info.shi502_current_uses = 0;
      info.shi502_path = (LPTSTR)wpath;
      info.shi502_passwd = (LPTSTR)L"";
      info.shi502_reserved = 0;
      info.shi502_security_descriptor = &sd;
      res = NetShareAdd((LPTSTR)wserver, 502, (LPBYTE)&info, 0);


    展开全文
  • 如何设置U盘为只读模式,u盘相信大家都不陌生了,由于U盘的体积小重要轻这些特点受到大家的欢迎,但也正因为U盘这些特点,很多人也担心在自己的电脑上的重要资料会被不知不觉中复制走,但又不能禁用U盘,那么怎么设置呢...

    如何设置U盘为只读模式,u盘相信大家都不陌生了,由于U盘的体积小重要轻这些特点受到大家的欢迎,但也正因为U盘这些特点,很多人也担心在自己的电脑上的重要资料会被不知不觉中复制走,但又不能禁用U盘,那么怎么设置呢,有两种方法可以解决

    方案一:

    1、打开“我的电脑”→“工具→文件夹选项→查看”命令→去除“高级设置”选项下“简单文件共享”的选中状态

    2、右击U盘选择“属性”→转到“安全”选项卡→将“组和用户列表”下Everyone的权限设置为“只读”、“读取和运行”、“列出文件夹目录”

    3、单击“添加”将自己使用的帐户名(本例为LCR)添加到到“组和用户”列表中,并设置权限为“完全控制”。

    方案二:

    我们在一台XP SP2的计算机上运行Regedit,我们在HKEY_LOCAL_MACHINE\SYSTEM\Current\ControlSet\Control下选择新建一项,项的名称为StorageDevicePolicies。

    bd18bf3efe8b9f2845b24241dfa16326.png

    a5163c252e43c0d92822872dcc61d563.png

    c663b54b1664016b372a5a3c02bdefed.png

    将StorageDevicePolicies中WriteProtect值设置为1,这样就可以然我们的u盘变成只读模式了(如果想恢复正常我们可以猜用把WriteProtect值设置为0的方法)。

    提示: 如果在注册表中没有找到“StorageDevicePolicies”注册表项,可以自己用鼠标右键单击“Control”注册表项,新建一个名为 “StorageDevicePolicies”注册表项,然后按照上述的方法创建WriteProtect的值即可。

    6e12ed2a315f0ade423a035544184ecd.png

    现在我们可以测试一下,把u盘文件发送到u盘上

    2d18b1240127b98de182ea9cf4755679.png

    弹出提示框:U盘显示被写保护,这样我们的只读u盘就设置成功了。

    如果用户们用的是Vista或Win2008的操作系统,设置U盘只读模式就更方便了,只需要在策略组中禁用USB设备就可以了。简单实用的操作步骤,大家赶紧试试吧。

    展开全文
  • 创建好Ubuntu虚拟机后,常常需要和Windows共享文件,怎么样实现呢?有两种办法。 一、使用VirtualBox共享文件夹的方法 1. 打开VirtualBox上的设置,在共享文件夹选项卡下,点击添加,选择Windows上的一个路径为...

    创建好Ubuntu虚拟机后,常常需要和Windows共享文件,怎么样实现呢?有两种办法。

    一、使用VirtualBox共享文件夹的方法

    1. 打开VirtualBox上的设置,在共享文件夹选项卡下,点击添加,选择Windows上的一个路径为共享路径,最后选择固定分配方式即可。

    只读分配:选中时,该共享文件夹在虚拟机电脑内就变为只读。

    自动挂载:选中时,虚拟机操作系统将在启动时尝试自动装载共享文件夹。

    固定分配:选中时,该共享文件夹时永久性的。

    2. 在虚拟机Terminal窗口中输入以下命令,注意UBuntuSharePath为步骤1设置的共享文件夹名称。

    sudo mkdir /pcshare

    sudo chmod 777 /pcshare

    sudo mount -t vboxsf uBuntuSharePath /pcshare

    注:mount命令可能会有"wrong fs type, bad option, bad superblock"的错误,需要从虚拟机的设备菜单安装增强功能。

    现在就可以使用该共享文件夹实现Ubuntu虚拟机和Windows的文件共享了。用这种方法,虚拟机和Windows上的用户都对这个共享文件夹拥有可读可写可执行的权限。

    二、使用Samba服务器。

    1. 打开VirtualBox上的设置,选择网络连接方式为“桥接网卡”。

    2. 在虚拟机Terminal窗口中输入以下命令进行安装。

    sudo apt-get install samba samba-common

    3. 在虚拟机上创建新的路径,然后编辑/etc/samba/smb.conf 文件,仿照其中的“printers"和”print$"添加一个新的。

    常用选项解释如下:

    comment:共享文件夹表述信息,也可以不写。

    path:Ubuntu上共享文件夹路径,这个选项必须有,而且该路径必须存在。

    guest ok:yes或no,yes表示允许guess用户访问,这样其他用户在访问这个Samba时就不需要输入账户和密码。

    read only:yes或no,是否只读,设置为yes,则Windows上的用户在访问该Samba路径时是只读的。

    4. 用以下命令重启Samba服务器。

    sudo /etc/init.d/samba restart

    5. 用ifconfig命令获取虚拟机IP,这样在Windows上用IP+Samba共享文件夹名字就可以访问虚拟机共享的内容了。

    用这种方法,可以限制Windows用户访问共享文件夹的权限,限制的方法就在步骤3 smb.conf 文件中设置不同的选项。

     

    展开全文
  • 二、选择“everyone”------“添加”-------安全起见,权限设置为“只读”-------点击“共享”-----“完成” 三、输入“secpol.msc”-------“回车”--------“本地策略”----“用户权限分配”-----“拒绝从网络...

    一、选择需要共享的文件或目录,鼠标右键选择“授予访问权限”-------“特定用户”,点击进入

    在这里插入图片描述

    二、选择“everyone”------“添加”-------安全起见,权限设置为“只读”-------点击“共享”-----“完成”

    在这里插入图片描述

    三、输入“secpol.msc”-------“回车”--------“本地策略”----“用户权限分配”-----“拒绝从网络访问这台计算机”选项--------将“guest”删除

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    四、 “本地策略”下-------“安全选项”-------找到“网络访问:本地账户的共享和安全模型”-------如果不能共享成功,需要将此项改为“仅来宾”

    在这里插入图片描述

    五、 “打开网络和Internet设置”----------“共享选项”--------“全部勾选为启用”--------“无密码保护”

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    六、共享目录或文件的共享

    smbclient -L //192.168.100.1/
    //查看共享的目录,VM1地址

    如果是最小化安装的系统,需要:yum -y install samba-client samba-common cifs-utils samba

    mkdir /abc
    //创建挂载目录位置

    mount.cifs //192.168.100.1/rhe17 /abc
    //挂在到目录

    注意:如果是CentOS7.4版本,则需要以下配置:
    vi /etc/samba/smb.conf
    client min protocol = CORE
    client max protocol = SMB3
    //在[global]下添加,后再执行挂载

    展开全文
  • ”的问题,下面由一级教师-李微竹为您解答:非常多时候我们也许需要多人在相同个Excel图表中进行编辑,可是当一个人在编辑的时候,另一个人打开则只能是只读,不能编辑,这时可以对图表进行设置,将其设为分享,可以...
  • 如何更改访问共享文件夹的用户名和密码 ...比如:windows 2003共享文件夹设置了局域网文件夹共享,并且设置了2个用户专门用来共享访问,一个用户只拥有对文件夹的只读访问权限,另外一个用户则
  • 也献给所有为实现网络的自由与共享而努力的朋友们. 批处理文件是无格式的文本文件,它包含一条或多条命令。它的文件扩展名为 .bat 或 .cmd。在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会...
  • Windows共享文件夹设置了局域网文件夹共享,我设置了2个用户专门用来共享访问,一个用户只拥有对文件夹的只读访问权限,另外一个用户则对文件夹拥有完全权限。 但是用其中一个用户登陆之后,要用另外一个用户名来...
  • windows共享文件夹设置了局域网文件夹共享,我设置了2个用户专门用来共享访问,一个用户只拥有对文件夹的只读访问权限,另外一个用户则对文件夹拥有完全权限。 但是用其中一个用户登陆之后,要用另外一个用户名来...
  • 按网上的指令设置共享文件夹,我这个易错体质,果然状况百出。网上的帖子很多,只记录出错的地方。 1、无法解压vmware tools 要复制到其他文件夹下解压,复制到其他文件夹如opt下,还是没办法解压,显示 tar: vmware...
  • windows共享文件夹设置了局域网文件夹共享,我设置了2个用户专门用来共享访问,一个用户只拥有对文件夹的只读访问权限,另外一个用户则对文件夹拥有完全权限。 但是用其中一个用户登陆之后,要用另外一个用户名来...
  • 文章目录如何开启SMB如何共享文件如何在IPad上访问共享文件如何在IPad上看视频呢? 如何开启SMB 众所周知,windows的SMB默认是关闭的,下文首先介绍如何开启 首先,进入控制面板-程序,点击启用或关闭windows功能 ...
  • NTFS权限设置

    2015-06-06 14:46:19
    1、 如何将FAT文件系统无损转换为NTFS文件夹系统? 答:“计算机→附件→命令提示符”打开命令提示符,或“开始→运行”输入“cmd”打开命令提示符。在命令提示符中输入:convert f:/fs:ntfs即可将F盘文件系统转换为...
  • 如何通过AD域策略推送MSI安装包

    万次阅读 2018-08-01 15:02:53
    在一个终端机网络可达的共享文件夹,并将需要推送的MSI文件拷贝进去,设置everyone权限为只读。 在域服务器上,或安装了远程管理工具的机器上,开始菜单中打开 administrator tools 在本操作中需要使用到如下...
  • 然后使用去掉“使用简单文件共享”---工具--文件夹选项--查看--高级设置--下面把“使用简单文件夹”共享的勾去掉! 然后在你找到你想限制的QQ的文件夹(没有的可以自己新建)比如是123456这个文件夹吧!然后右击--...
  • 资料梳理-01

    2019-02-28 10:33:22
    因此,如果都是访问共享资源而不去修改共享资源也可以保证线程安全,比如:设置只读属性的全局变量 2.自动释放池原理? AutoreleasePool 3.SDWebImage如何处理gif图?从缓存取出来还是gif吗? 在SDWebImage...
  • 实务6 如何找到Oracle安装时生成的日志文件 实务7 安装Oracle时,是否需要安装JDK 实务8 解压安装文件时,报告无权限 实务 实务9 安装Oracle软件并创建完数据库后,服务内的ORACLESID显示 实务9 “启动”而不是...
  • 实务6 如何找到oracle安装时生成的日志文件 实务7 安装oracle时,是否需要安装jdk 实务8 解压安装文件时,报告无权限 实务 实务9 安装oracle软件并创建完数据库后,服务内的oraclesid显示 实务9 “启动”而不是...
  • C#编程经验技巧宝典

    热门讨论 2008-06-01 08:59:33
    4 <br>0008 为程序设置版本和帮助信息 4 <br>0009 设置Windows应用程序启动窗体 5 <br>0010 设置Web应用程序起始页 5 <br>0011 如何设置程序的出错窗口 5 <br>0012 如何进行程序调试 6 ...
  • 实务6 如何找到oracle安装时生成的日志文件 实务7 安装oracle时,是否需要安装jdk 实务8 解压安装文件时,报告无权限 实务 实务9 安装oracle软件并创建完数据库后,服务内的oraclesid显示 实务9 “启动”而不是...
  • 实务6 如何找到oracle安装时生成的日志文件 实务7 安装oracle时,是否需要安装jdk 实务8 解压安装文件时,报告无权限 实务 实务9 安装oracle软件并创建完数据库后,服务内的oraclesid显示 实务9 “启动”而不是...
  • 实务6 如何找到oracle安装时生成的日志文件 实务7 安装oracle时,是否需要安装jdk 实务8 解压安装文件时,报告无权限 实务 实务9 安装oracle软件并创建完数据库后,服务内的oraclesid显示 实务9 “启动”而不是...
  • 实务6 如何找到oracle安装时生成的日志文件 实务7 安装oracle时,是否需要安装jdk 实务8 解压安装文件时,报告无权限 实务 实务9 安装oracle软件并创建完数据库后,服务内的oraclesid显示 实务9 “启动”而不是...
  • 实务6 如何找到oracle安装时生成的日志文件 实务7 安装oracle时,是否需要安装jdk 实务8 解压安装文件时,报告无权限 实务 实务9 安装oracle软件并创建完数据库后,服务内的oraclesid显示 实务9 “启动”而不是...
  • 实务6 如何找到oracle安装时生成的日志文件 实务7 安装oracle时,是否需要安装jdk 实务8 解压安装文件时,报告无权限 实务 实务9 安装oracle软件并创建完数据库后,服务内的oraclesid显示 实务9 “启动”而不是...
  • 实务6 如何找到oracle安装时生成的日志文件 实务7 安装oracle时,是否需要安装jdk 实务8 解压安装文件时,报告无权限 实务 实务9 安装oracle软件并创建完数据库后,服务内的oraclesid显示 实务9 “启动”而不是...
  • 实务6 如何找到oracle安装时生成的日志文件 实务7 安装oracle时,是否需要安装jdk 实务8 解压安装文件时,报告无权限 实务 实务9 安装oracle软件并创建完数据库后,服务内的oraclesid显示 实务9 “启动”而不是...
  • rar压缩软件.rar

    2016-02-13 10:52:44
    设置压缩文件时间为最新的文件: rar ch -tl files.rar cw 写压缩文件注释到指定文件。 输出文件格式依赖于 -sc 开关。 如果输出文件名没有指定,注释数据会被发送到标准输出设备。 例子: 1) rar cw ...

空空如也

空空如也

1 2 3 4 5 6
收藏数 102
精华内容 40
关键字:

共享文件如何设置只读