※ 引述《nbc.bbs@bbs.ntnu.edu.tw (吃喝等當兵......)》之銘言:
: 各位先進好:
: 最近開始用彩色的功能做作品,
: 可是上傳時會發生一個問題:
: 就是那個ANSI的控制碼會被吃掉,
: 所以每次都還要補控制碼,十分麻煩.
: 想請問大家怎麼上傳,可以把控制碼完整的傳上來?
改成你上的那個站的相對碼吧..不然 ALT+27 會被粗掉的啦..
還有有一個TELIX 的巨集檔你可以試試看..
OK..我用給你..不過這東西你在各ASCIIART 的精華區應該都找的到才對..
//●─────────── UPANSI.SLT 檔頭 ────────────●
// 前言:您有使用 TELIX 上傳彩色 ASCII (含 [ESC] 控制碼) 的困擾嗎 ?
// 本程式可使您以較輕鬆的方式讓您順利 POST 彩色的 ASCII 檔橺
// 抓檔:若您使用 TELIX , 但不知如何抓下本檔, 則可 telnet 工技 BBS 站
// (IP Address : 140.118.2.100) , 進入ASCIIart 版版之後, 以指令
// ? (問號) 往回找標題為「輕鬆上載彩色 ASCII 檔的程式★大道★」
// 的本篇 POST , 找到後, 按大寫的 Z 再按 Y [Enter] 即可順利下載
// 本程式橺
// 檔名:UPANSI.SLT
// 安裝:當下載本程式之後, 請先按以下步驟安裝:
// ①抓下本檔後, 自行以文書處理器刪除本程式檔檔頭至檔尾以外的網
// 路訊息, 並以 UPANSI.SLT 檔名重新存檔橺
// ②以 TELIX 之 CS.EXE 編譯本程式, 以產生 UPANSI.SLC 執行檔
// ③建立 ESC21.TAB 檔橺
// 【註】由於每個站的 ANSI 控制碼不一, 有的為 ASCII 27, 有的為
// ASCII 22, 有的為 ASCII 21, ESC21.TAB 即為上傳時的轉碼
// 對照表橺
//
// 【如何建立 ESC21.TAB 轉碼檔】
//
// 您可於 ESC21.TAB 建立所須的ASCII 轉碼對照表, 以工技電子
// BBS 站為例, 若您的 ASCII 檔之 ANSI 控制碼是以 ASCII 27 存
// 檔, 則建立 ASCII 27 轉為 ASCII 21 的 ESC21.TAB 檔橺
//
// 建立方式一:直接用文書軟體編輯 ESC21.TAB , 檔案內容如下框
// 所示橺
// ┌──────┐
// │27=21 │
// │ │
// └──────┘
//
// 建立方式二:除了直接用文書軟體編輯 ESC21.TAB 之外, 尚可於
// TELIX 下直接按 Alt-W 選 Outgoing 再選 Edit 編
// 輯, 將 27 上傳時的原值 27 改為 21, 最後選Save
// 以 ESC21.TAB 存檔橺
//
// ● ESC21.TAB 僅在初次使用本程式時建立一次, 爾後若在他站的
// ANSI 控制碼不同時才需重設橺
//
// ④至此已完成所需的檔案 UPANSI.SLC 及 ESC21.TAB, 此兩個檔請放
// 在 TELIX 子目錄下橺
// ⑤進入 BBS , 當您在編輯文章或寫信時, 要插入或上載 ASCII 檔時
// 只要按 Alt-G 後輸入 UPANSI [Enter] 便開始執行 UPANSI.SLC
// 接著輸入所要上載的彩色 ASCII 檔所在路徑及檔名即可橺
// 功能:將彩色的 (i.e:含 ANSI 控制碼) 之 ASCII 檔上傳至 BBS
// 語言:SALT
// 編譯:C>CS UPANSI
// 產生:UPANSI.SLC
// 執行:①進入 TELIX 通訊軟體橺
// ②按 Alt-G
// ③輸入 UPANSI [Enter]
// ④輸入要上傳的彩色 ASCII 檔檔名橺
// 說明:本程式執行時會自動暫存並恢復正常畫面, 執行本程式不會破壞您原
// 先的畫面,若您使用 TELIX 開多個視窗時有畫面被破壞的困擾, 可參
// 考本程式的設計, 我在每行程式皆有加註解橺
// 另, 一般的 ASCII 檔 (無 ANSI 控制碼) , 亦可使用本程式上載橺
// 作者:★大道★
// 信址:a0.bbs@bbs.et.ntit.edu.tw
// 日期:1996.8.28 【暑假最後獻禮】
main()
{ int i,ret; //變數宣告
str fname[50];
//在不破壞原畫面的情形下輸入所要上傳的 ASCII 檔檔名
i=vsavearea (0,0,79,24); //暫存整個 TELIX 畫面
clear_scr (); //清除整個 TELIX 畫面
box(0,0,70,2,'*', 0,0x4C); //顯示輸入框並輸入檔名
pstraxy("請輸入要上傳的 ANSI 檔之路徑與檔名:",2,1,0x5B);
gets(fname, 31); //輸入路徑 & 檔名
vrstrarea (i); //恢復原畫面
//讀取上傳時的 ASCII 碼轉換表格, 使 ASCII 27 上傳時轉為 ASCII 21
i=transtab ("ESC21.TAB",1);
if (i==-1) prints("Error !");
//開始上傳所指令的 ASCII 檔
ret=send ('A',fname); //上傳所指定的 ASCII 檔名
//恢復原來的 ASCII 轉換表
i=transtab ("*CLEAR*",1);
if (i==-1) prints("Error !");
//顯示上傳的結果
i=vsavearea (0,0,79,24); //暫存整個 TELIX 畫面
clear_scr (); //清除整個 TELIX 畫面
if (ret==-1) pstraxy("◆放棄檔案傳送!!",2,4,0x0B);
else if (ret==-2) pstraxy("◆線路已切斷!!",2,4,0x0B);
else pstraxy("●檔案上傳成功地結束!!",2,4,0x0B);
//按任意鍵後恢復原畫面
pstraxy("★請按任意鍵繼續...",2,6,0x0B); //顯示提示訊息
ret=inkeyw(); //等待按下任意鍵
vrstrarea (i); //恢復原畫面
}
//●─────────── UPANSI.SLT 檔尾 ────────────●
--
| ‧ ● ‧ ‧ ‧ ‧ ◢◣ ‧ ● ‧ ◢◣◥██◣ ● ‧
-‧- ‧ ‧ ‧ ‧ ● ‧ ‧ ◢█◣‧ ‧ ◢██◣◥██◣ ● ‧
|︿︿ ∩∩ ◢◣ ‧ ● ◢██◣ ● ‧ ██▉████ ‧
(妹ミ)小 ) ◢█◣ ● ‧ ◢███◣ ‧ ● █│▉█┼┼█‧ ●
(妹ミ)建 )◢██◣ ▁▂▄▅▇█▇▆▅▄▃▂█│▉█████▁▂▃
▔▔∫▔ ∫ ██████████████████小建-溫暖の窩-████
--
※ Origin: 台中市教育局大台中站(bbs2.tceb.edu.tw) ◆ From: ts1.tceb.edu.tw