Atenção para a PEGADINHA DO MALANDRO: ExternalInterface.avaliable = retorna se o browser permite que o FLASH faça chamadas ao javascript/vbscript, mas nao significa que essa chamada ESTEJA disponível!
Por exemplo: - Desative o javascript do browser e rode o ExternalInterface.avaliable. MESMO com o JS desativado, o retorno será TRUE. Significa que o browser dá o suporte para o FLASH <=> JS, mas nao significa que vc PODE chamar, pois ele está desativado. Por isso q no link que eu te mandei (chegou a le-lo e compreende-lo?), o cara diz para vc tratar as suas chamadas com try/catch para poder tratar isso adequadamente. Verificou se no browser q nao está funcionando, o JS está habilitado? (mesmo q seu site já esteja como "site seguro") []'s Em 26 de setembro de 2011 17:11, Re JMD <[email protected]> escreveu: > Estou usando o IE sim, o problema é que funciona em algumas maquinas e em > outras não, não sei explicar o porque. > > Usei o ExternalInterface.avaible para verificar se o browser permite > chamada externa e ele retorna true. Não é versão do browser pois ja testei > em duas maquinas ambas com IE 8 e uma funciona e a outra não! > > Escabrosoooooo! > > Em 26 de setembro de 2011 17:03, Rogerio Gonzalez < > [email protected]> escreveu: > > Não sei se vc só esta usando Internet Explorer, mas pelo que me lembro, >> ActiveX Object não funciona em outros browsers... >> >> Abraços! >> >> Rogério >> >> >> >> 2011/9/26 Mário Júnior <[email protected]> >> >>> É uma boa prática vc SEMPRE verificar se ExternalInterface está >>> disponível, e se o acesso a javascript também está autorizado pelo browser. >>> Leia essa dica e aplique isso no seu caso: >>> >>> >>> http://www.markledford.com/blog/2010/04/22/fyi-externalinterface-available-probably-doesnt-do-what-you-think/ >>> >>> >>> E, nos browsers q nao funcionam, verifique se há restrição para executar >>> javascript. >>> >>> >>> []'s >>> >>> >>> >>> Em 26 de setembro de 2011 15:46, Re JMD <[email protected]> escreveu: >>> >>> Pessoal, >>>> >>>> Na minha aplicação chamo um activexObject para pegar o usuário logado >>>> na maquina, estou com alguns problemas pois em algumas maquinas funcionam e >>>> em outras não. Já adcionei como site seguro. >>>> >>>> Instalaei o degub em umas das maquinas que não está funcionando e ele me >>>> retorna o seguinte erro: >>>> >>>> TypeError: Error #1009: Não é possível acessar uma propriedade ou um >>>> método de uma referência de objeto nula. >>>> at Sicorc/autenticar()[C:\Documents and >>>> Settings\regism\workspace\Sicorc\flex_src\Sicorc.mxml:39] >>>> at Sicorc/___Sicorc_Application1_creationComplete()[C:\Documents and >>>> Settings\regism\workspace\Sicorc\flex_src\Sicorc.mxml:7] >>>> at flash.events::EventDispatcher/dispatchEventFunction() >>>> at flash.events::EventDispatcher/dispatchEvent() >>>> at >>>> mx.core::UIComponent/dispatchEvent()[E:\dev\4.x\frameworks\projects\framework\src\mx\core\UIComponent.as:12528] >>>> at mx.core::UIComponent/set >>>> initialized()[E:\dev\4.x\frameworks\projects\framework\src\mx\core\UIComponent.as:1627] >>>> at >>>> mx.managers::LayoutManager/doPhasedInstantiation()[E:\dev\4.x\frameworks\projects\framework\src\mx\managers\LayoutManager.as:759] >>>> at >>>> mx.managers::LayoutManager/doPhasedInstantiationCallback()[E:\dev\4.x\frameworks\projects\framework\src\mx\managers\LayoutManager.as:1072] >>>> >>>> ActiveXObject >>>> >>>> >>>> <script language=*"JavaScript"* >>>> type=*"text/javascript"*> >>>> >>>> *function* getUserVars() { >>>> >>>> *var* net = *new* ActiveXObject("wscript.network"); >>>> >>>> *return* [net.UserName, net.UserDomain, net.ComputerName]; >>>> >>>> } >>>> >>>> </script> >>>> >>>> Função autenticar! >>>> ** >>>> *private* *function* autenticar():*void* >>>> >>>> { >>>> >>>> *//usuarioService.autenticar();* >>>> >>>> *var* USER:Dictionary = *new* Dictionary(); >>>> >>>> *var* vars:Object = ExternalInterface.call(*"getUserVars"*); >>>> >>>> LINHA 39 USER[ >>>> *"USUARIO"*] = vars[0].toString(); >>>> >>>> USER[ >>>> *"DOMINIOO"*] = vars[1].toString(); >>>> >>>> USER[ >>>> *"MAQUINA"*] = vars[2].toString(); >>>> >>>> *//Alert.show("usuario"+vars[0].toString());* >>>> >>>> usuarioService.autenticar(vars[0].toString()); >>>> >>>> *//usuarioService.autenticar("rdebona");* >>>> >>>> } >>>> >>>> >>>> -- >>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev" >>>> Para enviar uma mensagem, envie um e-mail para [email protected] >>>> Para sair da lista, envie um email em branco para >>>> [email protected] >>>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev >>> >>> >>> >>> >>> -- >>> Mario Junior >>> http://blog.mariojunior.com/ >>> @mariojunior >>> >>> -- >>> Você recebeu esta mensagem porque está inscrito na lista "flexdev" >>> Para enviar uma mensagem, envie um e-mail para [email protected] >>> Para sair da lista, envie um email em branco para >>> [email protected] >>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev >>> >> >> -- >> Você recebeu esta mensagem porque está inscrito na lista "flexdev" >> Para enviar uma mensagem, envie um e-mail para [email protected] >> Para sair da lista, envie um email em branco para >> [email protected] >> Mais opções estão disponíveis em http://groups.google.com/group/flexdev >> > > -- > Você recebeu esta mensagem porque está inscrito na lista "flexdev" > Para enviar uma mensagem, envie um e-mail para [email protected] > Para sair da lista, envie um email em branco para > [email protected] > Mais opções estão disponíveis em http://groups.google.com/group/flexdev > -- Mario Junior http://blog.mariojunior.com/ @mariojunior -- Você recebeu esta mensagem porque está inscrito na lista "flexdev" Para enviar uma mensagem, envie um e-mail para [email protected] Para sair da lista, envie um email em branco para [email protected] Mais opções estão disponíveis em http://groups.google.com/group/flexdev
