¾Ç¤¤¤å¥Î¹q¸£¡@µØ³q¤§®a



§Q¥Î¼¶¼gµ{§Ç²¤Æ¤Wºô§@·~

§õ¡@²»

²{¦b¤j¦h¼Æ¤H¤Wºô³£¦³¬O³z¹L¼·¸¹¼Ò¦¡¨Ó¶i¦æªº¡A«Ü¦h±¡ªp¤U¨Ï¥ÎªÌ¼·³q¹q¸Ü«á¥X²{¤@­Ó²×ºÝ®Ø¡A´£¥Ü¨Ï¥ÎªÌ¿é¤J¤Wºô¨Ï¥ÎªÌ¦W©M±K½X¡]¦p¹Ï©Ò¥Ü¡^¡C²{¦b¥X²{¤F56K Modem¡BISDNµ¥¡A¤£¤ÖISP¬°¤F§l¤Þ«È¤á¡A¯É¯É´£¨Ñ¬ÛÀ³ªA°È¡A³o¼Ë¨Ï¥ÎªÌªº²×ºÝ¥i¯à¤£¤î»Ý­n§A¿é¤J¨Ï¥ÎªÌ¦W©M±K½X¡A¥i¯à»Ý­n§A¿ï¾Ü±µ¤J¼Ò¦¡¦pPPP¡BSLIP¡BISDNµ¥µ¥¡C¨C¦¸³o¼Ë§@·~°_¨Ó¤]°÷Ácº¾ªº¡C

²{¦b¦n¤F¡AWin97´£¨Ñ¼¶¼gµ{§Ç¥\¯à¯à²¤Æ¤Wºô§@·~¡AÁö»¡³o¤@¼Ò¦¡¦­¤w¦bUnix©MLinux¨Ï¥ÎªÌ¤¤¬y¦æ¡A¦ý¤@ª½¤£¬°Windows ¨Ï¥ÎªÌ©Òª¾¡A¦]¬°Windows ¥»¨­¨S¦³¦b¨ä¼·¸¹ºô¸ô´£¨Ñ¬ÛÀ³ªº¼¶¼gµ{§Ç¥\¯à¡C¼¶¼gµ{§Çªº¹ê½è¬O§Q¥Î¤@¨t¦C«ü¥O¨ÓºNÀÀ¨Ï¥ÎªÌªº¿é¤J°Ê§@¡A³o¼Ë¨Ï¥ÎªÌ´N¤£»Ý³z¹LÁä½L¨Ó¿é¤J³o¨Ç¥Ã»·­«½Æªº¦r¥À¤F¡A¦Ó¥B¤]´î¤Ö¤F¥X¿ùªº¾÷·|¡C¤U­±§Ú­Ì¥ý¤¶²Ð¤@¨Ç¼¶¼gµ{§Ç¤¤±`¥Îªº«ü¥O¡G

Transmit¡G¶Ç¿é¸ê®Æ¡A³o¬Û·í©ó±N¨Ï¥ÎªÌ¿é¤Jªº¤º®e¶Ç¿éµ¹ISPªº¦øªA¾¹¡C

Waitfor¡Gµ¥«Ý±µ¦¬¸ê®Æ¡A³o¬Û·í©óµ¥«Ý²×ºÝ¥X²{ªº­n³Zµ¥¡C¥u¦³®Ú¾Ú¥X²{ªº´£¥Ü¦r¤¸¡A¨Ï¥ÎªÌ¤~ª¾¹D¿é¤J¤°»ò¡C

Halt¡G¦pªG¿é¤J¤£¥¿½T©Î¨S¦³«Ø¥ß¥¿½Tªº³s±µ¡A´N±¾Â_Ápµ²¡C
¨ä¥¦¤@¨Ç«ü¥O¬Oµ{§Ç³]­p»y¨¥¤¤ªº¤@¨Ç°ò¥»«ü¥O¦pIf -Then, Whileµ¥¡C³o¨Ç«ü¥O¦pªG§Aª¾¹D¤@¨Ç°ò¥»ªºµ{¦¡³]­pª¾ÃÑ¡A¬O¤£Ãø²z¸Ñªº¡C·íµM¡A¦pªG§A¹ïµ{¦¡³]­p¤@¬¤£³q¡A¤]¤£­nºò¡AWin97´£¨ÑÀ³§A¤@¨Ç½d¥»¨Ñ§A¿ï¾Ü¡A§A¥i¥H¦b³o¨Ç½d¥»ªº°ò¦¤W¶i¦æ­×§ï¡A¥H¾A¦X§Aªº­n¨D¡C

§Ú­Ì¦b³oùؤ]µ¹§A´£¨Ñ¤@­Ó½d¥»¡A¥¦¬O¬°¤j¦h¼Æ³z¹LPPP¼Ò¦¡¤Wºôªº¨Ï¥ÎªÌ³]­pªº¡C

;¤À¸¹ªí¥Ü³o¤@¦æ¬OµùÄÀ¡C
;¨C¤@­Ó¼¶¼gµ{§Ç³£¦³¤@­Ó¥Dµ{¦¡¿é¤J°ð¡C

proc main

;¹Á¸Õ¦¸¼ÆnTries¬°3¦¸¡C
¡@integer nTries = 3

;°²©w²×ºÝ´£¥Ü¦r¤¸¤¤´£¥Ü¨Ï¥ÎªÌ¿é¤J¨Ï¥ÎªÌ¦Wªº´£¥Ü¦r¤¸¬Ousername:
;§A¥i¥H®Ú¾Ú§AªºISPªº¨ãÅé´£¥Ü¦r¤¸­×§ï³o¤@­È¡C
;µ¥­Ô®É¶¡¬O3¬í¡C
¡@string szLogin = "username:"
¡@integer nLoginTimeout = 3

;°²©w²×ºÝ´£¥Ü¦r¤¸¤¤´£¥Ü¨Ï¥ÎªÌ¿é¤J¨Ï¥ÎªÌ±K½Xªº´£¨D²Å¬Opassword:
;§A¥i¥H­n®Ú¾Ú§AªºISPªº¨ãÅé´£¥Ü¦r¤¸­×§ï³o¤@­È¡C
;µ¥­Ô®É¶¡¬O3¬í¡C
¡@string szPW = "password:"
¡@integer nPWTimeout = 3

;©µ¿ð2¬í¥Hµ¥´£¥Ü¦r¤¸¥X²{
¡@delay 2
;
   while 0 < nTries do
¡@waitfor szLogin then DoLogin
¡@until nLoginTimeout
TryAgain:
¡@transmit "^M" ; ping
¡@nTries = nTries - 1
¡@endwhile

¡@goto BailOut

;¿é¤J¨Ï¥ÎªÌ¦W
DoLogin:
; Enter user ID
¡@transmit $USERID, raw
¡@transmit "^M"

;µ¥«Ý¥X²{±K½X´£¥Ü¦r¤¸
¡@waitfor szPW until nPWTimeout
¡@if FALSE == $SUCCESS then
¡@goto TryAgain
¡@endif

; Send the password
¡@transmit $PASSWORD, raw
¡@transmit "^M"

¡@goto Done

BailOut:
¡@; Something isn't responding. Halt the script
¡@; and let the user handle it manually.

¡@set screen keyboard on
¡@halt

Done:
endproc

¤U­±¨ãÅ餶²Ð§A§@·~¤èªk¡C
½s¦n§Aªº¼¶¼gµ{§Ç¤å¥ó¡]¹ê»Ú¤W§A¥u»Ý­n§ó§ï¤W­±ªºµ{§Ç¤¤ªº´£¥Ü¦r¤¸§Y¥i¡^¡C
¿ï¨úªþ¨ú¤¤ªº¼·¸¹ºô¸ô(¦p¹Ï2©Ò¥Ü)¡A¦b§Aªº¼·¸¹ºô¸ô¼Ò¦¡¤WÂI¿ï¥kÁä¡A¥X²{¤@¤u§@²M³æ¿ï¶µ¡A¿ï¨ú¤º®e¡C

¿ï¨ú¼¶¼gµ{§Ç¡]¦¹®Éª`·N­n§ó§ï§AªºModem³]©w¡A¨Ï¤§¤£¥²¥X²{²×ºÝ´£¥Üµøµ¡¡^¡C¿é¤J§AªºÀɮצW(¦p¹Ï3©Ò¥Ü)¡C

²{¦b§A´N¥i¥H¶}©l¼·¸¹¤F¡A¿é¤J§Aªº¨Ï¥ÎªÌ¦W©M±K½X¨Ã«O¦s¥¦¡A³o¼Ë§A´N¤£¥Î¤U¦¸¦A¿é¤J¤F(¦p¹Ï4©Ò¥Ü)¡C


[ªð¦^¤W­¶]