使用Windows 10 IoT Core系统的朋友应该会比较熟悉IoTStartupOnBoot.cmd文件,该文件是系统启动以后加载的批处理文件,一般会包含应用、服务和后台的启动,比如WinRM、AllJoyn、iotcoredefaultapp和IoTOnboardingTask等等。在系统升级到最新的15026版本以后,该文件的修改方式和之前有了一些区别。本文将以添加启动FTP服务为例,详细讲述如何通过修改该文件的权限来授权用户的修改操作。

1. IoTStartupOnBoot.cmd文件操作权限设置

IoTStartupOnBoot.cmd文件位于Windows 10 IoT Core系统的Windows/System32文件夹下,用户可以通过文件共享、FTP工具来访问。查看其属性可以发现,用户以Administrator登录的情况下,权限只有读取和执行。如下图所示。

因此,如果用户想要修改该文件的内容,会遇到权限不足而无法保存的情况。通过以下的步骤,就可以完成该文件的权限设置,接收用户的修改和保存。

首先,点击上图中的“高级”按钮,在弹出的页面中双击TrustInstaller,如下图所示。

然后,在弹出的TrustInstaller页面中,点击“选择主题”按钮,如下图所示。

接着,在选择用户或组页面,输入“Administrator”,并点击旁边的“查找名称”按钮,如下图所示。

之后,用户会发现,系统已经为对应的用户添加了IP(即Windows 10 IoT Core设备的IP和对应的用户),如下图所示。

点击确定,用户可以发现,当前的Administrator用户已经具有了修改和写入的权限,如下图所示。

之后,再点击确定,用户可以发现,文件的权限条目中,添加了一条Administrator为主体的记录,具有完全控制的权限,如下图所示。

2. 设置自启动FTP服务

在之前的IoT Core系统中,FTP服务是开机自启动的。但是最近的Insider版本系统,该服务并没有开机自启动。用户可以通过修改IoTStartupOnBoot.cmd文件来实现开机启动FTP服务的目的。具体方法如下。

首先,通过文件共享,访问Windows 10 IoT Core设备,如:“\\192.168.0.104\c$”,其中的IP为Windows 10 IoT Core设备的IP。在弹出的对话框中输入访问的用户名和密码。定位到Windows/System32文件夹下,找到IoTStartupOnBoot.cmd文件,点击右键,选择编辑。

然后,在txt文本编辑环境中,添加下列代码:

REM Sync Time
    w32tm.exe /resync >nul 2>&1

….此处省略其他代码….

     REM start FTP
     if /i EXIST %SystemDrive%\Windows\System32\ftpd.exe (
       start ftpd.exe C:\Users\DefaultAccount >nul 2>&1
     )

echo Completed successfully.

修改完毕,点击保存,然后重新启动Windows 10 IoT Core设备。通过Windows Device Portal,或者PowerShell工具连接,可以查看设备运行的进程。在进程列表中可以发现,FTP服务已经开机自启动。如下图所示。

Windows 10 IoT Serials 6 - 如何修改IoTStartupOnBoot.cmd文件的更多相关文章

  1. Windows 10 IoT Serials 2 - Windows 10 IoT RTM 升级教程

    7月29日,微软推出了Windows 10 for PC的正式版,其版本号是Build 10240.近两天官方说已经有4700万的下载安装量,同时这个数字还在不断攀升.另外,除了Windows 10 ...

  2. Windows 10 IoT Serials 5 - 如何为树莓派应用程序添加语音识别与交互功能

    都说语音是人机交互的重要手段,虽然个人觉得在大庭广众之下,对着手机发号施令会显得有些尴尬.但是在资源受限的物联网应用场景下(无法外接鼠标键盘显示器),如果能够通过语音来控制设备,与设备进行交互,那还是 ...

  3. Windows 10 IoT Serials 9 – 如何利用IoTCoreAudioControlTool改变设备的音频设备

    大家知道,在Windows 10 IoT Core上,如果用户外接了USB声卡.带有麦克风的摄像头之类的硬件,就会有多个音频设备可以用.但是,系统目前并没有提供直接的UI来设置音频的输入或者输出设备. ...

  4. Windows 10 IoT Serials 3 - Windows 10 IoT Core Ardunio Wiring Mode

    Maker社区和智能硬件的朋友一定知道Arduino,很多3D打印机都是用它做的.为了迎合这一大块市场,微软在基于Intel Galileo的Windows 8.1 IoT中就是使用这种基于Ardui ...

  5. Windows 10 IoT Serials 1 - 针对Minnow Board MAX的Windows 10 IoT开发环境搭建

    目前,微软针对Windows IoT计划支持的硬件包括树莓派2,Minnow Board MAX 和Galileo (Gen 1和Gen 2).其中,Galileo (Gen 1和Gen 2)运行的是 ...

  6. Windows 10 IoT Serials 4 - 如何在树莓派上使用Cortana语音助手

    从Windows 10 IoT Core 14986版本开始,微软已经加入Cortana语音助手功能.之前,我们只能使用本地语音识别,需要编写应用程序,下载到设备中才能实现.从现在开始,微软已经从系统 ...

  7. Windows 10 IoT Serials 7 – 如何用树莓派制作家庭流媒体播放器

    Windows 10平台引入了AllJoyn开源软件框架,它提供了一组服务可以创建动态近端网络,让设备可以相互连接实现功能交互.目前,AllJoyn开源软件框架由AllSeen联盟负责管理.AllSe ...

  8. Windows 10 IoT Serials 8 – 如何改变UWP应用的目标平台

    Windows Insider计划直接加速了Windows系统的迭代,缩短了系统发布的周期.就Windows 10 IoT Core而言,迭代的速度和Windows 10 for PC.Windows ...

  9. Windows 10 IoT Serials 10 – 如何使用OCR引擎进行文字识别

    1. 引言 OCR (Optical Character Recognition,光学字符识别)是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过检测暗.亮的模式确定其形状,然后用字符识别方 ...

随机推荐

  1. bzoj2049

    2049: [Sdoi2008]Cave 洞穴勘测 Time Limit: 10 Sec  Memory Limit: 259 MBSubmit: 7579  Solved: 3548[Submit] ...

  2. Compilation err ororg.eclipse.jdt.internal.compiler.classfmt.ClassFormatException

    严重: Compilation errororg.eclipse.jdt.internal.compiler.classfmt.ClassFormatExceptionat org.eclipse.j ...

  3. Bmob 之 列表查询

    查询列表,返回前20个数据: //创建BmobQuery实例,指定对应要操作的数据表名称 BmobQuery *query = [BmobQuery queryWithClassName:classN ...

  4. linux 同步机制之complete【转】

    转自: http://blog.csdn.net/wealoong/article/details/8490654 在Linux内核中,completion是一种简单的同步机制,标志"thi ...

  5. Delphi的ListView自动排序

    private SortCol: Integer; SortWay: Integer; procedure TForm1.LVweColumnClick(Sender: TObject; Column ...

  6. Java线程:锁

    一.锁的原理 Java中每个对象都有一个内置锁,当程序运行到非静态的synchronized同步方法上时,自动获得与正在执行的代码类的当前实例(this实例)有关的锁.获得一个对象的锁也称为获取锁.锁 ...

  7. Java线程:线程中断

    interrupt方法可以用来请求终止线程. 当对一个线程调用interrupt方法时,线程的中断状态被置位.这时每个线程都有boolean标志.每个线程都应该不时的检查这个标志,以判断线程是否被中断 ...

  8. Linux C++程序进行性能分析工具gprof使用入门

    性能分析工具 软件的性能是软件质量的重要考察点,不论是在线服务程序还是离线程序,甚至是终端应用,性能都是用户体验的关键.这里说的性能重大的范畴来讲包括了性能和稳定性两个方面,我们在做软件测试的时候也是 ...

  9. Raphael的set使用

    Raphael的set使用 $(function() { initRaphael(); }); function initRaphael(e) { var paper = Raphael(0, 0, ...

  10. oracle存储过程返回结果集

    http://www.2cto.com/database/201204/127180.html oracle实现存储过程返回查询结果集合的方法   --实现存储过程返回查询结果集合的方法 ,以下代码来 ...