Вы находитесь на странице: 1из 25

Codigo Fontes e Truques Ultilitrios para o Delphi 7

Converter Path e nome de Arquivos longos para curtos

procedure TForm1.Button1Click(Sender T!"#ect$% &ar Bu''er arra( )*..+,,- o' char% "egin .etShort/ath0ame(1C 23rqui&os de programas2Borland2Common Files2BD42Bde5+.hlp167Bu''er6si8eo'(Bu''er$$% 9emo1.:ines.3dd(Bu''er$% end%

Como verificar se o ano Bisexto

3 'un;<o para &eri'icar se o ano = "isse>to = a ?s:eap@ear ( (ear Aord$ Boolean% Bue retornar TCU4 se o ano in'ormado no parDmetro 'or "isse>to.

Impedir que o usurio mude de pgina no TabbedNoteboo

0o e&ento !nChange do Ta""ed0ote"ook coloque 3lloEChange F False%

Criar !anela redonda

0o !nCreate do Form coloque Gar Hr Thandle% Begin I Cria uma Cegi<o elJptica K Hr F Create4llipticCgn(*6*61**6+**$% SetAindoECgn(Handle6 hr6 true$% 4nd%

"etectar finali#a$%o do &indo's

/rocedure TForm1.A94ndsession ( &ar 9sg TA94ndSession$% Begin ?' 9sg.4ndsession F True then ShoEmessage(1! EindoEs est 'inali8ando 1 L M15 L 1Ns1 L Formatdatetime(1c160oE$% ?nherited%

4nd%

(xibir ano com ) "*gitos

0o e&ento !nCreate do Formulrio /rincipal coloque a clsula SH!CTD3T4F!C93T F 1ddOmmO((((1%

+istar todas as !anelas abertas

/ara listar todas #anelas a"ertas6 de&ePse usar a 'uncao da 3/? 4numAindoEs6 que usa uma 'uncao Call"ack6 com dois parDmetros6 um Handle para a #anela e um ponteiro. Goce pode usPla com um cQdigo semelhante a este (4ste lista as #anelas a"ertas6 mesmo in&isJ&eis6 em uma list"o>$ 'unction 4numAindoEs/roc(And HAnd%Form TForm1$ Boolean% 4>port% IRi'de' Ain5+K StdCall% IRendi'K &ar Bu''er 3rra()*..SS- o' char% "egin .etAindoETe>t(And6Bu''er61**$% i' Str:en(Bu''er$ TU * then

Form.:istBo>1.?tems.3dd(Str/as(Bu''er$$% Cesult F True% end% procedure TForm1.Button1Click(Sender T!"#ect$% "egin 4numAindoEs(74numAindoEs/roc6:ong?nt(Sel'$$% end%

Alterar ,onte do -int

/ara testar este e>emplo inclua no seu 'orm alguns componentes. 0estes componentes coloque in'orma;Ves na propriedade Hint de cada componente e altere a propriedade ShoEHint para True. unit Unit1% inter'ace uses AindoEs6 9essages6 S(sUtils6 Classes6 .raphics6 Controls6 Forms6 Dialogs6 StdCtrls% t(pe TForm1 F class(TForm$ 4dit1 T4dit% 4dit+ T4dit% 4dit5 T4dit% procedure FormCreate(Sender T!"#ect$% pri&ate I /ri&ate declarations K pu"lic I /u"lic declarations K procedure 9(ShoEHint(&ar HintStr string% &ar CanShoE Boolean% &ar Hint?n'o THint?n'o$% end%

&ar Form1 TForm1% implementation IRC W.DF9K OO Fun;<o que ir alterar a 'onte do Hint procedure TForm1.9(ShoEHint(&ar HintStr string% &ar CanShoE Boolean% &ar Hint?n'o THint?n'o$% &ar i integer% "egin 'or i F * to 3pplication.ComponentCount P 1 do i' 3pplication.Components)i- is THintAindoE then Eith THintAindoE(3pplication.Components)i-$.Can&as do "egin Font.0ame F 13rial1% Font.Si8e F 1X% Font.St(le F )'sBold-% Hint?n'o.HintColor F clAhite% end% end% OO 4&ento !nCreate do Form procedure TForm1.FormCreate(Sender T!"#ect$% "egin OO 3ti&a a 'un;<o que ir alterar o 'ormato do Hint 3pplication.!nShoEHint F 9(ShoEHint% end%

.ostrar -int independente para cada clula da /tringgrid

/ara testar o e>emplo a"ai>o inclua no seu 'orm um componente String.rid unit Unit1%

inter'ace uses AindoEs6 9essages6 S(sUtils6 Classes6 .raphics6 Controls6 Forms6 Dialogs6 .rids% t(pe TForm1 F class(TForm$ String.rid1 TString.rid% procedure FormCreate(Sender T!"#ect$% procedure String.rid19ouse9o&e(Sender T!"#ect% Shi't TShi'tState% Y6 @ ?nteger$% pri&ate I /ri&ate declarations K pu"lic I /u"lic declarations K Col integer% OO Declarar esta &ari&el CoE integer% OO Declarar esta &ari&el end% &ar Form1 TForm1% implementation IRC W.DF9K OO 4&ento !nCreate do Form procedure TForm1.FormCreate(Sender T!"#ect$% "egin String.rid1.Hint F 1* *1% String.rid1.ShoEHint F True% end% OO 4&ento !n9ouse9o&e do componente String.rid procedure TForm1.String.rid19ouse9o&e(Sender T!"#ect% Shi't TShi'tState% Y6 @ ?nteger$% &ar r integer% c integer% "egin String.rid1.9ouseToCell(Y6 @6 C6 C$% i' ((CoE TU r$ or (Col TU c$$ then "egin CoE F r% Col F c% 3pplication.CancelHint% String.rid1.Hint F 1:inha 1L?ntToStr(r$ L M5+ L 1Coluna 1L?ntToStr(c$% end% end%

Arrastar ,orm sem clicar na Barra de T*tulo

pri&ate I /ri&ate declarations K procedure A90CHitTest(&ar 9 TA90CHitTest$% message EmZ0CHitTest% pu"lic I /u"lic declarations K end% &ar Form1 TForm1% implementation IRC W.DF9K procedure TForm1.A90CHitTest(&ar 9 TA90CHitTest$% "egin inherited% I Chama o manipulador de mensagem herdado K i' 9.Cesult F htClient then I Geri'ica se est na area cliente do Form K 9.Cesult F htCaption% I 0este caso 'a8 o AindoEs pensar que est na "arra de TJtulo. K end%

(screvendo texto na "iagonal

procedure TForm1.Button+Click(Sender T!"#ect$% &ar l' T:ogFont% t' TFont% "egin Eith Form1.Can&as do "egin Font.0ame F 13rial1% Font.Si8e F 1,% t' F TFont.Create% t'.3ssign(Font$% .et!"#ect(t'.Handle6 si8eo'(l'$6 7l'$% l'.l'4scapement F 5**% l'.l'!rientation F 5**% t'.Handle F CreateFont?ndirect(l'$% Font.3ssign(t'$% t'.Free% Te>t!ut(+*6 Height di& +614>emplo de te>to1$% end% end%

,a#endo o (nter funcionar como Tab

/ara dar ao 4nter a 'uncionalidade do Ta" (ou se#a6 passar ao componente seguinte$6 digite a seguinte rotina no e&ento !n[e(/ress do 'orm procedure T0omeDoForm.0omeDoForm[e(/ress(Sender T!"#ect% &ar [e( Char$% "egin i' ke( F M15 then "egin ke( F M*% per'orm (A9Z0e>tDlgCtl6 *6 *$% end%

end% 4m seguida coloque a propriedade [e(/ri&ieE do Form F TCU4 e certi'iquePse que todos os "otVes do Form este#am com a propriedade De'ault F F3:S4.

Criar tela /plash

/ara criar um 'orm inicial6 como o 'orm de entrada do Aord6 primeiramente & em /ro#ect\!ptions e remo&a o nome do 'orm inicial (clique no nome do 'orm e clique em ]U]$. Depois6 & em GieE\/ro#ect Source e antes do primeiro 3pplication.CreateForm (0omeDoForm...$6 digite 'rmSplash F T'rmSplash.Create (3pplication$% 'rmSplash.ShoE% 'rmSplash.Update% 4 para remo&er o 'orm da memQria6 digite apQs o ^ltimo CreateForm 'rmSplash.Free% 0ota n<o se esque;a de alterar a propriedade BorderSt(le para "s0one6 e /osition para poScreenCenter

Alterando ,onte de determinado registro no "B0rid

/ara trocar a 'onte de um DB.rid6 utili8e a rotina a"ai>o no e&ento !nDraEDataCell i' Ta"ela.FieldB(0ame (1Salario1$.Galue UF 1**** then "egin D".rid1.Can&as.Font.Color F clCed% D".rid1.Can&as.Font.St(le F )'sBold-% end% D".rid1.De'aultDraEDataCell(Cect6 Field6 State$% 0o caso6 somente os registros com salrio maior que CR 1*.***6** 'icar<o com cor &ermelha e em negrito. 0ota 0<o = necessrio mo&er o ponteiro da ta"ela para colorir os registros.

Trocar ponto por 1*rgula

3 maioria dos teclados possui apenas o ponto no teclado num=rico. 9as se &oc_ precisar utili8ar a &Jrgula como separador decimal6 utili8e a seguinte rotina no e&ento !n[e(/ress do 4dit (lem"rePse que DecimalSeparator cont=m o separador decimal (que n<o necessariamente est em portugu_s$. Ge#a em ?nternacional no /ainel de Controle$. "egin i' ke( F 1.1 then ke( F DecimalSeparator% end%

"escobrir posi$%o do cursor em um .emo

/ara desco"rir a linha e a coluna atuais de um componente T9emo6 utili8e a seguinte procedure Eith 9emo do "egin :inha F /er'orm (49Z:?04FC!9CH3C6 SelStart6 *$% Coluna F SelStart P /er'orm (49Z:?04?0D4Y6 :ine6 *$% end%

+impar todos os (dits de um ,orm

/ara limpar todos os 4dits de um 'orm6 use a seguinte rotina procedure T0omeDoForm.0omeDoBotaoClick(Sender T!"#ect$% &ar ? integer% "egin 'or ? F * to ComponentCount P 1 do i' (Components )?- is T4dit$ then (Components )?- as T4dit$.Clear% end%

/ara 'a8er qualquer opera;<o em outro tipo de o"#eto6 = sQ trocar T4dit pelo tipo de componente que &oc_ quer manipular.

Trocar cursor do mouse

4>istem &rios cursores no Delphi (crDe'ault = o cursor padr<o6 crHour.lass = a ampulheta6 crHand/oint = a ]m<o8inha]6 etc$. /ara alterPlo6 "asta escolher um na propriedade Cursor do componente em que &oc_ quer mudar o cursor (troque no 'orm para trocar o do 'orm inteiro$. 9as6 se &oc_ quiser colocar um cursor di'erente6 siga os procedimentos a"ai>o 0a se;<o inter'ace da unit que cont=m o 'orm6 coloque as seguintes linhas const crSeuCursor F 1% OO Tem que ser um &alor maior que * (8ero$ 0o e&ento !nCreate do 'orm6 digite as seguintes linhas Screen.Cursors )crSeuCursor- F :oadCursorFromFile (1Cursor.ani1$% OO ! cursor pode ser dos tipos comum (W.cur$ ou animado (W.ani$ OO :em"rePse o arqui&o tem que estar na mesma pasta do programa OO ou digite o nome do caminho dele. 0a hora de trocar de cursor6 use o seguinte comando !"#eto.Cursor F crSeuCursor% onde !"#eto = o nome do o"#eto que &ai ter o cursor alterado (o 'orm6 por e>emplo$.

(xtrair primeiro nome de uma pessoa

/ara pegar o primeiro nome de uma pessoa6 crie a seguinte 'un;<o 'unction /rimeiro0ome (0ome String$ String% &ar /0ome String% "egin /0ome F 11% i' pos (1 16 0ome$ TU * then /0ome F cop( (0ome6 16 pos (1 16 0ome$ P 1$% Cesult F /0ome% end%

"escobrir qual 2cone foi selecionado no +ist 1ie'

?ndice F :istGieE.Selected.?nde>% :em"rePse que o primeiro item possui Jndice igual a * (8ero$6 o segundo &ale 16 etc. Se quiser desco"rir o rQtulo (o te>to que 'ica a"ai>o do Jcone$6 troque ?nde> por Caption6 assim Cotulo F :istGieE.Selected.Caption%

Criar atalho no "es top

Coloque essas units na se;<o implementation uses Shl!"#6 3cti&eY6Com!"#6 Cegistr(% /or ^ltimo6 crie uma procedure que 'a;a o tra"alho procedure CreateShortcut (File0ame6 /arameters6 ?nitialDir6 Shortcut0ame6 ShortcutFolder String$% &ar 9(!"#ect ?UnknoEn% 9(S:ink ?Shell:ink% 9(/File ?/ersistFile% Director( String% AFile0ame AideString% 9(Ceg TCeg?niFile% "egin 9(!"#ect F CreateCom!"#ect(C:S?DZShell:ink$% 9(S:ink F 9(!"#ect as ?Shell:ink% 9(/File F 9(!"#ect as ?/ersistFile% Eith 9(S:ink do "egin Set3rguments(/arameters$% Set/ath(/Char(File0ame$$% SetAorkingDirector((/Char(?nitialDir$$% end% 9(Ceg F TCeg?niFile.Create(1So'tEare29icroSo't2AindoEs2CurrentGersion24>plorer1$% Director( F 9(Ceg.CeadString (1Shell Folders161Desktop1611$% AFile0ame F Director( L 121 L Shortcut0ame L 1.lnk1% 9(/File.Sa&e (/AChar (AFile0ame$6 False$% 9(Ceg.Free% end%

Criar atalho no menu Iniciar

/ara criar um atalho para um programa6 primeiramente coloque essas units na se;<o implementation de seu 'orm uses Shl!"#6 3cti&eY6 Com!"#6 Cegistr(% /or ^ltimo6 crie uma procedure que 'a;a o tra"alho procedure CreateShortcut (File0ame6 /arameters6 ?nitialDir6 Shortcut0ame6 ShortcutFolder String$% &ar 9(!"#ect ?UnknoEn% 9(S:ink ?Shell:ink% 9(/File ?/ersistFile% Director( String% AFile0ame AideString% 9(Ceg TCeg?niFile% "egin 9(!"#ect F CreateCom!"#ect(C:S?DZShell:ink$% 9(S:ink F 9(!"#ect as ?Shell:ink% 9(/File F 9(!"#ect as ?/ersistFile% Eith 9(S:ink do "egin Set3rguments(/arameters$% Set/ath(/Char(File0ame$$% SetAorkingDirector((/Char(?nitialDir$$% end% 9(Ceg F TCeg?niFile.Create (1So'tEare29icroSo't2AindoEs2CurrentGersion24>plorer1$% Director( F 9(Ceg.CeadString(1Shell Folders161Start 9enu1611$ L 121 L ShortcutFolder% CreateDir(Director($% AFile0ame F Director( L 121 L Shortcut0ame L 1.lnk1% 9(/File.Sa&e (/AChar (AFile0ame$6 False$% 9(Ceg.Free% end%

9udando te>to do T4dit no !nChange

Se o te>to de um T4dit 'or mudado no seu e&ento !nChange6 este e&ento ser chamado recursi&amente at= aca"ar com o espa;o de pilha. /ara 'a8er isso6 de&ePse setar o e&ento !nChange para 0?: antes de mudar o te>to6 &oltando ao original depois6 desta maneira procedure 4dit1Change(Sender T!"#ect$% "egin 4dit1.!nChange F 0?:% i' 4dit1.Te>t F 1Te>to1 then 4dit1.Te>t F 10o&o Te>to1% 4dit1.!nChange F 4dit1Change% end% 4sta dica tam"=m &ale para e&ento !nGalidate.

(ncolhendo o executvel

4m Delphi 1.*6 marcando a check"o> !ptimi8e 'or si8e and load time6 em !ptionsO/ro#ectO:inker n<o 'unciona (aparece uma mensagem de disco cheio6 mesmo com muito espa;o$. Delphi 1.* &em com um programa D!S6 AX:!SS6 que 'a8 o mesmo. /ara usPlo6 de&ePse teclar o seguinte AX:!SS programa.e>e ?sto encolher o e>ecut&el em apro>imadamente +*`6 diminuindo o tempo de carga.

Posicionando cursor na linha de um .emo ou 3ichedit

/ara posicionar o cursor em uma linha de um 9emo ou Cich4dit6 de&ePse utili8ar o seguinte Aith 9emo1 do SelStart F /er'orm(49Z:?04?0D4Y6 :inha6 *$%

(scondendo !anelas filhas minimi#adas

/ara esconder #anelas 'ilhas minimi8adas6 "asta capturar a mensagem A9ZSi8e6 desta maneira t(pe TForm1 F class(TForm$ pu"lic procedure A9Si8e(&ar 9 TA9S?a4$%9essage A9ZSi8e% end% implementation procedure TForm1.A9Si8e(&ar 9 TA9S?a4$% "egin

i' 9.Si8eT(peFSi8eZ9inimi8ed then shoEEindoE(Handle6SEZHide$% end%

(xecutando opera$4es padr%o de um 5le Container

/ara e>ecutar a;Ves padr<o de um !le Container (a"rir um documento Aord ou 4>cel ou rodar uma apresenta;<o /oEerpoint$6 podePse usar este cQdigo procedure TForm1.Button1Click(Sender T!"#ect$% "egin !leContainer1.DoGer"(o&primar($% end%

Alinhar Itens do menu principal 6 direita

/ara alinhar itens do menu principal N direita6 de&ePse utili8ar o seguinte cQdigo I?sto #usti'ica todos itens N direita do selecionadoK procedure Setbusti'((9enu T9enu% 9enu?tem T9enu?tem% busti'( B(te$%

IR?FD4F A?05+K &ar ?tem?n'o T9enu?tem?n'o% Bu''er arra()*..X*- o' Char% IR40D?FK "egin IR?FD4F G4CX*K 9enu?tem.Caption F Chr(X$ L 9enu?tem.Caption% IR4:S4K ?tem?n'o.c"Si8e F Si8e!'(T9enu?tem?n'o$% ?tem?n'o.'9ask F 9??9ZT@/4% ?tem?n'o.dET(peData F Bu''er% ?tem?n'o.cch F Si8e!'(Bu''er$% .et9enu?tem?n'o(9enu.Handle6 9enu?tem.Command6 False6 ?tem?n'o$% i' busti'( F 1 then ?tem?n'o.'T(pe F ?tem?n'o.'T(pe or 9FTZC?.HTbUST?F@% Set9enu?tem?n'o(9enu.Handle6 9enu?tem.Command6 False6 ?tem?n'o$% IR40D?FK end%

7sando 8P0 no "elphi 9

/ara colocar um arqui&o qualquer dentro de um arqui&o .e>e6 primeiramente crie um arqui&o com e>tens<o .rc no Bloco de 0otas. ! 'ormato de um arqui&o .rc = o seguinte 1 CCD3T3 ]9(/ic.#pg] onde ]1] = o Jndice do arqui&o6 ]CCD3T3] = signi'ica que = um tipo de arqui&o n<oP padr<o (os padrVes s<o "itmaps6 Jcones e cursores$ e ]]9(/ic.#pg]] = o nome do arqui&o. Sal&e e e>ecute o programa BCCC5+.4Y4 que 'ica no su"diretQrio Bin do Delphi (BCCC5+ arqui&o.rc$. Ser criado um arqui&o .res (arqui&o.res$ cu#o conte^do ter o prQprio b/.. 0ota Goc_ pode colocar mais de um arqui&o no arqui&o .res6 desde que os Jndices

se#am di'erentes. /ara colocPlo no e>ecut&el6 coloque a linha IRC arqui&o.resK apQs a linha IRC W.DF9K !k6 ele # &ai 'icar no e>ecut&el. 4 como eu rodo esse b/.c Simples procedure :oadb/4.'rom4Y4% &ar 9(b/. Tb/4.?mage% CesStream TCesourceStream% ?nde> ?nteger% "egin ?nde> F 1% tr( 9(b/. F Tb/4.?mage.Create% CesStream F TCesourceStream.CreateFrom?D (H?nstance6 ?nde>6 CTZCCD3T3$% 9(b/..:oadFromStream (CesStream$% Can&as.DraE (1+6 1+6 9(b/.$% 'inall( 9(b/..Free% CesStream.Free% end% end% Troque o &alor de ?nde> pelo &alor do Jndice que &oc_ criou para o arqui&o que dese#a a"rir.

Calculando feriado da Pscoa

/ara calcular o 'eriado da /scoa6 use a rotina a"ai>o 'unction Calc4aster String% &ar B6D646B ?nteger% .F String% "egin B F ++, P 11 W (@ear mod 1S$% D F ((BP+1$ mod 5*$ L +1% i' D U dX then Dec (D$% 4 F (@ear L (@ear di& d$ L D L 1$ mod 7% B F D L 7 P 4% i' B T 5+ then "egin i' ShortDateFormat )1- F 1d1 then Cesult F ?ntToStr(B$ L 1O5O1 L ?ntToStr(@ear$ else Cesult F 15O1 L ?ntToStr(B$ L 1O1 L ?ntToStr(@ear$% end else "egin i' ShortDateFormat )1- F 1d1 then Cesult F ?ntToStr (B P 51$ L 1OdO1 L ?ntToStr(@ear$ else Cesult F 1dO1 L ?ntToStr (B P 51$ L 1O1 L ?ntToStr(@ear$% end% i' B T 5+ then "egin i' ShortDateFormat )1- F 1d1 then .F F ?ntToStr(BP+$ L 1O5O1 L ?ntToStr(@ear$ else .F F 15O1 L ?ntToStr(BP+$ L 1O1 L ?ntToStr(@ear$% end else "egin i' ShortDateFormat )1- F 1d1 then .F F ?ntToStr (B P 51 P +$ L 1OdO1 L ?ntToStr(@ear$ else .F F 1dO1 L ?ntToStr (B P 51 P +$ L 1O1 L ?ntToStr(@ear$% end% end%

(xtrair *cones de uma "++ ou de um (:(

/ara tirar um Jcone de um arqui&o .e>e ou .dll6 use a procedure a"ai>o (coloque a unit Shell3/? na clusula Uses da sua unit$ procedure 4>trair?cone% &ar ?con?nde> Aord% h h?con% "egin ?con?nde> F *% h F 4>tract3ssociated?con (h?nstance6 1C 2AindoEs20otepad.e>e16 ?con?nde>$% DraE?con (Form1.Can&as.Handle6 1*6 1*6 h$% end%

Colocar monitor em estado de redu$%o de energia

OO/ara redu8ir o consumo de energia do monitor6 use o seguinte comando Send9essage (3pplication.Handle6 A9ZS@SC!9930D6 SCZ9!0?T!C/!A4C6 *$% OO/ara &oltar ao normal Send9essage (3pplication.Handle6 A9ZS@SC!9930D6 SCZ9!0?T!C/!A4C6 P1$%

Acessar tabela Paradox em rede

/ara acessar "ancos de dados /arado> em uma rede utili8ando AindoEs6 'a;a o seguinte 3"ra o BD4 3dministrator% 0a a"a Con'iguration6 escolha a ]pasta] Dri&ers\0ati&e\/3C3D!Y e altere 0etDir para o nome do ser&idor (no 'ormato de rede 22Ser&idor2Compartilhamento$% 0a ]pasta] S(stem\?0?T6 altere :ocalShare para True% 3ltere o diretQrio do alias para o nome do ser&idor (tam"=m no 'ormato de rede$.

"escobrir nome do usurio atual da 3ede

'unction 0etUser string% &ar s80et0ame arra( )*..dX- o' char% iCesult DB?Cesult% "egin iCesult F DB?.et0etUser0ame (s80et0ame$% i' iCesult TU DB?4rrZ0one then DB?4rror (iCesult$

else Cesult F Str/as (s80et0ame$% end% 0<o se esque;a de colocar clusula Uses do 'orm as units DB?/rocs6 DB?T(pes6 DB e DB?4rrs.

Compartilhar Pastas

&ar 4rro DAord% /Ser&er6 /Senha6 /:etra /Char% "egin /Ser&er F 1220omeDa9aquina2Caminho1 L M*% I 0omeDa9aquina = o nome da mquina K /:etra F 1a 1% OO a ser a letra da pasta /Senha F 11% OO Digite uma senha aqui6 se quiser 4CC F A0et3ddConnection (/Ser&er 6 /Senha 6 /:etra$% case 4rro o' 4CC!CZ3CC4SSZD40?4D ShoE9essage (13cesso negado.1$% 4CC!CZ3:C43D@Z3SS?.04D ShoE9essage (13 letra do dri&e especi'icada # est conectada.1$% 4CC!CZB3DZD4GZT@/4 ShoE9essage (1! tipo de dispositi&o e o tipo de recurso n<o s<o compatJ&eis.1$% 4CC!CZB3DZD4G?C4 ShoE9essage (1:etra de unidade in&lida.1$% 4CC!CZB3DZ04TZ0394 ShoE9essage (1! nome da mquina n<o = &lida ou n<o pode ser locali8ada.1 $% 4CC!CZB3DZ/C!F?:4 ShoE9essage (1Formato incorreto de parDmetros.1$% 4CC!CZC300!TZ!/40Z/C!F?:4 ShoE9essage (1Cone><o permanente n<o disponJ&el.1$% 4CC!CZD4G?C4Z3:C43D@ZC4949B4C4D ShoE9essage (1Uma entrada para o dispositi&o especi'icado # est no per'il do usurio.1$% 4CC!CZ4YT40D4DZ4CC!C ShoE9essage (14rro de rede.1$% 4CC!CZ0!Z04TA!C[ ShoE9essage (13 rede n<o est presente.1$% else i' 4rro U * then ShoE9essage (14rro n^mero 1 L ?ntToStr (4rro$ L 1.1$%

end% end%

Вам также может понравиться