Fleet-Street FAQ (скрипты) [3/7]

From
SS' bot (2:5062/27)
To
All (2:5054/37.63)
Date
2004-02-22T00:11:40Z
Area
RU.FLEETSTREET
>Q4: <*а*>ХРНБЮЪ ХМБЕПЯХЪ? Как перекодировать. (Max Alekseyev, 2:5015/60)

   Чтоб читать такие крокозябры, я скриптик набросал. Подрубаешь их,
включаешь QuickAccess для удобства. И, если видишь крокозябры типа этого
письма запускашь Win2Dos - на данном письме станет читабельным сабж, но
все остальное левым будет. Обратно, тыкаешь в Dos2Win - все становится
по-старому.

   Второй скрипт также может использоваться для написания писем через
гейт Fido->Intenet тем людям, кто токмо Win1251 читать умеет. Для этого
пишеться письмо нормальным образом, но перед записью нужно запустить
Dos2Win и записать полученные крокозябры - к адресату письмо придет в
кодировке Win1251.

___ UUEncode - Start - Dos2Win.Rar - 638 Bytes -
begin 644 Dos2Win.Rar
M4F%R(1H'`#O0<P@`#0````````#BZG0`@"L`P`$``#P#```!:5MOOJ]<A2,4
M-0L`(````&1O<S)W:6XN9G)X#!U=5,B````1&W^D]\'[J?*1*-)$AI74)"1C
MJ]9#=X+V,K+/>D+YD76%I<%,*"A<\`MI:.(Y`HYJ84"A0<@<P4+G@.>(K+Z"
M0I8^]"ME;'",CI8=U]YSG9.S]__\^(\DY.?M'-/-/-E!/`I"DD_/[6G1$GZ'
M9GP:X&W*149J!JU'140)Z@%$^JD(WH!ML34E(0_OGC25H2@(MIIP7I5*C"$O
M<)-R>0!WA9[9:=`G$I)T%402D1D%AU\QDN0]B-&MK=\XN,UOG7/"X?$XO&NN
M/'R\SR^9RVB0W4"+!?PFE76+*U/:)K55OM_75]A8N\6[S[R]['9>8^1B962]
MT/X^]6ULK/@<%0E9,5*YFO6L)WN-*"U(4J;4B4*3(K.@6EJL6KE[!BR9M&IB
M;-]%.71AR.3RN7S+N\YO.O>?T.CTNGU.KUNO?7^!@N\+#Q'F+C/93$IWM=ON
M=W)RN]W_!X?%X_(=]#-SGS^!!A0XD6-'S_/Z/3ZO7[/;[O?\/CH?+Y_0;8"B
M!)0Z1,#E,$A"&J/#[NHW7Y1W-/:W2!(*DA&C!2CCA+.US`-^&P0TV_JCV:@Z
MJ`TO?^D*)">-Z2;(BQ1!1&1J=!"`*P!4````0`,```'I,Q!X38F$(Q0U"P`@
M````=VEN,F1O<RYF<GB93LZ@)M")=$M'?Z)YGBZMVS]TXN'T*65\LX3.;EO&
MAQ8\&!$MLRL2K5-:G6,/OA<']G#LC*%29HQ9M5ZYE5V<Z^;GNF_^Z>ZW2%_J
(I^/(HL4040`
`
end
sum -r/size 8502/638 entire input file
___ UUEncode - End -

>Q5: <*С*>крипт для записи письма в файл (Oleg Ivanov, 2:5030/423.28)

   Вот, собственно преодолел-таки лень и склепал простенький субж. Нужен
он для того, чтобы каждый раз не задавать имя файла вручную, теперь имя
берётся из субжа. 'D:\Рабочий Стол\Messages\' надо поменять на свой
любимый директорий. Скрипт конечно примитивный, но полезный, особенно
если его в quick access повесить :)

/* Запись письма в файл */

Call CreateFile
Call MakeHeader
Call WriteMessage

 If Stream(FileName,C,'close')<>'READY:' then call ErrBeep
 Beep(600,250)

EXIT

ErrBeep:

/* Выхoд при ошибке */
 Beep(200,500)

exit

CreateFile:
/* Созд. файл */


 FileName='D:\Рабочий
Стол\Messages\'translate(FleetMsg.Header.Subj,,XRANGE('00'x,'1F'x)'\/:*?"<>|','_'
)'.Txt'
 If Stream(FileName,C,'query exists')<>'' then call ErrBeep

 If Stream(FileName,C,'open')<>'READY:' then call ErrBeep

return

MakeHeader:
/* Оформляем заголовок */

 FullAreaName=LEFT(' 'FleetStatus.Area.Tag' ('FleetStatus.Area.Desc') ',80)

Header.4=COPIES('=',80)

Header.0=Overlay(FullAreaName,Header.4,(80-Length(FullAreaName))%2)

Header.1=Insert(FleetMsg.Header.DateWritten,Insert(FleetMsg.Header.FromAddress,'
  From:'FleetMsg.Header.From,43),59)
 Header.2='     To:'FleetMsg.Header.To
 If FleetStatus.Area.Type='Net'
  then Header.2=Insert(FleetMsg.Header.ToAddress,Header.2,43)
 Header.2=Insert(FleetMsg.Header.DateReceived,Header.2,59)
 Header.3='   Subj:'FleetMsg.Header.Subj

return

WriteMessage:

/* Запись заголовка */
 Do Q=0 to 4
  If Lineout(FileName,Header.Q)<>0 then call ErrBeep
 End
/* Запись текста */
 Do Q=1 to FleetMsg.Text.0
   If Lineout(FileName,FleetMsg.Text.Q)<>0 then call ErrBeep
 End

return

---
 * Origin:  Volgodonsk, Russia  (2:5062/27.0)
SEEN-BY: 450/102 160 452/25 461/74 106 132 220 640 462/30 463/68 220 464/34 36
SEEN-BY: 465/62 64 204 469/125 303 550/5068 4615/21 4625/9 4626/6 5000/5000
SEEN-BY: 5002/5002 5003/34 5005/14 5006/1 5009/14 5010/77 5015/4 28 5020/37 52
SEEN-BY: 5020/69 115 128 252 321 323 362 400 549 715 758 794 902 921 982 1169
SEEN-BY: 5020/1234 1642 1822 1873 2020 2200 4400 4441 12000 5021/44 600 5022/5
SEEN-BY: 5023/11 5025/3 39 5030/69 382 423 1016 1023 1688 1900 5031/50 5036/1
SEEN-BY: 5037/21 5040/33 47 59 5042/8 5045/7 5050/9 41 5051/35 5052/4 5053/16
SEEN-BY: 5053/18 5054/1 9 10 30 37 67 79 5055/158 181 5058/24 106 5059/9 10 20
SEEN-BY: 5061/15 5062/1 17 21 27 5066/18 5069/7 5070/26 66 5071/1 5078/20
SEEN-BY: 5080/80 301 1003 5083/13 21 5085/13 5090/3 5093/4 57 5095/1 6035/1
SEEN-BY: 6083/12
PATH: 5062/27 1 5020/4441 52 5054/1 79 37