Jooel,

I've tested the integrated bbCheckerII script on a W95 box and.... it worked with minor adjustments.

Hmmm, minor adjustments I here you say. Well the only thing I adjusted was the way yhe IE browser was started. I've got W95 OSR2.5 Dutch with IE5.5 and the run 'explorer didn't work. After changing the explorer command to the start command, it worked fine.

I've also corrected the # of forums (8 not 7)

So the taskbar() works fine on W95 too.

How do we get rid of the annoying dos box???

W95_bbChecker.kix
code:
;
; BBChecker II - KiXtart Bulleting Board New Post Checker (RC-4)
;
; Dependencies (included in package):
; Wkix32 - KiXtart 4.11
; kixforms.dll - KiXForms (build 21)
; IE5 or higher
;
; -Lonkero
;
;todo's before release:
; parse takes the page as input.
; this way later update of var names is no problem.
;
; installation package
;
Break on
Gosub "init"

Play "1g256t1d600f1g256t1d600f1g256t1d600f1g256t4d400f"

While $form.visible parse()
If $show
$msg.caption = $show $hlurl.listindex=0 formlink($hlurl.text)
$form.caption = $show+" - BBChecker II"
If $Beep
Play "1g256t1d500f1g256t1d400f1g256t1d600f"
EndIf
$tmp=3
If $focus=0 AND $sslider
$form.show(2)
slide($msg.caption)
$form.height=$tmp
inline()
EndIf
Else
$tmp=$looptime
EndIf
$time=@ticks+($tmp*1000)
Do
Sleep 0.2
inline()
Until @error OR ($time < @ticks)
Loop

Gosub "final"

Exit 0


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function inline()

$=Execute($form.doevents(1))
$=Execute($form.doevents(1))

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function parse()

$httpObj.Open("GET","http://kixtart.org/cgi-bin/ultimatebb.cgi?", NOT 1)
$httpObj.send() $data=$httpObj.Responsetext

If 1000<Len($data)
inline()
$data=SubStr($data,InStr($data,'ubb=get_profile')+10)
$bl.clear $bll.clear

If InStr($data,'ubb=get_profile')<InStr($data,'guest(s)')
$data=SubStr($data,InStr($data,'ubb=get_profile'))
$users=SubStr($data,1,InStr($data,' and'))

For Each $user in Split($users,'</a>, ')
$bll.additem(SubStr($user,InStr($user,';u=')+3,InStr($user,'">')-3-InStr($user,';u=')),-1)
$bl.additem(SubStr($user,InStr($user,'">')+2),-1)
Next
$bl.removeitem($bl.listcount-1)
EndIf

For $c=0 to 7
$data=SubStr($data,InStr($data,'&nbsp;<a href=')+15)
$y[$c]=SubStr($data,1,InStr($data,'"')-1)
$data=SubStr($data,InStr($data,'>')+1)
$x[$c]=SubStr($data,1,InStr($data,'</a>') - 1)+" "
$x[$c]=join(Split($x[$c],"&quot;"),'"')
$data=SubStr($data,InStr($data,Chr(10))+1)

If InStr(SubStr($data,1,1),"<")
$users=SubStr($data,7,InStr($data,Chr(10))-7)
Else
$users=SubStr($data,1,InStr($data,Chr(10))-1)
EndIf

$x[$c]=$x[$c]+$users

If $my AND InStr($users,$logon)
$dataold[$c]=$x[$c]
EndIf
Next

$stamp=" "+Left(@time,5)+" on @mdayno. of @month"

Select
Case "Loading elements..."==$msg.caption $show="" $fbb.enabled=1 $fbh.enabled=1 $msg.caption = ""
Case $x[0]<>$dataold[0] $show=$x[0] $hl.additem($x[0]+$stamp+" {starters}",0) $hlurl.additem($y[0],0)
Case $x[1]<>$dataold[1] $show=$x[1] $hl.additem($x[1]+$stamp+" {scripts}",0) $hlurl.additem($y[1],0)
Case $x[2]<>$dataold[2] $show=$x[2] $hl.additem($x[2]+$stamp+" {discussions}",0) $hlurl.additem($y[2],0)
Case $x[3]<>$dataold[3] $show=$x[3] $hl.additem($x[3]+$stamp+" {COM}",0) $hlurl.additem($y[3],0)
Case $x[4]<>$dataold[4] $show=$x[4] $hl.additem($x[4]+$stamp+" {UDF}",0) $hlurl.additem($y[4],0)
Case $x[5]<>$dataold[5] $show=$x[5] $hl.additem($x[5]+$stamp+" {beta}",0) $hlurl.additem($y[5],0)
Case $x[6]<>$dataold[6] $show=$x[6] $hl.additem($x[6]+$stamp+" {suggestions}",0) $hlurl.additem($y[6],0)
Case $x[7]<>$dataold[7] $show=$x[7] $hl.additem($x[7]+$stamp+" {FAQ}",0) $hlurl.additem($y[7],0)
Case 1 $show=0
EndSelect
EndIf

$dataold=$x

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function show($)

$form.height=$form.height+(100*$)

If $form.height=340
$hl.top=102
$hbh.top=275
$hbo.top=275
$hba.top=275
Else
$hl.top=2
$hbh.top=175
$hbo.top=175
$hba.top=175
EndIf

If $=2
$hl.visible=1
$hbh.visible=1
$hbo.visible=1
$hba.visible=1
$fbh.enabled=0
Else
$bl.visible=1
$blt.visible=1
$bbh.visible=1
$bbp.visible=1
$bbr.visible=1
$fbb.enabled=0
EndIf

$form.top=$screen-taskbar()+3-$form.height
$msg.top = $form.height-38
$fbe.top = $form.height-20
$fbh.top = $fbe.top
$fbb.top = $fbe.top
$fbs.top = $fbe.top
$form.show(1)
inline()

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function hide($)

$form.height=$form.height-(100*$)

If $=1
$bl.visible=0
$bbh.visible=0
$bbp.visible=0
$bbr.visible=0
$fbb.enabled=1
$blt.visible=0
Else
$hl.visible=0
$hbh.visible=0
$hbo.visible=0
$hba.visible=0
$fbh.enabled=1
EndIf

$form.top=$screen - (taskbar() + $form.height - 3)
$msg.top = $form.height-38
$fbe.top = $form.height-20
$fbh.top = $fbe.top
$fbb.top = $fbe.top
$fbs.top = $fbe.top
$hl.top=2
$hbo.top=175
$hba.top=175
$hbh.top=175
$form.show(1)
inline()

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function formlink($in)

$form.onmousemove="$$msg.fontbold=0 $$msg.fontunderline=0"
$msg.onmousemove="$$msg.fontbold=1 $$msg.fontunderline=1"
$msg.onmouseup="$$form.show(2) run 'start "+Chr(34)+$in+Chr(34)+"'"

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function TaskBar()
If @dos=="4.0"
$_S="StuckRects"
Else
$_S="StuckRects2"
EndIf

$TaskBar=Val("&"+SubStr(ReadValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\$_S","settings"),41,2))

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function slide($sc)

If InStr($sc,'"')
$sc=join(Split($sc,'"'),"'")
EndIf

;run '@scriptdir\wkix32 "@scriptdir\slider.kix" $$sc="$sc" $$b='+taskbar()

; Begin edit...Commented the above command. The rest of this function
; and the Timer_Timer() function below this one, is my
; modifications to the code.

$b=taskbar()
$h1 = 23
$w = 300 ; Len($sc)*15+10 ; 300
$h = 0
$DirectionIsUp = 1

$Popup = CreateObject("Kixtart.Form")

$Popup.BorderStyle = 0
$Popup.Height = 0
$Popup.Width = $w
$Popup.fontsize = 10
$Popup.fontname = "helvetica"
$Popup.forecolor = 0
$Popup.fontbold = 1
; $Popup.Top = $Popup.screen.height - $b - $h - 2 - 500
; $Popup.Left = $Popup.Screen.Width - $w - 2 - 500
$Popup.Top = ($Popup.screen.height - $b) / 2
$Popup.Left = ($Popup.Screen.Width - $w) / 2

$Popup.ShowInTaskbar = False ; Not ready yet !
$Popup.TopMost = True

$popLabel = $Popup.Label($sc,0,0,$w,$h1)
$popLabel.BACKCOLOR = $Popup.RGB(255,255,0)
$popLabel.BorderStyle = 3 ; 4
$popLabel.Alignment = 2
$Timer = $Popup.Timer(10)
$Timer.OnTimer = "Timer_Timer()"

Sleep 0.5

$Popup.Show

While $Popup.Visible
$=Execute($Popup.DoEvents)
Loop

$Popup = ""
$Timer = ""
$popLabel = ""

EndFunction


Function Timer_Timer()
$Timer.Interval = 10
If $DirectionIsUp
$h = $h + 1
$popup.height = $h
$Popup.Top = $Popup.Top - 1
If $h >= $h1
$Timer.Interval = 2500
$DirectionIsUp = 0
;play "256t1d500f"
EndIf
Else
$h = $h - 1
$popup.height = $h
$Popup.Top = $Popup.Top + 1
If $h <= 0
$Timer.Enabled = 0
$Popup.Hide
EndIf
EndIf
EndFunction



;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
:init

$form = CreateObject("kixtart.form")
Global $x[7] $dataold=$x $y=$x
$screen=$form.screen.height

$form.caption = "BBChecker II"
$form.width = 430
$form.height = 40
$form.Left = $form.screen.width - $form.width - 20
$form.borderstyle = 0
$form.fontsize = 8
$form.fontname = "helvetica"
$form.forecolor = 0
$form.fontbold = 0
$form.onlostfocus = "$$focus=0"
$form.ongotfocus = "$$focus=1"

$msg = $form.label("Loading elements...",15,2,410,12)
$msg.onmouseup="$$form.setfocus()"

$form.top = $screen - (taskbar() + $form.height - 3)
$fbe = $form.commandbutton("Exit",2,20,65,19)
$fbe.onclick = "$$form.visible = 0"
$fbs = $form.commandbutton("Miscellaneous",69,20,80,19)
$fbs.onmouseup = "inline() misc()"
$fbh = $form.commandbutton("History",$form.width - 68,20,65,19)
$fbh.enabled=0
$fbh.onclick = "show(2) $$form.setfocus()"
$fbb = $form.commandbutton("Buddyes",$fbh.Left - 68,20,65,19)
$fbb.enabled=0
$fbb.onclick = "show(1) $$form.setfocus()"
$form.visible = 1

inline()

;history block
$hl = $form.listbox(0,2,2,426,170)
$hl.visible = 0
$hl.OnDblClick = "$$form.show(2) $$hlurl.listindex=$$hl.listindex run 'start "+Chr(34)+"'+$$hlurl.text+'"+Chr(34)+"'"

inline()

$hl.onclick="$$form.setfocus()"
$hbh = $form.commandbutton("Hide",$form.width - 80,175,75,20)
$hbh.visible = 0

inline()

$hbh.onclick = "hide(2) $$focus=1"
$hbo = $form.commandbutton("Show Topic",5,175,75,20)
$hbo.visible = 0

inline()

$hbo.onclick = "$$form.show(2) $$hlurl.listindex=$$hl.listindex run 'start "+Chr(34)+"'+$$hlurl.text+'"+Chr(34)+"'"
$hba = $form.commandbutton("Today's Active topics",150,175,130,20)
$hba.visible = 0

inline()

$hba.onclick = "$$form.show(2) run 'start "+Chr(34)+"http://81.17.37.55/board/ultimatebb.php?ubb=get_daily"+Chr(34)+"'"
$hlurl = $form.listbox(0,0,0,0,20)
$hlurl.visible = 0

;buddyes block
$bl = $form.listbox(0,2,15,200,80)
$bl.visible = 0
$bl.onclick="$$form.setfocus()"

inline()

$bll = $form.listbox(0,0,0,0,20)
$bll.visible = 0
$bll.ongotfocus="$$form.setfocus()"

inline()

$blt = $form.label("Logged on users:",5,2,150,12)
$blt.visible = 0
$blt.ongotfocus="$$form.setfocus()"

inline()

$bbh = $form.commandbutton("Hide",$form.width - 80,15,75,20)
$bbh.visible = 0
$bbh.onclick = "hide(1) $$focus=1"

inline()

$bbp = $form.commandbutton("Show Profile",210,15,75,20)
$bbp.visible = 0
$bbp.onclick = "$$form.show(2) $$bll.listindex=$$bl.listindex run 'start "+Chr(34)+"http://81.17.37.55/cgi-bin/ultimatebb.cgi?ubb=get_profile;u='+$$bll.text+'"+Chr(34)+"'"

inline()

$bbr = $form.commandbutton("Recent Posts",210,40,75,20)
$bbr.visible = 0
$bbr.onclick = "$$form.show(2) $$bll.listindex=$$bl.listindex run 'start "+Chr(34)+"http://81.17.37.55/cgi-bin/ultimatebb.cgi?ubb=recent_user_posts;u='+$$bll.text+'"+Chr(34)+"'"

inline()

Global $focus $focus=1

;settings
$bk="HKEY_CURRENT_USER\Software\Jooel\bbChecker"

If NOT KeyExist($bk)
$=MessageBox("bbChecker II installation corruption!@crlfThis propably is due to unclean installation@crlfRe-install needed","bbChecker II",16)
Exit 0
EndIf

$looptime=Val(ReadValue($bk,"looptime"))
$Beep=Val(ReadValue($bk,"beep"))
$sslider=Val(ReadValue($bk,"slider"))
$my=Val(ReadValue($bk,"my"))
$logon=ReadValue($bk,"logon")

;xmlhttp related func
$cache=ReadValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings","SyncMode5")
$=WriteValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings","SyncMode5","3","reg_dword")
$httpObj = CreateObject("microsoft.xmlhttp")

Return



;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
:final

$ = WriteValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings","SyncMode5",$cache,"reg_dword")

Return


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function misc()

$f = CreateObject("kixtart.form")
$f.caption = "bbChecker II - Miscellaneous"
$f.width = 250
$f.height = 250
$f.top = $screen/2
$f.Left = $f.screen.width-720
$f.fontbold=1
$f.fontname = "Bookman Old Style"
$f.printxy(20,10,"bbChecker II")
$f.fontbold=0
$f.printxy(20,30,"Based on:")
$f.printxy(20,45,"Kixtart 4.11 (wkix32.exe)")
$f.printxy(20,60,"KixForms GUI (KixForms.exe)")
$f.fontname = "helvetica"
$fp = $f.checkbox("Don't show my posts",20,135,130,15)
$f.printxy(150,120,"Logonname:")
$fpt = $f.textbox($logon,150,135,65,17)
$lt = $f.textbox($looptime,150,158,25,17)
$f.printxy(20,160,"Post check interval (secs):")
$fo = $f.checkbox("Beep on post",20,180,110,15)
$fs = $f.checkbox("Show slider",20,200,90,15)
$fp.value = $my

If $fp.value
$fpt.enabled=1
Else
$fpt.enabled=0
EndIf

$fo.value = $Beep
$fs.value = $sslider
$fb = $f.commandbutton("OK",170,205,75,20)
$fb.onclick = 'if val($$lt.text)<10 $$lt.text="10" else $$f.visible=0 endif'
$f.show
While $f.visible
$=Execute($f.doevents(1))
If $fp.value
$fpt.enabled=1
Else
$fpt.enabled=0
EndIf

If 99<Val($lt.text)
$lt.text="99"
EndIf
Loop

$looptime = Val($lt.text)
$Beep = $fo.value
$sslider = $fs.value
$my = $fp.value
$logon=$fpt.text
$=WriteValue($bk,"looptime",""+$looptime,"reg_sz")
$=WriteValue($bk,"beep",""+$Beep,"reg_sz")
$=WriteValue($bk,"slider",""+$sslider,"reg_sz")
$=WriteValue($bk,"my",""+$my,"reg_sz")
$=WriteValue($bk,"logon",""+$logon,"reg_sz")

EndFunction

_________________________
Greetz,
Patrick Rutten

- We'll either find a way or make one...
- Knowledge is power; knowing how to find it is more powerful...
- Problems don't exist; they are challenges...