« janeiro 2006 | Entrada | março 2006 »

fevereiro 22, 2006

Tools IIS

http://www.iistoolshed.com/tools.aspx

Publicado por vitorsilva ąs 03:37 PM | Comentįrios (7)

fevereiro 20, 2006

Outlook dev

http://www.outlookexchange.com/articles/ricardosilva/

Publicado por vitorsilva ąs 06:23 PM | Comentįrios (2)

MVC ASP

Model, View, Presenter with ASP.NET 2.0
http://mikemason.ca/2006/02/15/

Publicado por vitorsilva ąs 02:42 PM | Comentįrios (4)

fevereiro 16, 2006

Recursos Formação

http://www.santanadolivramento.com.br/cursos/2005vbnet/

Publicado por vitorsilva ąs 11:16 AM | Comentįrios (4)

Object vs Dataset

http://www.devx.com/codemag/Article/30468

Publicado por vitorsilva ąs 09:00 AM | Comentįrios (4)

fevereiro 14, 2006

vmware

How to Increase your VMware Hard Disk vmware-vdiskmanager.exe" -x 7GB "nome.vmdk" depois no diskmanager da vm criar uma nova partição com o espaço extra

Publicado por vitorsilva ąs 12:15 PM | Comentįrios (2)

VB + Outlook - recolha inicial

Office Solutions Development > Outlook Microsoft Outlook Development Technologies Office Developer Center > Outlook

Publicado por vitorsilva ąs 10:56 AM | Comentįrios (5)

fevereiro 13, 2006

inno setup

Durante a semana que passou estive a trabalhar com um installer chamado innosetup (http://www.jrsoftware.org/isinfo.php) usando o ide ScriptMaker (http://www.HiSoft2000.de/)
embora a introdução do xcopy deployment nos tenha facilitado imenso a vida no que diz respeito aos desenvolvimento de pacotes de instalação, quando queremos fazer coisas menos triviais como mapear drives ou criar datasources odbc a complexidade começa a aumentar.
não tenho a certeza se aquilo que fiz com o innosetup era impossivel de fazer num deployment project vstudio mas posso dizer que encontrei bastante informação e exemplos suficientes para conseguir fazer um setup que ainda há uma semana atrás me faria ganhar cabelos brancos só de pensar nele...

Requisitos

como disse utilizei o scriptmaker para criar o programa de instalação. embora com alguns senãos ao nivel do interface, permite uma compreensão muito rapida das funcionalidades e não nos obriga a aprender a linguagem (markups e opções) do innosetup.

Exemplos
* definir qual a lingua utiliza no setup
[Languages]
Name: "pt"; MessagesFile: "compiler:Languages\Portuguese.isl"

* utilização de código e funções internas
[Files]
Source: {code:GetLocalizacaoMultiIni|''}; DestDir: {app}\sist\multi.ini; Flags: External; Check: CopiarMultiIni('')

{code:GetLocalizacaoMultiIni|''} => permite chamar uma função definida no bloco [code], o | serve para definir diferentes parametros. nota: neste caso vai parametro '' já que sempre que definir funções sem parametros de entrada recebia um erro do compilador.
{app} => função interna que devolve a path para o directorio onde vai ser instalada a aplicação. outras funções interessantes {src}, {tmp}

* mapear um drive
para fazer coisas menos normais podemos usar uma linguagem de programação baseada em pascal. desta forma podemos por exemplo chamar dlls do windows como neste caso
Function WNetConnectionDialog(hWnd: Integer; dwType: INTEGER): INTEGER; External 'WNetConnectionDialog@mpr.dll stdcall';

* odbc
o mesmo se aplica para o odbc, podemos "simplesmente" chamar o dialogo que o windows implementa
Function SQLConfigDataSource(hwndParent: LONGINT; fRequest: LONGINT;lpszDriver: String; lpszAttributes: STRING): LONGINT; External 'SQLConfigDataSource@ODBCCP32.DLL stdcall';

* criar variaveis de ambiente
o truque aqui é que uma variavel de ambiente é uma misera entrada no registry
Root: HKCU; Subkey: Environment; ValueType: String; ValueName: DLC; ValueData: {code:GetPastaDestinoProgress|''}; Flags: UnInsDeleteValue

* criar ecrans para ler valores do utilizador
por exemplo perguntar onde estão ficheiros necessários para a instalação
aqui as coisas começam a complicar ligeiramente. para facilitar já existem algumas funções internas como TInputQueryWizardPage (que permite definir caixas de texto para input de valores), TInputDirWizardPage (que permite definir caixas de texto com um botão browse à frente para procurar um ficheiro), etc.
temos assim que primeiro definir uma variavel para essa pagina.
Page_PerguntarDadosTerminal: TInputQueryWizardPage;
criar os conteudos dessa pagina
Page_PerguntarDadosTerminal := CreateInputQueryPage(wpWelcome,
'Indique o nome do terminal', 'Nome do terminal. Este nome ficará guardado no ficheiro multi.ini',
'Para continuar, clique Next.');
Page_PerguntarDadosTerminal.Add('Nome do Terminal:', false);

e depois ler esses dados
NomeTerminal := Page_PerguntarDadosTerminal.Values[0];
temos acesso aos dados de uma pagina usando algum dos eventos predefinidos NextButtonClick, BackButtonClick

Publicado por vitorsilva ąs 06:32 PM | Comentįrios (3)

fevereiro 03, 2006

Thread UI

Threads compared with processes

WinForms UI Thread Invokes: An In-Depth Review of Invoke/BeginInvoke/InvokeRequred

Creating Events and Delegates in VB.NET

Delegate Tutorial

Calling Your Main Thread from a Worker Thread in VB.NET


Publicado por vitorsilva ąs 04:24 PM | Comentįrios (0)

javascript cheat sheet

http://www.ilovejackdaniels.com/article/javascript-cheat-sheet/

Publicado por vitorsilva ąs 11:27 AM | Comentįrios (1)

waterfall

uau afinal o que aprendemos na escola ainda se aplica...

http://www.waterfall2006.com/
"After years of being disparaged by some in the software development community, the waterfall process is back with a vengeance. You've always known a good waterfall-based process is the right way to develop software projects"

Publicado por vitorsilva ąs 09:47 AM | Comentįrios (0)

OLDER ADULTS AND THE INTERNET

http://www.humanfactors.com/downloads/jan06.asp

Percent of adults of a given age who use the Internet (US)
- age 46-55 -- 86%
- age 56-65 -- 75%
- age 66+ -- 41%

- Older adults use the Internet for news, shopping, entertainment, and to keep in touch with friends and family.
- Common myths are:
- older users cannot learn to use the Internet
- old people don't use computer
- elderly people are "technophobes"

These are indeed stereotypes and are not accurate.
- There are reasons, however, why some older users don't use computers even more:
- lack of motivation or reason to use the computer
- lack of experience with current technology
- cognitive differences and age-related declines
- lack of knowledge of how to use the Web
- no access to a computer
- no understanding of what to do with the Web

==> Make sure users are motivated to use the product you are designing.
==> Be sure you know, and are not just guessing, what their motivation is.

Publicado por vitorsilva ąs 08:50 AM | Comentįrios (0)

fevereiro 02, 2006

Programming Microsoft Outlook with Visual Studio .NET

http://www.microeye.com/resources/res_tech_vsnet.htm

Publicado por vitorsilva ąs 06:16 PM | Comentįrios (6)