Page 1 of 1

Boton que copie, sin pegar.

PostPosted: Wed Jan 04, 2012 4:16 pm
by Miguel1960
Necesito saber como presionando un boton, copio un archivo a la memoria ram para luego pegarlo en un programa determinado. Hasta ahora solo pude indicar la ruta en donde se encuentra ese archivo y presionando el boton, me hace una copia del mismo, con otro nombre y lo pega en la misma carpeta.

Solo necesito que se copie a la memoria.


Saludos,
Miguel

Usando el Help/Ayuda

PostPosted: Wed Jan 04, 2012 6:58 pm
by virger
NeoBokk ofrece un gran archivo de AYUDA (Help), ahi podras encontrar el 99.9% de las dudas la tuya esta en "FileCopy"

FileCopy "Origen" "Destino"

DEDE COSTA RICA
PURA VIDA

PostPosted: Thu Jan 05, 2012 12:16 pm
by Neosoft Support
You could try this:

FileRead "filename" "All" "[Clipboard]"

This will copy the contents of the file into the Windows clipboard. Replace "filename" above with the name of the file to copy. The file must be a text file for this to work.

PostPosted: Thu Jan 05, 2012 12:57 pm
by Miguel1960
Ante todo gracias por las respuesta, pero no me dan resultado, porque me genera un arhicvo nuevo
Lo que busco es lo siguiente: un comando que al pulsarlo en forma de boton copie un archivo cualquiera al portapapeles y que quede a la espera de ser pegado en cualquier lugar donde yo quiera.
El comando FileCopy me genera una copia cambiandole el nombre al archivo de destino.

Podria resolverlo con un archivo :BAT utilizando el comando RUN?



Saludos,
Miguel

PostPosted: Thu Jan 05, 2012 1:37 pm
by dec
Hola,

Hasta donde yo llego, hay al menos dos problemas aquí. El primero consiste en cómo copiar los archivos al portapapeles. Existe la posibilidad de copiar uno o varios archivos al portapapeles utilizando cierta API de Windows, y, de hecho tengo casi preparada una acción que acaso termine añadiendo a mi plugin npUtil. Con esta acción uno podría copiar archivos mediante las rutas de los mismos, de manera que, por ejemplo, después podría pegarlos en el explorador de Windows. Esto lo he probado y funciona tal como se espera.

Ahora bien, también he probado qué ocurre cuando copio los archivos de este modo, desde el punto de vista de NeoBook, es decir, qué contiene la variable "[Clipboard]", y, la respuesta es que no contiene nada. Pero, tampoco otros programas reaccionan a este tipo de "mensaje", es decir, utilizando mi editor de textos favoritos, habiendo copiado un par de archivos en el portapapeles, no parece "reconocer" dichos archivos cuando trato de "pegarlos".

Y es que para que el asunto funcione (a esto iba arriba con lo de dos problemas) las aplicaciones deben ponerse de acuerdo entre sí, y, estar al tanto de los correspondientes mensajes que Windows envíe. Es decir, como ya he comentado, la acción que yo podría añadir a npUtil funciona si los archivos se "pegan" en el explorador de Windows, porque dicho programa está pendiente de este tipo de mensajes, y actúa en consecuencia. Pero, otras aplicaciones no tienen porqué estarlo, o no pueden estarlo, directamente. Y así no podría funcionar el invento.

Espero haber podido ayudar en algo. ;)

PostPosted: Thu Jan 05, 2012 1:49 pm
by dec
Hola de nuevo,

Acabo de dar con otra posible solución, al menos en lo que toca a NeoBook. Se trata de la posibilidad de echar un vistazo al portapapeles a ver si hay archivos o no en el mismo. Es decir, podría darse una acción para copiar archivos en el portapapeles, y otra acción para tomar archivos desde el portapapeles (la ruta de los archivos).

Quizá el problema sería ahora que esta última acción no funcionaría como tal cual al pulsar la combinación de teclas "CTRL + V", es decir, se trataría de una acción como otra, que, permitiría averiguar si existen o no archivos en el portapapeles, copiados desde la primera acción (o desde el explorador de Windows, o desde cualquier otra aplicació que usase la misma API).

No sé si podría servirte Miguel, pero, yo me estoy animando a incluir este par de acciones en npUtil. ;)

PostPosted: Thu Jan 05, 2012 4:12 pm
by dec
Hola de nuevo,

Finalmente, he añadido un par de acciones nuevas al plugin npUtil:

* npFilesToClipboard

* npFilesFromClipboard

Creo que podrán resultar útiles, aunque no estoy seguro de que puedan servirte para lo que quieres, exactamente.

PostPosted: Sun Jan 08, 2012 7:08 pm
by Miguel1960
Disculpa la molestia, pero nunca use un plug in.
Hay que registrarlo?
Como lo asocio a un botón?
Como segunda opción necesitaría abrir una carpeta para visualizar los archivos que se encuentran en ella. Dicha carpeta se tiene que visualizar aunque copiara la presentación final (.exe) en un cd, pendrive o vía internet.

Saludos,
Miguel

PostPosted: Mon Jan 09, 2012 4:56 am
by dec
Hola,

Disculpa la molestia, pero nunca use un plug in.


Podrás encontrar más información en la ayuda de NeoBook o en estos mismos foros. Por ejemplo, en esta página. En realidad sólo tienes que instalar el plugin que sea, de modo que este aparezca disponible para utilizarlo.

Hay que registrarlo?


Depende del plugin. En el caso del plugin de que hablamos sí que has de registrarlo, aunque, siempre podrás probarlo anteriormente todo lo que quieras, para asegurarte de que cumple con tus necesidades y expectativas.

Como lo asocio a un botón?


Lo que un plugin añade a NeoBook son acciones, de manera que podrás utilizar las acciones del plugin en cualquier lugar donde uses cualquiera otra acción de NeoBook, por ejemplo, cuando se haga "click" en un botón.

Como segunda opción necesitaría abrir una carpeta para visualizar los archivos que se encuentran en ella. Dicha carpeta se tiene que visualizar aunque copiara la presentación final (.exe) en un cd, pendrive o vía internet.


Depende de si quieres "abrir" la carpeta en la propia publicación o fuera de ella. Para el primer caso podrías utilizar el plugin NeoBook FM/FTP, que, te permitirá mostrar un explorador de archivos en tu publicación. Para el segundo caso, ahora mismo no sabría darte una solución, aunque, me parece que sería posible añadir al plugin de que hablamos una acción que te permitiera abrir una determinada carpeta, como si la abriese el usuario desde el explorador de Windows.

Respecto a que no importe si la publicación se use desde un CD, o desde cualquier otro dispositivo o disco duro, lo que debes hacer es asegurarte de no usar "rutas absolutas" en tu publicación. No te preocupes porque es más sencillo de lo que parece. Existe una variable global en NeoBook de nombre "[PubDir]". Esta variable siempre guardará la ruta del directorio del archivo EXE de nuestra publicación: se ejecute donde se ejecute.

De este modo, para referirte a una carpeta "imgs", que se encontrase al lado del ejecutable de tu publicación, no debes nunca utilizar una ruta parecida a esta: "C:\My pub\imgs", puesto que, en efecto, dicha ruta puede ser válida en tu ordenador, pero, no en otros ordenadores. Ahora bien, si escribes algo como esto: "[PubDir]\imgs", al final se obtendrá la ruta que queremos, independientemente de que nuestra publicación esté en "C:\", "D:\", etc.

PostPosted: Mon Jan 09, 2012 7:37 am
by dec
Hola de nuevo,

Aquí va una posible solución para "abrir" una determinada carpeta sin utilizar plugin alguno:

Code: Select all
Run "explorer.exe" "C:\Windows" "Normal" "" ""


En efecto, lo que se hace es ejecutar el explorador de Windows, enviándole como argumento la carpeta a abrir, en este caso "C:\Windows".

---

To others NeoBookers: if you need to open a folder, like if the user open it using the Windows Explorer, you can use the above code.