Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-01-2008
Leviatan Leviatan is offline
Miembro
 
Registrado: oct 2005
Posts: 56
Poder: 21
Leviatan Va por buen camino
Cómo bloquear un documento

Hola amigos:

Les planteo el siguiente código:

Código Delphi [-]
procedure TForm2.Button3Click(Sender: TObject);
var
  Blob: TStream;
begin
  Screen.Cursor := crHourGlass;

  with ADOQuery1 do begin
    Close;
    SQL.Clear;
    SQL.Add('select * from tabla');
    Open;
  end;

  ADOQuery1.Edit;
  blob := ADOQuery1.CreateBlobStream(ADOQuery1.FieldByName('archivo'), bmRead);

  try
    blob.Seek(0, soFromBeginning);

    Ruta := 'C:\temp\' + ADOQuery1['nombre_archivo'];

    with TFileStream.Create(Ruta, fmCreate) do
      try
        CopyFrom(blob, blob.Size);
      finally
        Free
      end;
      ShellExecute(0, 'open', PChar(Ruta), nil, nil, SW_SHOWNORMAL);
  finally
    blob.Free
  end;

  Screen.Cursor := crDefault;

end;

Aquí lo que hago es recuperar un archivo guardado en una base de datos en una columna de tipo "Image" de SQL Server, luego crearlo en un directorio temporal y luego mostrarlo con la aplicación correcta.

La consulta es la siguiente: si por ejemplo "Juan Pérez" creó el documento entonces debería poder leer y escribir en él. En cambio "Juan González" solamente debería poder leer el archivo y no escribir en él. ¿Cómo puedo lograr eso?

Gracias anticipadas.

Última edición por dec fecha: 08-01-2008 a las 16:40:23.
Responder Con Cita
  #2  
Antiguo 08-01-2008
Leviatan Leviatan is offline
Miembro
 
Registrado: oct 2005
Posts: 56
Poder: 21
Leviatan Va por buen camino
Bloqueo de documento solucionado, ahora el problema es evitar la impresión

Encontré solución a cómo bloquear un documento a pesar de que nadie me haya respondido . Quizás a alguien le interese la misma:

procedure TForm3.Button1Click(Sender: TObject);
var
Handle: Integer;
Ruta: String;
begin
Ruta := 'C:\Documents and Settings\NGRI\Escritorio\Archivo.doc';
Handle := FileOpen(Ruta, fmShareDenyWrite);
ShellExecute(Handle, 'open', PChar(Ruta), nil, nil, SW_SHOWNORMAL);
end;

Ahora el problema es el siguiente:

¿Cómo puedo hacer para evitar que el usuario, que no es el creador original, imprima el documento?


Ojalá ahora sí pueda conseguir una respuesta

Saludos.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Cómo bloquear una tabla ? santi33a MS SQL Server 1 12-04-2006 15:02:34
Como bloquear un registro!!! CarlosHernandez Firebird e Interbase 7 12-08-2005 16:49:50
Como bloquear fecha Raptor Windows 2 09-11-2004 16:53:50
Como bloquear un DBComboBox fearlex OOP 8 29-04-2004 16:42:02
Cómo Bloquear Páginas Web fkuong Internet 6 28-09-2003 16:48:26


La franja horaria es GMT +2. Ahora son las 01:32:55.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi