FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Duda acerca de ShellExecute
Hola me gustaria saber si podría poner un codigo para que se ejecute el ShellExecute para todos los usuarios, aver que me explico, un ejemplo:
ShellExecute ('C:\Documents and Settings\Administrador' ) ; Donde Administrador puede estar el nombre de otro usuario y me pregunto si ay un comando para que funcione con todos, algo asi como ¨users¨, no se mejor dejo de decir burradas y me ayudais, GRACIAS. PDT: eta es mi 1ª pregunta aqui |
#2
|
||||
|
||||
Hola,
¿pero qué fichero quieres ejecutar exactamente? ShellExecute sirve para realizar acciones sobre ficheros, ¿qué es lo que quieres hacer? PD: Ayuda de MS sobre ShellExecute http://msdn.microsoft.com/library/de...ellexecute.asp
__________________
Progress Openedge https://abevoelker.com/progress_open...dered_harmful/ Delphi forever... |
#3
|
|||
|
|||
quiero crear un boton que me lleve a un directorio que se encuentra en documents & settings, cosa que ya consegui. Lo que pasa que solo me funciona a mi por lo siguiente:
"El boton que cree en la aplicacion me lleva al siguiente directorio..." C:\Documents and Settings\Chupi\Configuración local\Archivos temporales de Internet "...y a unas cuantas personas les gusto mi aplicacion porque son unos gandules." Entonces yo no boy a estar creando aplicaciones para cada uno de los usuarios que me la pidan. Así es como lo puse y funciona, pero solo para mí: ShellExecute ( 'C:\Documents and Settings\Chupi\Configuración local\Archivos temporales de Internet' ) El problema esta en "Chupi", no todo el mundo tiene este directorio claro. GRACIAS por atenderme. |
#4
|
|||
|
|||
Usa la variable del sistema %HOMEPATH% para averiguar el dato que necesitas.
Puedes usar esta función:
%HOMEPATH% contiene el valor: C:\Documents and Settings\UserName, ya solo le tienes que agregar el resto de la ruta deseada. Saludos... Última edición por maeyanes fecha: 21-12-2004 a las 20:03:05. |
#5
|
||||
|
||||
Otra forma es usar la siguiente función:
que te da la ruta de muchos folders de este tipo. En tu caso usarías:
Si consultas la ayuda del SDK de Windows para la función ShGetSpecialFolderLocation podrás ver los valores que puedes dar al parámetro nFolder. // Saludos |
#6
|
|||
|
|||
ya lo capte
Ok, gracias creo que ya me quedo claro, aver si me compro el dichoso libro porque si no boy a estar con dudas hasta que me canse.
__________________
No se cuál es mi mayor vicio, el cigarro, o el ordenador |
#7
|
|||
|
|||
Pues parece que no funciona, le puse el siguiente codigo y nada:
procedure TForm1.Button1Click(Sender: TObject); function GetSpecialFolder(nFolder: Integer): String; var Path: array[0..MAX_PATH] of Char; begin ShlObj.SHGetSpecialFolderPath(0, Path, nFolder, false); Result := Path; end; End; end. Me da los siguientes errores: [Error] Unit1.pas(39): BEGIN expected but END found [Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'
__________________
No se cuál es mi mayor vicio, el cigarro, o el ordenador |
#8
|
||||
|
||||
No pongas el cuerpo de la función dentro del procedimiento. La función está para que puedas usarla desde cualquier parte. Suponiendo que vas a colocar la ruta en un edit al moment de hacer click al botón, pondrías:
pero la definición de la función la dejas fuera. // Saludos pd: ¿A qué libro te refieres? Ten encuenta que ningún libro bastará y tienes que recurrir a varias fuentes. Para cuestiones relacionadas con las APIs de Windows, una fuente invaluable es la ayuda del SDK de Windows que se incluye con Delphi o que puedes consultar más actualizada y completa directamente en línea en http://msdn.microsoft.com/library/ |
#9
|
|||
|
|||
Jooo...
Ok pero sigo teniendo problemas de tozudo porque no tengo ni idea y puse lo siguiente:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ShlObj, 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 GetSpecialFolder(nFolder: Integer): String; procedure TForm1.Button1Click(Sender: TObject); var Path: array[0..MAX_PATH] of Char; begin ShlObj.SHGetSpecialFolderPath(0, Path, nFolder, false); Result := Path; end; End; end. Y los errores: [Error] Unit1.pas(27): ';' expected but '.' found [Error] Unit1.pas(12): Unsatisfied forward or external declaration: 'TForm1.Button1Click' [Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas' Seguro que la respuesta esta ante mis narizes lo que pasa que todavia no entiendo muy bien los codigos, solo me se los basicos. Y acerca de lo del libro es mas bien un manual de como usar el delphi. PD: Gracias por aguantarme.
__________________
No se cuál es mi mayor vicio, el cigarro, o el ordenador |
#10
|
|||
|
|||
Sigues poniendo mal tú código...
Debes hacerlo así más o menos...
|
#11
|
|||
|
|||
no es eso
no quiero nada de un texto, tan solo es una variable que no se donde ponerla pero si se que la del win2K es USERPROFILE% y la del XP es %HOMEPATCH% y yo me toy aciendo un lio.
PD: vamos a batir un record en mensajitos colega.
__________________
No se cuál es mi mayor vicio, el cigarro, o el ordenador |
#12
|
|||
|
|||
Retomando lo que deseas hacer en realidad, este sería el código que tienes que utilizar en el evento OnClick del botón.
|
#13
|
|||
|
|||
por último
¿me podriais mandar la funcion completa? y me quito un gran problema de la cabeza, (así de paso me lo estudio), os lo agradecería bastante.
Gracias y SALUDOS.
__________________
No se cuál es mi mayor vicio, el cigarro, o el ordenador |
|
|
|