• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Nazgulled

[Open Source] Network Switcher ALPHA 1

57 mensagens neste tópico

Para quem não sabe o que é isto, vou colocar aqui uma "pequena" citação quando criei um outro tópico sobre este programa há uns tempos...

As aplicações que desenvolvo normalmente são feitas para mim, porque não consigo encontrar software no mercado que faça aquilo que eu quero ou alguns dos que fazem podem eventualmente ser confusos ou ter um aspecto desgradavel, dai, eu fazer as minhas próprias aplicações e quando gosto muito deles, torno-as publicas.

De momento estou a fazer mais um utilitário, só que ainda lhe falta bastante coisa... É algo que me dava bastante jeito que já estivesse pronto mas não ando com tempo para o acabar, trabalhos da universidade é o que dá... Basicamente é o seguinte:

Eu tenho o meu portatil maioritarimente para trabalho e tanto quando estou em casa como na universidade (durante a semana, estou fora de casa), tenho acesso à internet, mas de maneiras diferentes. Na universidade, é por wireless e tenho de usar proxys e em casa é por ethernet e as proxys são desnecessarias, só que torna-se xato estar sempre a desligar e a ligar as proxys sempre k venho a casa de fim de semana e dps qd volto pa universidade. Portanto decidi fazer este simples programa, que activa/desactiva ligações de rede e configura essas mesmas, suportando proxys no internet explorer. Tudo isto fica gravado em perfis, que podem ser facilmente alterados na janela principal ou atraves de um click no icone que fica na area de notificação.

Devem estar a pensar pk k as proxys são do IE, bem, muitos programas do windows(media player, mediaplayer embutido nos browsers, msn, etc...) e muitos outros extra usam a proxy que esta no IE, os programas extra, tanto vão buscar essa proxy automaticamente como podem ter uma opção para o fazer, dai ter optado por isso, pessoalmente uso o firefox, ms tenho uma extensão instalado pa troca de proxys que se torna bastante simples com um click num botão.

Pa esta aplicação já tive ideias fantasticas, como por exemplo, para alem de perfis, ter a possiblidade de ser extendida por genero de plugins, que seriam scirpts, onde as pessoas pudessem estender as funcionalidades de proxys por exemplo, a outros programas k n permitem ir buscar a proxy IE e nem o fazem automaticamente, no caso do firefox, em vez de ter a extensão, teriam um script que ficaria activado no perfil caso assim entendessem e que activava ou desactivava a proxy. Mas mal tenho tempo para acabar o programa na forma simples e a primeira forma, vai ser a mais simples e basica funcionalidade que eu quero para o uso que eu lhe vou dar, talvez mais tarde, adicione novas funcionalidades, ou talvez não, dependendo das novidades que o vista irá trazer...

Deixo-vos um screenshot com muita coisa por terminar e gostava de saber a vossa opinião sobre esta aplicação, e se será que tem algum uso para ela ou não...

untitled0uv1.th.png

Bem pessoal, já fiz alguns progressos nesta aplicação e vou disponibilizar somente aqui uma versão ainda muito alpha do programa... a função principal e + importante de modificar as ligações ainda não está pronta, pois falta ter tudo o resto a funcionar, só depois passo para esse passo mais importate.

O que (ainda) não funciona

- Todas as preferências do programa são correctamente gravadas no ficheiro settings.xml, no então, ainda não acontece nada ao modifica-las. Apenas o "Folder Name " no "Network Connections Folder" tem de estar preenchido, de qualquer maneira, nada irá funcionar se este não estiver ;)

- As definições de proxy serão apenas para ser usadas por plugins e não pelo programa em si, de momento, ainda não programei nenhum plugin.

- Os perfis não podem ser aplicados, nem através do menu, nem através da janela principal da aplicação

- Os botões Remover e Editar ainda não fazem nada

- Na janela principal, é suposto mostrar a informação do perfil actual, para já os valores não mudam

O que é permitido

- Criar perfis tendo a possiblidade de configurar tudo que o programa disponibliza

- Modificar as preferências e estas serão lembradas

As funcionalidades do programa para já não parecem ser muitas, eu sei, mas acreditem que já tem bastantes linhas de código e existem enumeras validações em toda a criação do perfil que eu gostava que testassem se estiverem interessados em tal. Para me reportarem algum bug que tenham encontrado ou se tiverem alguma sugestão para modificar algo ou implementar algo de maneira diferente... sou todo de ouvidos.

Quanto a cena do proxy que foi aqui discutido no outro tópico... a ideia do servidor era engraçada mas provavelmente dá muito trabalho e eu não sabia por onde começar. Optei então por fazer um sistema de plugins que podem ser escritos em VB.NET 2005, provavelmente dará com outras versões também. E também penso que podem ser feitos em C#, desde que cumpram certas inicializações que quando o programa estiver pronto eu irei disponibilizar obviamente. O que faz o sistema de plugins? Pois bem, permite, que voces façam o que poderiam fazer numa aplicação qualquer feita em vb ou c#, no caso do plugin "Internet Explorer Proxy" que faz parte do download (mas que ainda não tem quase nada codificado) irá alterar a proxy do internet explorer acedendo ao registo e fazendo as devidas modificações e apenas irá fazer isso. Os plugins são compostos por 2 funções load e unload (entre outras coisas que pa agora n interessam) o que permite extender o programa a outras alterações que precisem quando mudem de rede, desde que saibam programar nas devidas linguagens tá claro :P

Para já é isto... fica aqui o download, qualquer dúvida e exponham aqui.

http://wiki.nazgulled.net/pt/network-switcher

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

XPMC RC3, ja tinha dito no topico dos screenshots.

Ok, Off-Topic Ended! ;)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

(Eu falo por mim)

Torna-se um bocado complicado analizar na pratica esse tipo de programas devido á sua especificidade. Só que tenha oportunidade de testar na pratica é que poderá opinar convenientemente.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

nem uma opiniãozita? um bug, uma sugestão? :P

Nao percebo bem como funciona o programa ... :| Tens 4 Profiles iniciais e segundo me pareeu nao dá para remover nenhum deles ...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

@d_pintassilgo

pois, talvez tenhas razão... mas quando coloquei isto no outro tópico, axo k houve ppl interessado e algum desse ppl, acho que ia dar uso ao programa...

@UnKnowN

no meu pc já dá lol... pah, o programa ainda tá em cosntrução e a versão disponibilizada ainda não tem essa funcionaliade de remover (e editar) perfis codificada, só isso, ms vai ter... no post inicial diz exactamente aquilo que para já é possível ou não fazer.

Mas agora que tou a pensar, sim, esta versão ALPHA 1, ainda não tem muitas possibilidades, apenas adicionar perfis e pronto, basicamente é isso, mas a versão que tenho no meu pc ja esta mais vançada um pouco, no entanto, não está pronta para ser uma ALPHA 2. De qualquer forma, se tiverem sugestões, eram bem vindas, mas nada de complicado e que demore tempo a fazer porque neste momento só quero acabar isto e disponibilizar, o que ainda é capaz de demorar devido aos exames da univ. Ms se tiverem alguma sugestão simples ou ideia, podem dizer.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

houve sim! se não me engano foi a tofas e mais na sei quem. Mas eu só comentei para não pensares que ninguem tá a ligar nenhuma! :P é que possivelmente a malta que se intereca ainda não viu e o resto do ppl nem comenta nada.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Ora ai está um programa que me da jeito a mim :) Eu tenho um adaptador wireless ligado ao meu computador apartir de uma placa de rede. Quando tenho que ligar o PC à Xbox por Crossover tenho que tar a mexer nas configs (Configs alternativas dão confusão no meio disto) e este programa dá bastante jeito :P

Tenho que trazer a Xbox cá para casa para testar se isto funciona :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

n tragas já, porque esta versão ainda não altera nada... a parte de alterar realmente as configurações das placas vou deixar para o fim (já tou quase lá)... é pate que dá mais trabalho e é quando eu preciso de fazer as coisas seguidas para não perder o raciocínio, mas para já não tenho tempo para isso pois tenho que estudar pa uns examezitos e é por isso que de vez em quando vou pegando nisto mas fazendo as coisas minimas mas que também têm de ser feitas :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

no meu pc já dá lol... pah, o programa ainda tá em cosntrução e a versão disponibilizada ainda não tem essa funcionaliade de remover (e editar) perfis codificada, só isso, ms vai ter... no post inicial diz exactamente aquilo que para já é possível ou não fazer.

Mas agora que tou a pensar, sim, esta versão ALPHA 1, ainda não tem muitas possibilidades, apenas adicionar perfis e pronto, basicamente é isso, mas a versão que tenho no meu pc ja esta mais vançada um pouco, no entanto, não está pronta para ser uma ALPHA 2. De qualquer forma, se tiverem sugestões, eram bem vindas, mas nada de complicado e que demore tempo a fazer porque neste momento só quero acabar isto e disponibilizar, o que ainda é capaz de demorar devido aos exames da univ. Ms se tiverem alguma sugestão simples ou ideia, podem dizer.

Ok :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

eu preferi + a versão desse em azul, pensei que o verde fosse ficar fixe, ms n gostei assim tanto. de qualquer forma, tou inclinado po último, parece ter mais a ver com o programa, princiaplmente com o nome do programa.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pa... já há programas destes.

Mas acho que independetemente disso o projecto é interessante.

É com que portugal comece a ter alguma coisa desenvolvida cá tambem :P

força nisso

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

sim eu sei... antes de começar a fazer o meu não sabia porque não encontrei nada, mas ontem lembrei-me de por o nome do meu programa no google a ver o que encontrava pa ver se o nome ja tava usado... não encontrei nada com o mesmo nome, mas encontrei parecido e xeguei a encontrar 2 ou 3 programas que faziam o mesmo e a te mesmo muito + avançados suportando muitas mais configurações do windows.

mas lá está, o meu vai diferir numa coisa que penso que irá ser superiro a todos eles, se e conseguir fazer com que funcione bem claro... que é suportar plugins. ou seja, todos eles permitem o que o meu permite e ainda mais, mas não permitem para todos os programas. por exemplo, sabem o samurize que uso no meu desktp para ter todas aquelas mariquices? Aquilo também permite usar proxys mas não vai buscar as infos a lado nenhum, portanto têm de ser inseridas manualmente no programa. ora, na univ, preciso de proxy, em casa não. esses programas não me permitem modificar nada para o qual não estejam programados, o meu, com um plugin próprio, vai permitir. e pode ser extendido a muitas outras coisas. é a maior diferença que encontrei e sinceramente, gosto + do aspecto do meu do que aqueles que encontrei :P

e outra coisa, todos elses são shareware, e o ppl gosta mt de coisas freeware para ter alternativas as cenas pagas :)

btw ppl, aquele tópico para o ícone, já está maior, com + uns íconezitos pa eu escolher, deem la outro saltinho, pa ver o que há de novo e ajudarem-me a escolher lol... aquele com o mundo e a ficha, parece ser o indicado, mas curti bues o azul com o trinagulo e as 3 bolinhas amarelas.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

hey hey hey! pára tudo!

tás a querer dizer que vai suportar virtualmente qq apliação?!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Acho que o melhor ícone é possivelmente o último ou então a "bola", LOL, azul :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

hey hey hey! pára tudo!

tás a querer dizer que vai suportar virtualmente qq apliação?!

de certa forma... imagina uma aplicação qualquer que tem suporte pa proxys e essa informação ta guardada num ficheiro ini, esses programas k existem n te permitem modificar isso e tu no sitio A precisas de proxy e no sitio B não, fazes um plugin pa esse programa que altere os valores do ini e pronto activas o plugin na ligação k keres e não na que não queres...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

ok...

mas diz-me.. isso permite gardar seting que estejam definidos em que formato? INI?

E quanto aos plugins? têm que ser escritos para cada formato certo?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boas, testei o programa porque sinceramente dá um jeitão na empresa onde estou a estagiar fazendo referência a ti e aos teus trabalhos.. eles tem uma ligação ADSL  e um router 3 G para os casos onde o ADSL falha , o router 3 G entra em acção.

Tentei criar um profile no programa e dá erro.. é normal ?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

@pedrotuga

o programa em si contém uma class que permite guardar/ler em ficheiros xml, uso isso para as settings do próprio programa e para os perfis. agora, para os plugins, caso o ppl precise de guardar settings (e é capaz de ser preciso) ainda não pensei o que implementar... para já, o criado do plugin, tinha de programar tb (ou arranjar uma classe e adicionar ao plugin) a sua própria gravação/leitura de settings. ainda não pensei bem no assunto, mas aceito sugestões... uma coisa que estou a pensar fazer é, em vez de compilar a class no exe, compilo como dll e assim qualquer plugin pode usar as funções de leitura/escrita em xml que eu uso. E talvez procure ou uma classe ou um dll para ini e faça o mesmo, ou então deixo só para xml, ainda não pensei bem no assunto.

Quanto à tua outra pergunta, não percebi bem o que querias dizer... explica-te melhor sff.

@Gurzi (",)

A versão que está aqui publicada não funciona mesmo, ou seja, não faz aquilo que é suposto fazer, apenas permite criar os perfis e estes ficam guardados no ficheiro xml, nada mais, ainda não permite aplicar e modificar o sistema (ms a versão que tenho compilada no pc já permite) mas isso deu algum erro e crashou o programa foi? Ou referes-te a outro tipo de erro? É que eu tava aqui com uns amigos e passei-lhes po portatei deles uma versão + actualizada pa eles testarem e darem-me opiniões e deu logo uns crashes no inicio onde nem se quer a aplicação era executada, mas depois pensei que fosse por n terem o .NET framework 2, mastêm e depois cheguei à conclusão que havia uns problemas logo no inicio na leitura do xml, o que me levou a editar a class de xml que já tinha e a modificar um pouco o código e já corrigiu esses probs, que não sei se serão os mesmos que estás a ter. D´ai um exemplo mais especifico do que fazes e do que acontece, pode ser que tenhas encontrado outro bug :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Bem aqui fica então..

vou deixar uma imagem em anexo e o que dizia em details :

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

See the end of this message for details on invoking

just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************

System.NullReferenceException: Object reference not set to an instance of an object.

  at NetworkSwitcher.mdlNicFunctions.getNicName(Folder nicFolder, String nicName)

  at NetworkSwitcher.frmNewProfile.btnSaveProfle_Click(Object sender, EventArgs e)

  at System.Windows.Forms.Control.OnClick(EventArgs e)

  at System.Windows.Forms.Button.OnClick(EventArgs e)

  at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)

  at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)

  at System.Windows.Forms.Control.WndProc(Message& m)

  at System.Windows.Forms.ButtonBase.WndProc(Message& m)

  at System.Windows.Forms.Button.WndProc(Message& m)

  at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)

  at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)

  at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

************** Loaded Assemblies **************

mscorlib

    Assembly Version: 2.0.0.0

    Win32 Version: 2.0.50727.42 (RTM.050727-4200)

    CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll

----------------------------------------

Network Switcher

    Assembly Version: 1.0.0.0

    Win32 Version: 1.0.0.0

    CodeBase: file:///C:/Documents%20and%20Settings/Administrator.AZAUTO/Ambiente%20de%20trabalho/NetworkSwitcher.ALPHA1/Network%20Switcher.exe

----------------------------------------

System.Windows.Forms

    Assembly Version: 2.0.0.0

    Win32 Version: 2.0.50727.42 (RTM.050727-4200)

    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll

----------------------------------------

System

    Assembly Version: 2.0.0.0

    Win32 Version: 2.0.50727.42 (RTM.050727-4200)

    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll

----------------------------------------

System.Drawing

    Assembly Version: 2.0.0.0

    Win32 Version: 2.0.50727.42 (RTM.050727-4200)

    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll

----------------------------------------

Interfaces

    Assembly Version: 1.0.0.0

    Win32 Version: 1.0.0.0

    CodeBase: file:///C:/Documents%20and%20Settings/Administrator.AZAUTO/Ambiente%20de%20trabalho/NetworkSwitcher.ALPHA1/Interfaces.DLL

----------------------------------------

Microsoft.VisualBasic

    Assembly Version: 8.0.0.0

    Win32 Version: 8.0.50727.42 (RTM.050727-4200)

    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.VisualBasic/8.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll

----------------------------------------

System.Xml

    Assembly Version: 2.0.0.0

    Win32 Version: 2.0.50727.42 (RTM.050727-4200)

    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll

----------------------------------------

Accessibility

    Assembly Version: 2.0.0.0

    Win32 Version: 2.0.50727.42 (RTM.050727-4200)

    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Accessibility/2.0.0.0__b03f5f7f11d50a3a/Accessibility.dll

----------------------------------------

IEProxy

    Assembly Version: 1.0.0.0

    Win32 Version: 1.0.0.0

    CodeBase: file:///C:/Documents%20and%20Settings/Administrator.AZAUTO/Ambiente%20de%20trabalho/NetworkSwitcher.ALPHA1/IEProxy.DLL

----------------------------------------

Interop.Shell32

    Assembly Version: 1.0.0.0

    Win32 Version: 1.0.0.0

    CodeBase: file:///C:/Documents%20and%20Settings/Administrator.AZAUTO/Ambiente%20de%20trabalho/NetworkSwitcher.ALPHA1/Interop.Shell32.DLL

----------------------------------------

CustomMarshalers

    Assembly Version: 2.0.0.0

    Win32 Version: 2.0.50727.42 (RTM.050727-4200)

    CodeBase: file:///C:/WINDOWS/assembly/GAC_32/CustomMarshalers/2.0.0.0__b03f5f7f11d50a3a/CustomMarshalers.dll

----------------------------------------

************** JIT Debugging **************

To enable just-in-time (JIT) debugging, the .config file for this

application or computer (machine.config) must have the

jitDebugging value set in the system.windows.forms section.

The application must also be compiled with debugging

enabled.

For example:

<configuration>

    <system.windows.forms jitDebugging="true" />

</configuration>

When JIT debugging is enabled, any unhandled exception

will be sent to the JIT debugger registered on the computer

rather than be handled by this dialog box.

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

não estou a perceber bem onde esta exactamente o erro... mas se calhar é melhor deixar para a próxima versão que eu colocar aqui e depois fazes o que fizeste nesta versão e dizes-me se deu erro. porque a versão que aqui coloquei, como já referi, está bastante incompleta e com muitos bugs com já pudeste constatar.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Convidado
Este tópico está fechado a novas respostas.