none
Eliminar KIX do script RRS feed

  • Pergunta

  • Pessoal

    Como eu poderia eliminar o KIX desse script? Esse script é para chamar umas telas que tenho de informativo que estão no Sevidor01 em html, porem joga na tela do usuário como um infomativo. O usuário clica em ok e a tela some, só que esta dando um erro por causa do KIX e eu queria deixar só no vbs....se alguem puder me ajudar agradeço.

    O Fabio Jr, que responde alguns tópicos aqui, me ajudou muito, queria ver se outros tambem poderiam analisar e dar sugestões para sumir com o KIX.

    Obrigado.

    aviso_House

    sub Aviso_HOUSE()

     strPasta = "\\Servidor01\SCAN\Telas\Telas\"
     strKIXWIN = "\\Servidor02\netlogon\kixwin"
     strArguments = ";;OK"
     strStyle = "dialogWidth:850px;dialogHeight:550px;help:no;center:yes;scroll:no"
     
      if right(strPasta,1) <> "\" then strPasta = strPasta & "\"

      '=== Define o periodo
      tHora = time
      if tHora >= #5:00# and tHora < #12:00# then
       strHorario = "manha"
      elseif tHora >= #12:01#  and tHora < #18:00# then
       strHorario = "tarde"
      else
       strHorario = "noite"
      end if

      strPasta = strPasta & strHorario

      '=== Conta Pastas
      Set fso = CreateObject("Scripting.FileSystemObject")
      Set folder = fso.GetFolder(strPasta)
      iQtdFolders = folder.subfolders.count

      '=== Randomiza
      lowerbound = 1
      upperbound = iQtdFolders
      Randomize
      iRand = Int( ( upperbound - lowerbound + 1 ) * Rnd + lowerbound )

      for each f in folder.subfolders
       i=i+1
       strPastaRnd = f.name
       if i=iRand then exit for
      next

      '=== Mostra Tela
      strAviso = strPasta + "\" + strPastaRnd + "\telaseg.html"


      Set WshShell = WScript.CreateObject("WScript.Shell")
      WshShell.Run strKIXWIN + " " + strAviso + " " + strArguments + " " + strStyle, 1, true

    END SUB

    quarta-feira, 7 de dezembro de 2011 18:08

Respostas

  • Paulo,

    Eu dei a dica 99% certa, a linha que monta strAviso tinha que vir antes do ie.navigate(strAviso)

    Ficaria assim:

    aviso_House
     
    sub Aviso_HOUSE()
    
    	strPasta = "\\Servidor01\SCAN\Telas\Telas\"
    	'strKIXWIN = "\\Servidor02\netlogon\kixwin"
    	'strArguments = ";;OK"
    	'strStyle = "dialogWidth:850px;dialogHeight:550px;help:no;center:yes;scroll:no"
    
    	if right(strPasta,1) <> "\" then strPasta = strPasta & "\"
    
    	'=== Define o periodo
    	tHora = time
    	if tHora >= #5:00# and tHora < #12:00# then
    		strHorario = "manha"
    	elseif tHora >= #12:01#  and tHora < #18:00# then
    		strHorario = "tarde"
    	else
    		strHorario = "noite"
    	end if
    
    	strPasta = strPasta & strHorario
    
    	'=== Conta Pastas
    	Set fso = CreateObject("Scripting.FileSystemObject")
    	Set folder = fso.GetFolder(strPasta)
    	iQtdFolders = folder.subfolders.count
    
    	'=== Randomiza
    	lowerbound = 1
    	upperbound = iQtdFolders
    	Randomize
    	iRand = Int( ( upperbound - lowerbound + 1 ) * Rnd + lowerbound )
    
    	for each f in folder.subfolders
    		i=i+1
    		strPastaRnd = f.name
    		if i=iRand then exit for
    	next
    
    	'=== Mostra Tela
    	
    	strAviso = strPasta + "\" + strPastaRnd + "\telaseg.html"
    	
    	set ie = WScript.CreateObject("InternetExplorer.Application")
    	'set the ie properties
    	ie.ToolBar = 0
    	ie.StatusBar = 1
    	ie.Width = 850
    	ie.Height = 550
    
    	Do While IE.Busy
    	WScript.Sleep 200
    	Loop
    
    	ie.Visible = True
    
    	'navigate to a web page
    	ie.Navigate(strAviso)
    
    
    END SUB
    



    Fábio de Paula Junior
    sexta-feira, 9 de dezembro de 2011 10:52
    Moderador

Todas as Respostas

  • Pessoal

    Como eu poderia eliminar o KIX desse script? Esse script é para chamar umas telas que tenho de informativo que estão no Sevidor01 em html, porem joga na tela do usuário como um infomativo. O usuário clica em ok e a tela some, só que esta dando um erro por causa do KIX e eu queria deixar só no vbs....se alguem puder me ajudar agradeço.

    O Fabio Jr, que responde alguns tópicos aqui, me ajudou muito, queria ver se outros tambem poderiam analisar e dar sugestões para sumir com o KIX.

    Obrigado.

    aviso_House

    sub Aviso_HOUSE()

     strPasta = "\\Servidor01\SCAN\Telas\Telas\"
     strKIXWIN = "\\Servidor02\netlogon\kixwin"
     strArguments = ";;OK"
     strStyle = "dialogWidth:850px;dialogHeight:550px;help:no;center:yes;scroll:no"
     
      if right(strPasta,1) <> "\" then strPasta = strPasta & "\"

      '=== Define o periodo
      tHora = time
      if tHora >= #5:00# and tHora < #12:00# then
       strHorario = "manha"
      elseif tHora >= #12:01#  and tHora < #18:00# then
       strHorario = "tarde"
      else
       strHorario = "noite"
      end if

      strPasta = strPasta & strHorario

      '=== Conta Pastas
      Set fso = CreateObject("Scripting.FileSystemObject")
      Set folder = fso.GetFolder(strPasta)
      iQtdFolders = folder.subfolders.count

      '=== Randomiza
      lowerbound = 1
      upperbound = iQtdFolders
      Randomize
      iRand = Int( ( upperbound - lowerbound + 1 ) * Rnd + lowerbound )

      for each f in folder.subfolders
       i=i+1
       strPastaRnd = f.name
       if i=iRand then exit for
      next

      '=== Mostra Tela
      strAviso = strPasta + "\" + strPastaRnd + "\telaseg.html"


      Set WshShell = WScript.CreateObject("WScript.Shell")
      WshShell.Run strKIXWIN + " " + strAviso + " " + strArguments + " " + strStyle, 1, true

    END SUB

    Pessoal,

     

    Alguém tem alguma sugestão?

    quinta-feira, 8 de dezembro de 2011 13:19
  • Paulo,

    O seu script feito em Kix chamava um programa externo (KIXWIN)  e este chamava um arquivo para ser aberto por ele(arquivo html).

    Um exemplo bem parecido é um script chamar o Word(programa externo) que abre um arquivo .doc.

    Fazendo uma analogia: você está tentando abrir um .doc sem usar o Word.

    Conseguir o mesmo resultado que vc tinha com o KIXWIN sem usar o KIXWIN vai ser dificil.

    Para sua sorte o arquivo que o KIXWIN utilizava é um HTML e existem diversos programas que podem abri-lo inclusive o Internet Explorer que já vem com o sistema operacional.

    Sugestão: Utilize o Internet Explorer como um objeto do VBScript e configure o objeto para chegar o mais próximo possivel do visual que vc tinha com o KIXWIN (esconder botões, barras, etc).

    Um exemplo de uso deste objeto, insira isto no final do seu script .VBS após o comentário "'===Mostra Tela":

     

    set ie = WScript.CreateObject("InternetExplorer.Application")
     
    'set the ie properties
    ie.ToolBar = 0
    ie.StatusBar = 1
    ie.Width = 850
    ie.Height = 550
    
    
    
    Do While IE.Busy
            WScript.Sleep 200
    Loop
    
    ie.Visible = True
    
    'navigate to a web page
    ie.Navigate(strAviso)
    


     

     

    Referências:

    InternetExplorer Object http://msdn.microsoft.com/en-us/library/aa752084%28v=vs.85%29.aspx

    Forum http://www.kixtart.org/forums/ubbthreads.php?ubb=showflat&Number=203203

    Uso do objeto IE : http://www.robvanderwoude.com/vbstech_ui_userinput.php

     

     


    Fábio de Paula Junior
    • Editado Fábio JrModerator quinta-feira, 8 de dezembro de 2011 23:11 Acerto largura altura
    quinta-feira, 8 de dezembro de 2011 22:48
    Moderador
  • Fabio bom dia,

    Acredito que falta pouco agora. Fiz os teste, comentei algumas linhas pois verifiquei que não eram mais necessarias de acordo com o outro pedaço do script que vc enviou. Acredito que possa ter até mais linhas que possam ser removidas. Fiz as alterações e executei. Ele abre a tela do IE, porém ela vem vazia, como se a pagina não pudesse ser exibida. Ou seja, as figuras não são mostradas. Pelo que eu analisei, acho que é só o que esta faltando. Conforme vc pode ver, a tela vem em branco. Vc consegue identificar o que esta faltando para que as figuras possam ser mostradas?

    Fabio, acredito que algumas questões possam ser simples para vc, mas é que eu não manjo naaaaadaaaaa de script. Mas acho que falta pouco.

     

    aviso_House

     sub Aviso_HOUSE()

                     strPasta = "\\Servidor01\SCAN\Telas\Telas\"

                    'strKIXWIN = "\\Servidor02\netlogon\kixwin"

                    'strArguments = ";;OK"

                    'strStyle = "dialogWidth:850px;dialogHeight:550px;help:no;center:yes;scroll:no"

                    if right(strPasta,1) <> "\" then strPasta = strPasta & "\"

                      '=== Define o periodo

                     tHora = time

                     if tHora >= #5:00# and tHora < #12:00# then

                                    strHorario = "manha"

                     elseif tHora >= #12:01#  and tHora < #18:00# then

                                    strHorario = "tarde"

                     else

                                    strHorario = "noite"

                     end if

                      strPasta = strPasta & strHorario

                      '=== Conta Pastas

                     Set fso = CreateObject("Scripting.FileSystemObject")

                     Set folder = fso.GetFolder(strPasta)

                     iQtdFolders = folder.subfolders.count

                      '=== Randomiza

                     lowerbound = 1

                     upperbound = iQtdFolders

                     Randomize

                     iRand = Int( ( upperbound - lowerbound + 1 ) * Rnd + lowerbound )

                      for each f in folder.subfolders

                                    i=i+1

                                    strPastaRnd = f.name

                                    if i=iRand then exit for

                     next

                      '=== Mostra Tela

                    set ie = WScript.CreateObject("InternetExplorer.Application")

                     'set the ie properties

                    ie.ToolBar = 0

                    ie.StatusBar = 1

                    ie.Width = 850

                    ie.Height = 550

                     Do While IE.Busy

                    WScript.Sleep 200

                    Loop

                     ie.Visible = True

                     'navigate to a web page

                    ie.Navigate(strAviso)

                    strAviso = strPasta + "\" + strPastaRnd + "\telaseg.html"

                     Set WshShell = WScript.CreateObject("WScript.Shell")

                    'WshShell.Run strKIXWIN + " " + strAviso + " " + strArguments + " " + strStyle, 1, true

     END SUB

     

    Fico no aguardo.

    sexta-feira, 9 de dezembro de 2011 10:46
  • Paulo,

    Eu dei a dica 99% certa, a linha que monta strAviso tinha que vir antes do ie.navigate(strAviso)

    Ficaria assim:

    aviso_House
     
    sub Aviso_HOUSE()
    
    	strPasta = "\\Servidor01\SCAN\Telas\Telas\"
    	'strKIXWIN = "\\Servidor02\netlogon\kixwin"
    	'strArguments = ";;OK"
    	'strStyle = "dialogWidth:850px;dialogHeight:550px;help:no;center:yes;scroll:no"
    
    	if right(strPasta,1) <> "\" then strPasta = strPasta & "\"
    
    	'=== Define o periodo
    	tHora = time
    	if tHora >= #5:00# and tHora < #12:00# then
    		strHorario = "manha"
    	elseif tHora >= #12:01#  and tHora < #18:00# then
    		strHorario = "tarde"
    	else
    		strHorario = "noite"
    	end if
    
    	strPasta = strPasta & strHorario
    
    	'=== Conta Pastas
    	Set fso = CreateObject("Scripting.FileSystemObject")
    	Set folder = fso.GetFolder(strPasta)
    	iQtdFolders = folder.subfolders.count
    
    	'=== Randomiza
    	lowerbound = 1
    	upperbound = iQtdFolders
    	Randomize
    	iRand = Int( ( upperbound - lowerbound + 1 ) * Rnd + lowerbound )
    
    	for each f in folder.subfolders
    		i=i+1
    		strPastaRnd = f.name
    		if i=iRand then exit for
    	next
    
    	'=== Mostra Tela
    	
    	strAviso = strPasta + "\" + strPastaRnd + "\telaseg.html"
    	
    	set ie = WScript.CreateObject("InternetExplorer.Application")
    	'set the ie properties
    	ie.ToolBar = 0
    	ie.StatusBar = 1
    	ie.Width = 850
    	ie.Height = 550
    
    	Do While IE.Busy
    	WScript.Sleep 200
    	Loop
    
    	ie.Visible = True
    
    	'navigate to a web page
    	ie.Navigate(strAviso)
    
    
    END SUB
    



    Fábio de Paula Junior
    sexta-feira, 9 de dezembro de 2011 10:52
    Moderador
  • Fábio,

    Perfeito. Funcionou. Estive olhando os links que vc passou, não consegui identificar a propriedade do scroll do IE, pois essas barras de rolagem aparecem.

    Algumas dúvidas:

    Qual a propriedade que eu posso inserir para que elas não apareçam, tanto na vertical como na horizontal?

    Como eu centralizo esse tela?

    Como eu faço para remover a referencia do servidor onde essa tela esta? Veja na figura que aparece o \\clsrv004\Scan. Gostaria de remover essa referencia ou deixar de um jeito mais elegante.

    De qualquer forma, obrigado pelo tempo dedicado a tentar resolver esse problema para mim. Vou marcar como resposta final, pois resolveu o problema, apenas tenho essas duvidas agora.

     

    Obrigado.

    sexta-feira, 9 de dezembro de 2011 12:54
  • Teste cada um dos items da tabela Properties do link http://msdn.microsoft.com/en-us/library/aa752084%28v=vs.85%29.aspx

    Se não tiver ali é porque não tem jeito.

    Não sei se disse antes mas Conseguir o mesmo resultado que vc tinha com o KIXWIN sem usar o KIXWIN vai ser dificil.


    Fábio de Paula Junior
    sexta-feira, 9 de dezembro de 2011 15:32
    Moderador