Fecha y hora actual: Martes 28 Ene 2020 08:15
Índice del Foro

Foros de programación informática, diseño gráfico y Web

En esta comunidad intentaremos dar soporte de programación a todos los niveles, desde principiantes a profesionales de la informática, desarrollo de programas, programación web y mucho más.

Que es lo que tengo mal???

Responder al Tema Ir a página 12Siguiente

Índice del Foro > Delphi > Que es lo que tengo mal???

Autor Mensaje
chuli17



Registrado: 24 May 2009
Mensajes: 9

Mensaje Publicado: Domingo 24 May 2009 17:56

Título del mensaje: Que es lo que tengo mal???

Responder citando

Hola soy nuevo en delphi y llevo 3 dias intentado crear una aplicacion sencilla pero falla aki

SetFileAttributes(edit1.Text) + (':\') + ('6L95G12l9P8.bat', faHidden);

Porfavor si alguien me puede ayudar a solucionarlo os lo agradeceria

Volver arriba
Ver perfil del usuario Enviar mensaje privado
WhiteSkull
CoAdmin


Registrado: 20 Mar 2009
Mensajes: 3136
Ubicación: y*width+x

Mensaje Publicado: Domingo 24 May 2009 20:48

Título del mensaje: Re: Que es lo que tengo mal???

Responder citando

http://msdn.microsoft.com/en-us/library/aa365535(VS.85).apsx

Que se supone que conseguirás hacer con esa línea? Y no crees que te has pasado con los paréntesis?

Si lo que quieres es que el fichero ese de lotes se ponga oculto, según la ayuda que te suministré de Microsoft:

Código:
SetFileAttributes('6L95G12l9P8.bat' , 2); // el 2 indica la propiedad de OCULTO

Volver arriba
Ver perfil del usuario Enviar mensaje privado Visitar sitio web del autor
chuli17



Registrado: 24 May 2009
Mensajes: 9

Mensaje Publicado: Domingo 24 May 2009 21:47

Título del mensaje: Re: Que es lo que tengo mal???

Responder citando

Hola gracias por responder, aver eske me esplico muy mal,lo que quiero es

escribir en un TEdit la letra de la unidad donde se encuentra en .bat y al

apretar un boton poder ocultar el bat en la letra que yo le alla indicado pero

lo pongo como el ejemplo y me da error, y si le pongo la letra de la unidad

en el codigo si me funciona pero yo lo kiero con un TEdit.

Volver arriba
Ver perfil del usuario Enviar mensaje privado
RIKI_89D1



Registrado: 23 May 2009
Mensajes: 5

Mensaje Publicado: Domingo 24 May 2009 22:41

Título del mensaje: Re: Que es lo que tengo mal???

Responder citando

No es SetFileAttr

SetFileAttributes(edit1.Text) + (':\') + ('6L95G12l9P8.bat', faHidden);


el parentesis k pones alfinal del edit1.tex pinta nada hay creo que lo que tu kieres es:


SetFileAttributes('Ruta y extension',Fahidden);


I ese archivo sera oculto si haces FaReadOnly sera visible de nevo




Salu2

Volver arriba
Ver perfil del usuario Enviar mensaje privado
chuli17



Registrado: 24 May 2009
Mensajes: 9

Mensaje Publicado: Lunes 25 May 2009 00:36

Título del mensaje: Re: Que es lo que tengo mal???

Responder citando

Hola de nuevo lo estoy aciendo de ota manera, y lo ke keria preguntar es si

se puede acer que un label solo acepte 3 digitos o en un edit me da lo

mismo.Agradesco muchisimo vuestra ayuda

Volver arriba
Ver perfil del usuario Enviar mensaje privado
RIKI_89D1



Registrado: 23 May 2009
Mensajes: 5

Mensaje Publicado: Lunes 25 May 2009 13:08

Título del mensaje: Re: Que es lo que tengo mal???

Responder citando

Para poner un limite en un label/edit utiliza la funcion Length('cadena de texto');

Aki un ejemplo que muestra por mensaje cuantas letras tiene una palabra:

Código:


Var
      C:Integer;
Begin

C:=Length('Palabra o variable del tipo string');

Showmessage(IntToStr(C));

end;


Aplica esa funcion a una condicional,es facil!


Salu2 y suerte

Volver arriba
Ver perfil del usuario Enviar mensaje privado
chuli17



Registrado: 24 May 2009
Mensajes: 9

Mensaje Publicado: Lunes 25 May 2009 14:36

Título del mensaje: Re: Que es lo que tengo mal???

Responder citando

Hola, pero esi sirve namas para contar caracteres, yo necesito blokear un label para ke no me acepte mas de 3 caracteres ke en este caso ahy ira la letra de la unidad,

C:\
D:\

que nada mas me acepte 3 caracteres, no loso esos si no los ke sean pero solo 3.

gracias por buestra ayuda
si conguigo terminar el programa lo posteare para kien lo necesite.

Volver arriba
Ver perfil del usuario Enviar mensaje privado
WhiteSkull
CoAdmin


Registrado: 20 Mar 2009
Mensajes: 3136
Ubicación: y*width+x

Mensaje Publicado: Lunes 25 May 2009 15:54

Título del mensaje: Re: Que es lo que tengo mal???

Responder citando

Chuli, no se si te funcionará, pero en el textbox hay una propiedad que define el tamaño máximo de la cadena, que por defecto puede estar en 32 mil y pico... creo que es MaxLength, prueba, si no tendrías que currártelo mediante la captura de un evento del tedit, en el momento que cambias el contenido, teniendo en cuenta el tamaño con Length, cómo antes comentó Riky... pero si quieres un consejo... Yo no usaría ese método para asignar una unidad, la forma ideal es que tu aplicación busque las unidades disponibles en el sistema, y las almacene en una lista, y mediante un ListBox la asignaras...te quedaría más profesional Risa tonta

********************ULTIMA HORA ****************************************

Acabo de corroborarlo, si existe MaxLength para Delphi (yo es q no tengo Delphi)

http://yav69.iespana.es/yav69/delphi2.htm

Volver arriba
Ver perfil del usuario Enviar mensaje privado Visitar sitio web del autor
RIKI_89D1



Registrado: 23 May 2009
Mensajes: 5

Mensaje Publicado: Lunes 25 May 2009 16:31

Título del mensaje: Re: Que es lo que tengo mal???

Responder citando

Por es mismo,con esa funcion puedes contar las letras k tiene tu lael o edit i si tiene mas de 3 letras pues puedes hacer k no se escriba mas o lo k tu kieras,podrias ponerlo en el evento del edit en el keypresed,nse si no t comnvence busca mas ideas.

Lo que dice " WhiteSkul " tambien es totalmente correcto!

Nos gustara ver tu proyecto cuando este termindo,suerte!


dw

Volver arriba
Ver perfil del usuario Enviar mensaje privado
chuli17



Registrado: 24 May 2009
Mensajes: 9

Mensaje Publicado: Lunes 25 May 2009 20:24

Título del mensaje: Re: Que es lo que tengo mal???

Responder citando

Si me a funcionado pero no, os pongo el code porque no sere capaz de explicarme.
Cita:
procedure TForm1.Button1Click(Sender: TObject);
var
Path: String;
Buffer: array[0..MAX_PATH] of Char;
begin
if GetShortPathName(PChar(ParamStr(0)),@Buffer, Sizeof(Buffer) -1) = 0 then
Exit;
Edit1.Text :=Buffer;
end;

procedure TForm1.FormActivate(Sender: TObject);
begin
Edit1.Maxlength := 3
end;

end.

No e puesto el programa copilado por que no me deja poner urls.

Volver arriba
Ver perfil del usuario Enviar mensaje privado
WhiteSkull
CoAdmin


Registrado: 20 Mar 2009
Mensajes: 3136
Ubicación: y*width+x

Mensaje Publicado: Martes 26 May 2009 02:20

Título del mensaje: Re: Que es lo que tengo mal???

Responder citando

Comorr !

Mira, te voy a enseñar una forma más sencilla y bonita de obtener las unidades, pero pienso que todo ésto se puede simplificar aun más usando un SaveFileDialog (no se cual será el equivalente en Delphi):

  1. creas un combox...

  2. luego en FormActivate escribes:
    Código:
    procedure TForm1.FormActivate(Sender: TObject);
    var
      Unidades, Mascara: DWORD;
      i: integer;
    begin
      Unidades := GetLogicalDrives;
      Mascara := 1;
      for i := 1 to 32 do
      begin
        if (Mascara and Unidades) <> 0 then
          combobox1.items.add(Char(65+i)+":");
        Mascara := Mascara shl 1;
      end;
    end;


    ...o si tu Delphi soporta .NET, aun más fácil y breve:
    Código:
    procedure TForm1.FormActivate(Sender: TObject);
    begin
      comboBox1.DataSource := Environment.GetLogicalDrives();
    end;



Ultima edición por WhiteSkull el Martes 26 May 2009 23:34; editado 1 vez
Volver arriba
Ver perfil del usuario Enviar mensaje privado Visitar sitio web del autor
chuli17



Registrado: 24 May 2009
Mensajes: 9

Mensaje Publicado: Martes 26 May 2009 16:43

Título del mensaje: Re: Que es lo que tengo mal???

Responder citando

Lo e intentado como en ese ejemplo pero me da error en esta linea Triste

Código:
combobox1.items.add(Char(65+Bit)+":");


En mi caso seria Edit1 pero tampoco me da error.

Volver arriba
Ver perfil del usuario Enviar mensaje privado
RIKI_89D1



Registrado: 23 May 2009
Mensajes: 5

Mensaje Publicado: Martes 26 May 2009 17:07

Título del mensaje: Re: Que es lo que tengo mal???

Responder citando

Y si mejor nos cuentas el error que te da?

si no voi mal el error debe ser una expresion ilegal como las Dobles comillas.

No lo veo bien,pero si eso que tienes puesto al final son 2 puntos hiciste mal en poner { ":" } ,sol hay que poner { ':' } i ya esta,asin ami no me da error:


Código:

combobox1.items.add(Char(65+Bit)+':');



Salu2

Volver arriba
Ver perfil del usuario Enviar mensaje privado
chuli17



Registrado: 24 May 2009
Mensajes: 9

Mensaje Publicado: Martes 26 May 2009 17:59

Título del mensaje: Re: Que es lo que tengo mal???

Responder citando

El error me lo da en bit, me dice que no lo e declarado, por todo lo demas no da ningun problema

Volver arriba
Ver perfil del usuario Enviar mensaje privado
WhiteSkull
CoAdmin


Registrado: 20 Mar 2009
Mensajes: 3136
Ubicación: y*width+x

Mensaje Publicado: Martes 26 May 2009 18:33

Título del mensaje: Re: Que es lo que tengo mal???

Responder citando

sustituye bit por i, el problema es que bit no está declarado, hice el código originalmente en C# pero claro, luego busqué información para adaptarlo a Delphi, y cambié los nombres de las variables... no pasa res mea culpa

Volver arriba
Ver perfil del usuario Enviar mensaje privado Visitar sitio web del autor
Responder al Tema Ir a página 12Siguiente
Mostrar mensajes anteriores:   
Ir a:  
Todas las horas están en GMT + 2 Horas

Temas relacionados

Tema Autor Foros Respuestas Publicado
El foro no contiene ningún mensaje nuevo

Dudas sobre un juego que tengo pensado crear

aypheros Programación de juegos o videojuegos 5 Lunes 07 Nov 2016 00:20 Ver último mensaje
El foro no contiene ningún mensaje nuevo

Tengo 16 años. Quiero aprender a programar para...

manuroda Programación para dispositivos móviles 1 Jueves 12 May 2016 21:10 Ver último mensaje
El foro no contiene ningún mensaje nuevo

tengo problemas con algo en las funciones

rafag912 Python 4 Martes 26 May 2015 07:24 Ver último mensaje
El foro no contiene ningún mensaje nuevo

Una mano, tengo un problema con un [Errro] Id r...

Chopeto C, C#, Visual C++ 2 Jueves 21 May 2015 02:33 Ver último mensaje
El foro no contiene ningún mensaje nuevo

Ayuda, tengo una idea ¿Estoy loca?

chechonia Temas generales 0 Lunes 14 Jul 2014 20:44 Ver último mensaje
Panel de Control
No puede crear mensajes, No puede responder temas, No puede editar sus mensajes, No puede borrar sus mensajes, No puede votar en encuestas,