找回密码
 加入
搜索
查看: 3492|回复: 11

AU3能实现磁盘文件系统转换吗?(不借助DOS命令)

  [复制链接]
发表于 2010-1-30 20:19:06 | 显示全部楼层 |阅读模式
本帖最后由 2287399 于 2010-1-30 22:52 编辑

比如FAT32转换成NTFS怎么实现? 我看了一天的帮助文档没找到答案
还有个问题 AU3能给文件或文件夹加入写保护吗?
发表于 2010-1-30 20:27:11 | 显示全部楼层
打开你的命令提示符,输入convert /?看看。用AU3调用这个命令的磁盘格式转化就行。
发表于 2010-1-30 20:40:42 | 显示全部楼层
用AU3 的RUN 或 _rundos 调用 CONVERT 命令来做
将 FAT 卷转换为 NTFS。

CONVERT volume /FS:NTFS [/V] [/CvtArea:filename] [/NoSecurity] [/X]


  volume      指定驱动器号(后面跟一个冒号)、装入点或卷名。
  /FS:NTFS    指定要将此卷转换为 NTFS。
  /V          指定将在详细模式下运行 Convert。
  /CvtArea:filename
              指定根目录中的一个连续文件,该文件
              将是 NTFS 系统文件的占位符。
  /NoSecurity 指定所有用户均可以访问
              转换文件和目录的安全设置。
  /X          如果必要,请先强制卸除卷。
              该卷的所有打开句柄将会无效。
 楼主| 发表于 2010-1-30 20:49:56 | 显示全部楼层
这个方法我也试过的.但是在量产过的U盘上不能用

还是先谢谢2位
 楼主| 发表于 2010-1-30 20:50:18 | 显示全部楼层
skyfree大大
你的论坛什么时候能开啊
发表于 2010-1-30 21:24:11 | 显示全部楼层
本帖最后由 lpxx 于 2010-1-30 21:25 编辑

论坛已经有成品了,不知是否符合你的意思。
http://www.autoitx.com/forum.php ... hlight=%D7%AA%BB%BB


唉..还是复制一下代码吧,不过我不是作者哈.
; 脚本开始 - 在这后面添加您的代码.
#Region ;**** 参数创建于 ACNWrapper_GUI ****
#AutoIt3Wrapper_icon=D:\autoit3\Aut2Exe\Icons\TC.ico
#AutoIt3Wrapper_outfile=分区格式转换工具.exe
#AutoIt3Wrapper_Compression=4
#AutoIt3Wrapper_UseAnsi=y
#AutoIt3Wrapper_Res_Comment=哦哟科技
#AutoIt3Wrapper_Res_Description=哦哟科技
#AutoIt3Wrapper_Res_Fileversion=1.1.0.0
#AutoIt3Wrapper_Res_LegalCopyright=Copyright @ 2008-2009 深圳哦哟科技
#AutoIt3Wrapper_Res_Field=公司|深圳哦哟科技
#EndRegion ;**** 参数创建于 ACNWrapper_GUI ****
#NoTrayIcon

#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>

#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("磁盘分区格式转换工具", 380, 196, -1, -1)
$Group1 = GUICtrlCreateGroup("磁盘格式转换说明", 16, 16, 345, 110)
GUICtrlSetColor(-1, 0x42A5FF)
GUICtrlCreateLabel("NTFS格式是WinXp推荐使用的格式,具有文件加密,远程存储,", 30, 40, 330, 20)
GUICtrlCreateLabel("磁盘配额,恢复磁盘活动的日志记录,对单个文件而不仅仅对", 30, 60, 330, 20)
GUICtrlCreateLabel("文件夹设置权限等优点,但因DOS/WIN9X均不能识别,初级用户", 30, 80, 330, 20)
GUICtrlCreateLabel("不建议转换.", 30, 100, 330, 20)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUICtrlCreateLabel("请根据自己的需要选择相应的分区进行转换,如果不需要请退出!", 20, 136, 339, 20)
GUICtrlSetColor(-1, 0xFF0000)
GUICtrlCreateLabel("请选择要转换的分区:", 25, 165, 145, 245)
$button = GUICtrlCreateButton("转换", 220, 158, 60, 25)
$button1 = GUICtrlCreateButton("退出", 290, 158, 60, 25)
$combo1 = GUICtrlCreateCombo("", 145, 160, 50, 30)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$disk = DriveGetDrive("FIXED")
If Not @error Then
        For $i = 1 To $disk[0]
                GUICtrlSetData($combo1, $disk[$i], $disk[1])
        Next
EndIf
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                        Case $GUI_EVENT_CLOSE, $button1

                        Exit
                Case $button
                        $drive = GUICtrlRead($combo1)
                        If DriveGetFileSystem($drive) = "NTFS" Then
                                MsgBox(0, "系统快速设置工具", "此分区已是NTFS格式无需转换")
                                ContinueLoop
                        Else
                                RunWait(@ComSpec & ' /c convert ' & $drive & ' /fs:ntfs', '')
                        ProcessWaitClose("cmd.exe")
                        DirRemove("c:\recycler", 1)
                        FileDelete("c:\Recycled")
                EndIf
           Case $button1
                 Exit
        EndSwitch
WEnd

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
 楼主| 发表于 2010-1-30 22:48:17 | 显示全部楼层
哎。。。
还是使用RunWait(@ComSpec & ' /c convert ' & $drive & ' /fs:ntfs', '')这个方法。。。
但是   量产过的优盘不能转换
发表于 2010-1-31 09:49:42 | 显示全部楼层
量产U盘去找相应的芯片提供的量产工具么,干嘛要自己写呢?
 楼主| 发表于 2010-1-31 10:40:19 | 显示全部楼层
如果遇到什么问题都去找工具 那不如不学AU3
我既然要学这东西 就尽可能的使用它来解决问题 同时也可以增加自己的知识量 强化思维能力
发表于 2010-1-31 11:43:24 | 显示全部楼层
如果遇到什么问题都去找工具 那不如不学AU3
我既然要学这东西 就尽可能的使用它来解决问题 同时也可以增加 ...
2287399 发表于 2010-1-31 10:40



这话听着怎么这么耳熟?
发表于 2010-1-31 12:45:41 | 显示全部楼层
很好,不只是学到转换的方法,还学会学习的方法
发表于 2010-1-31 17:56:06 | 显示全部楼层
楼主,我们拥有同样的AU3想法。调用外部工具没意思,应该用纯AU3来实现,这样才有趣。但我不会~
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-9-22 14:40 , Processed in 0.087454 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表