![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-18 22:11 |
共 47,814 主题排行 / 349,908 发帖 / 今日 1 篇 / 48,259 会员排行 |
| DOS开发编程 & 发展交流 (开发室) » 4K COPY 小工具,支持長檔名、多來源、目錄拷貝等功能 |
| 可打印版本 2,271 / 10 |
| 第1楼 silveregg | 发表于 2007-03-22 16:52 |
| 初级用户 发帖 24 积分 66 | |
|
4K COPY 小工具,支持長檔名、多來源、目錄拷貝等功能 幾年前寫的小程式,最近要做啟動碟就翻出來玩
看看有沒有朋友可以幫忙測試 ![]() 原本的目的是寫一個可以和 DOSLFN 合作的 xcopy 工具 但懶的寫太多功能,只實作了最常用的 /s 參數 之前寫完後幾乎沒有測試,所以可能有一些 Bug 使用時(尤其是加了 /M 參數時)要多加小心 參數說明: CP 來源 來源可有多個,可用萬用符,最後一個參數指定目的 若只有一個參數,則視其為來源,目的為目前目錄,同 DOS 的 COPY /S 子目錄拷貝 /M 移動檔案(拷貝成功後刪除來源) /J 結合文件 /D 指定目的為目錄,非文件 /V 檢驗拷貝結果 /Y 不詢問,總是回答 Yes /N 即使在有長檔名支援的環境下也不使用長檔名 補充說明: 1. 若無 /j 或 /d,且無法判斷目的為文件或目錄時,會出現詢問 2. 長檔名支援需在 Win9x/2K/XP 下或純 DOS 掛載 DOSLFN 或 LFNDOS 3. 指定目的為目錄時,可自動建立不存在的目錄和子目錄 http://zhenlove.com.cn/cndos/fileup/files/cp.zip [ Last edited by silveregg on 2007-3-22 at 06:47 PM ] |
|
| 第2楼 Wengier | 发表于 2007-03-22 17:43 |
| 系统支持 发帖 10,521 积分 27,736 | |
|
简单的测试了一下,觉得写得十分不错,暂时未发现bug。过两天有空的时候将做更详细的测试。
建议加入一个选项(比如/I):只复制不存在的文件,而自动忽略已存在的文件,相当于“不詢問,總是回答 No”。另外,建议改为在询问是否覆盖文件时直接按下Y、N等键即可,而无需再按回车键。 |
|
| 第3楼 silveregg | 发表于 2007-03-23 07:51 |
| 初级用户 发帖 24 积分 66 | |
|
感謝 Wengier 大的測試和建議
目前已知 bug: 在 XP 命令列視窗下無法正確判斷磁碟剩餘空間(拷貝大檔案時會誤判空間不足) 不過這似乎是 XP 本身的問題,目前還沒有想到解決的辦法... 在 DOS 和 Win98 下無此問題 |
|
| 第4楼 Wengier | 发表于 2007-03-24 19:00 |
| 系统支持 发帖 10,521 积分 27,736 | |
Originally posted by silveregg at 2007-3-22 06:51 PM: 嗯,不过一般都会在DOS下使用它了,因为只有DOS下真正需要这个软件。在XP下嘛,通常就会直接用XP自带的支持长文件名的XCOPY了。 顺便说一下,也许将这个软件改名为XCP更好些,一来可以表示它比普通的COPY更加强大,支持更多功能,而且也可以与Unix/Linux/Cygwin中的CP命令相区别,避免发生混淆。 |
|
| 第5楼 Michael | 发表于 2007-03-24 23:28 |
| 钻石会员 发帖 3,041 积分 10,056 | |
|
是啊,这个软件只要能在dos下表现完美就可以了。支持长文件名简直太好了。
|
|
| 第6楼 silveregg | 发表于 2007-03-25 05:10 |
| 初级用户 发帖 24 积分 66 | |
|
測試時發現在 DOS 環境下,還是無法正確處理某些CP950的繁中檔名
已確定是 DOSLFN 的問題,目前正嘗試聯絡作者協助改進 (雖然 DOSLFN 有附源碼,但無奈德文說明實在看不懂,又懶得慢慢研究) 等所有問題都解決了,計劃重新製作 XCP 並且加入以上建議的功能 |
|
| 第7楼 Wengier | 发表于 2007-03-31 14:35 |
| 系统支持 发帖 10,521 积分 27,736 | |
Originally posted by silveregg at 2007-3-24 04:10 PM: 现在那边有什么进展吗? |
|
| 第8楼 johnsonlam | 发表于 2007-04-01 00:39 |
| 银牌会员 发帖 497 积分 1,410 来自 九龍,香港 | |
Originally posted by silveregg at 2007-3-23 07:51 AM: 在 XP 下 必 需 用 Win32 的 功 能 , 否 則 不 會 準 確 , 但 這 樣 做 在 純 DOS 下 又 不 兼 容 。 解 決 方 法 不 是 沒 有 , 但 前 者 笨 一 點 , 後 者 挺 麻 煩 的 ... 1) 分 開 DOS 版 和 Win32 Console 版 ( 一 如 OneDir 和 OneDir32 ) 2) DOS header 有 所 謂 Stub 的 東 西 去 判 斷 是 DOS 或 Win32 ( 從 MSVC 6 就 有 這 功 能 ) , 把 Win32 和 DOS 放 在 一 個 檔 案 內 , 憑 Stub 判 斷 Win32 和 DOS 版 跳 到 相 關 位 置 |
|
| 第9楼 johnsonlam | 发表于 2007-04-01 00:43 |
| 银牌会员 发帖 497 积分 1,410 来自 九龍,香港 | |
Originally posted by silveregg at 2007-3-25 05:10 AM: 可 聯 系 Jason Hood , 他 是 澳 洲 人 , 可 用 英 語 。 網 頁 : http://www.geocities.com/jadoxa/doslfn/index.html 電 郵 : jadoxa@yahoo.com.au 標 題 必 須 是 DOSLFN |
|
| 第10楼 silveregg | 发表于 2007-04-01 16:11 |
| 初级用户 发帖 24 积分 66 | |
|
用stub的方法我有想過,可是一來增加檔案大小,二來在win32下此工具顯然不實用,所以就沒有考慮了
其實 stub 並非判斷後跳至相關位置, stub 本身就是完整的 DOS 程式。因為基本上 DOS 和 Win32 的程式是完全不相容的,正常情況下無法共用程式碼。不過這是題外話,不在此討論了 還是感謝 johnsonlam 給的建議 至於聯絡 Jason Hood 先生,我之前有寫信給他並說明問題 得到的回復是:
也就是說他會注意一下,只是不知道何時能改進問題 ![]() |
|
| 第11楼 xiagege | 发表于 2007-09-24 22:37 |
| 新手上路 发帖 6 积分 12 | |
|
????????????? 看 看!!!!!!!!!
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |