![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
|
Hola a Todos
Antes de hacer esta pregunta me base en lo siguiente para deshabilitar el COntrol + Alt +Suprimir, encontrada en este hilo, como dicen aqui ![]()
Esta Funciona de maravilla pero solo cuando tengo permisos de adminsitrador y esta aplicacion esta corriendo bajo un usuario restringido de Dominio.Revisando la pagina encontre, en este hilo var StartupInfo: TStartupInfo; ProcessInfo: TProcessInformation; begin FillChar (StartupInfo, SizeOf(StartupInfo), #0); StartupInfo.cb := SizeOf(StartupInfo); Win32Check( CreateProcessWithLogonW( StringToOleStr('UsuarioConPermisos'),StringToOleStr ('Dominio'), StringToOleStr('Password'),0, StringToOleStr('Exe'), nil, 0, nil, StringToOleStr('DirectorioTrabajo'), StartupInfo, ProcessInfo ) ); end; [/delphi] Pero no he podido, alguien me puede explicar o dar otra solucion... De Antemano Muchas Gracias... ![]() Última edición por marcoszorrilla fecha: 19-09-2006 a las 23:23:18. |
|
#2
|
|||
|
|||
|
Cita:
reviso tu post y el codigo pero no son iguales a los q estan en el hilo anterior o trataste de dar una solucion mejor?...... de cualquier manera .. has intentado deshabilitar los tres botones utilizando el codigo ASCII? |
|
#3
|
||||
|
||||
|
Una solución es conectarte a la máquina como administrador y cambiar los permisos del registro para que el susodicho usuario (o todos los no-administradores) puedan cambiar el valor de la llave que te interesa.
Hasta luego. ![]()
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
|
#4
|
|||
|
|||
|
Retomando la idea.
Segui haciendo pruebas con:
Código Delphi [-] procedure TForm1.Button1Click(Sender: TObject); var StartupInfo: TStartupInfo; ProcessInfo: TProcessInformation; begin FillChar (StartupInfo, SizeOf(StartupInfo), #0); StartupInfo.cb := SizeOf(StartupInfo); Win32Check( CreateProcessWithLogonW( StringToOleStr('UsuarioConPermisos'),StringToOleStr ('Dominio'), StringToOleStr('Password'),0, StringToOleStr('Exe'), nil, 0, nil, StringToOleStr('DirectorioTrabajo'), StartupInfo, ProcessInfo ) ); end; Pero siendoles sincero no se como usarlo luego de hacer este procedimiento ya todo procedimiento que realice tiene permisos de administrador? Cuando compilo el codigo me sale: [Warning] Unit1.pas(33): Symbol 'Win32Check' is specific to a platform [Error] Unit1.pas(33): Undeclared identifier: 'CreateProcessWithLogonW' [Fatal Error] Prueb.dpr(5): Could not compile used unit 'Unit1.pas' Creeria que me hace falta: Código Delphi [-] function CreateProcessWithLogon; external 'advapi32.dll' name 'CreateProcessWithLogonW'; Pero donde lo coloco... mejor dicho me queda asi y no funciona Código Delphi [-] unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} function CreateProcessWithLogon; external 'advapi32.dll' name 'CreateProcessWithLogonW'; procedure TForm1.Button1Click(Sender: TObject); var StartupInfo: TStartupInfo; ProcessInfo: TProcessInformation; begin FillChar (StartupInfo, SizeOf(StartupInfo), #0); StartupInfo.cb := SizeOf(StartupInfo); Win32Check( CreateProcessWithLogonW( StringToOleStr('UsuarioConPermisos'),StringToOleStr ('Dominio'), StringToOleStr('Password'),0, StringToOleStr('Exe'), nil, 0, nil, StringToOleStr('DirectorioTrabajo'), StartupInfo, ProcessInfo ) ); end; end. Que hago...???? |
|
#5
|
|||
|
|||
|
Cita:
pero me podriad hechar una mano la verdad no soy muy ducho en esto de programar solo me acompaña un libreo de Delhi 4 en 1o minutos y el resto leyendo de ejemplo en Internet. |
|
#6
|
|||
|
|||
|
Cita:
y lo que mensionas del Codigo ASCII tampoco lo he probado me podrias dar un ejemplo.De antemano Gracias... |
|
#7
|
||||
|
||||
|
Cita:
Hasta luego. ![]()
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
|
#8
|
||||
|
||||
|
Cita:
Gracias Juan Antonio, ahora sé algo más. // Saludos |
|
#9
|
||||
|
||||
|
Cita:
¡sopas! Suponiendo exageradamente que, sin ser administrador, abrís el regedit en promedio 1 vez por día (yo no lo hago mas de un par de veces al mes), podemos deducir que tenes unos 97 años y medio laborando en la plataforma windows.. ![]() Si yo decía que vos venías del futuro... como el invento ese del RegEdit tuvo que ser por allá por 1994, mínimo vos venis del 2091!!!!! ![]() No seas egoista... contanos, ¿que tan lejos ha llegado la informática en aquellos tiempos? ¿sigue existiendo delphi? ¿turbo? ![]() ![]() ![]() ![]()
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
|
#10
|
|||
|
|||
|
Super bien
Cita:
Compañero de respeto no tenia ni medio idea que esto se podia hacer, desde luego funciona y bien. Agradezco mucho tu colaboración. ![]() Aprovecho... los cambios que realizo en el registro solo los toma cuando reinicio la maquina, hay alguna forma que hacer como un " F5 " para recargar la informacion del mismo... |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Control de Permisos con ADO | Migpal | MS SQL Server | 4 | 08-11-2005 08:27:50 |
| Software para SQLBase Administrador BD? | bataola | Varios | 2 | 05-08-2005 14:31:53 |
| DUDA: Permisos de Administrador | Ernesto Carrera | Firebird e Interbase | 2 | 10-02-2005 15:49:41 |
| Administrador para MySQL actualizado | Gasper | MySQL | 0 | 01-04-2004 20:54:40 |
| permisos para ejecutar un procedure | Crandel | Firebird e Interbase | 2 | 17-07-2003 21:31:47 |
|