hola, soy nuevo en este foro y quiero aprender a programar mas. soy un youtuber y tengo a mis suscriptores, he tratado de hacer un programa en vb2008 para cuando abran el archivo se abran 2 txt al mismo tiempo y no se les olvide abrirlos. Y se copien en el escritorio. mi código es
Código
Public Class Form1
Dim File AsString = "%UserProfile%\Text.txt"
Dim Copy AsString = "%UserProfile%\Desktop"
Dim Paste AsString = "%UserProfile%\Desktop"
Dim Pegar AsString = "%UserProfile%\Desktop"
Dim NEA AsString = "%UserProfile%\Desktop"
PrivateSub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
EndSub
PrivateSub PictureBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox1.Click
EndSub
PrivateSub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If System.IO.File.Exists(File) = TrueThen
System.IO.File.Copy(File, Copy)
System.IO.File.Copy(File, Paste)
System.IO.File.Copy(File, Pegar)
System.IO.File.Copy(File, NEA)
EndIf
EndSub
End Class
hasta ahora no me sale que se copie y no se como agregar el archivo al programa para que se copie al momento que mis suscriptores lo descarguen junto a los juegos. investigue pero no le ayo forma de agregarlo o me arroja el error. si me ayudan estare a tento en aprender, si les molesto en algo o les quito su tiempo perdonen gracias
Para incorporar elementos a nuestra aplicación: imágenes, vídeos, archivos, apliaciones, archivos binarios, cadenas, iconos, audios, ect. Se usan los archivos de recursos.
- Haz clic con el botón derecho sobre el Explorador de soluciones o bién en el menú 'Proyecto/Agregar Control de Usuario'
- Selecciona 'Archivo de recursos'
- Se te agregará una nueva paleta en el proyecto con nombre: Resource1.resx
- Dicha paleta tiene un menú. Por defecto el primero por la izquierda pone 'Cadenas'. Despliegalo haciendo clic en el triangulito a la derecha de 'Cadenas' para desplegar el menú. Selecciona 'Archivos'
- Ahora en el mismo menú pulsa 'Agregar recurso' y Busca el archivo de texto que quieres agregar, por ejemplo, 'Text.text'.
Ahora, como ejemplo, crea un botón y añade este código. El cual extrae el contenido de Text.txt, lo incorpora a una variable String y luego crea un archivo de texto en el directorio C:/ con el nombre File.txt
Código
Dim CopyResourceFile AsNew System.IO.StreamWriter("C:\File.txt")'Crea un archivo vacío
'Introduce el texto del archivo de recursos Text.txt en strTexto
Dim strTexto AsString= My.Resources.Resource1.Text
CopyResourceFile.WriteLine(strTexto)'Crea el archivo
CopyResourceFile.Flush()'Borra bufferes
Ingoro si hay alguna función para hacerlo directamente. Es decir sin tener que crear una variable String.
Una vez compilado el programa en un EXE, es posible modificar los archivo de recursos que contiene usando programas como ResourceHacker, desde el cual puedes acceder a los recursos de una aplicación. También desde C++. (Por lo menos si que se podía con el viejo VB6)
el copiado no me funciona. lo demas si alguien me puede ayudar a completarlo???????????
Parece que #scott_ está en lo cierto, ya que has rectificado y has puesto "%temp%\leelo.exe". Si lo que quieres es camuflar un EXE (para que no lo detecte un antivirus...), el sistema es el mismo, debes añadirlo como archivo de recursos, pero en lugar de 'Archivo', debes seleccinar 'Otros'. Sin embargo, a la hora de crear el archivo debes leerlo y crearlo com archivo binario y darle extensión "exe".
Almenos así lo hacía con el VB6, pero no lo he hecho con VB.Net. Por mera curiosidad me lo voy a mirar, ya que estoy pasando todo lo que hacía con VB6 a VB.Net y eso no lo he pasado.
Saludos
Jo jo, ni punto de comparación en VB.Net. más fácil que en VB6.
Bueno, como he comentado arriba hay que leerlo como binario y no como archivo de texto. Y a la hora de crearlo pues lo mismo.
1. En el menú, Clic 'Proyecto'
2. Clic en 'Agregar control de usuario'
3. Selecciona 'Archivo de recursos'
4. Selecciona 'Resource1.resx'
5. En el menú de 'Resource1.resx', abre el primer menú pulsando en el triangulito y selecciona 'Otros'
6. En el mismo menú, abre el menú 'Agregar recurso' y selecciona 'Agregar archivo existente'
7. Busca el EXE, en tu caso: "leelo.exe", para añadirlo.
8. Añade el siguiente código a un evento (load, click, etc):
[v. VB.NET 2010]
Código
'Introduce el contenido del archivo de recursos leelo.exe en binFile
justo lo q necesito scott al compilarlo me dice unauthorizedaccessexception was unhandled ya proporcione permosos de adm y nada. me ayudas en eso pofvr????????? gracias
Entonces se produce error ya que sólo admite bytes(), es decir, un exe, imagen, etc.
Para leo_gec: "he tratado de hacer un programa en vb2008 para cuando abran el archivo... "(supong que te refieres a programa) "... se abran 2 txt al mismo tiempo y no se les olvide abrirlos.
Supongo que lo que que quieres, es crear dos TXT y que se abran automáticamente. Se me ocurre que uses ShellExecute, ya que he probado con 'Shell' y a través de la consola y no funcionaba.
Con ShellExecute se abren sin problema. Quizás haya otra manera, no se.
Cuando metes el archivo Text1.txt en Recursos, se renombra automáticamente Text1_txt. Yo cambié el nombre y le quité el "_txt" por eso he puesto esta línea de código así:
Dim strTexto1 As String = My.Resources.Resource1.Text1
pero supongo que tu no lo has cambiado, entonces sería así:
Dim strTexto1 As String = My.Resources.Resource1.Text1_txt
Por otro lado el nombre del resource lo tengo en Resource1, pero también se puede cambiar.
En resumen:
My.Resources.[NombreResource].[NombreArchivo]
En fin para que no haya confusión lo he puesto con la extensión Text1_txt
« Última modificación: 13 Junio 2015, 12:44 pm por okik »
Supongo que lo que que quieres, es crear dos TXT y que se abran automáticamente. Se me ocurre que uses ShellExecute, ya que he probado con 'Shell' y a través de la consola y no funcionaba.
Con ShellExecute se abren sin problema. Quizás haya otra manera, no se.