elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


  Mostrar Mensajes
Páginas: [1]
1  Sistemas Operativos / Windows / Re: Arrancar un programa sin llegar a ver el escritorio. en: 18 Marzo 2015, 17:38 pm
Buenas !
Consegui hacerlo al final con el InstantSheller.
 En vez de poner el frontend que seria el emulador de las recreativas, he puesto mi programa con el botoncito que arranca el explorer.exe y todo perfecto. Lo que si tuve que hacer es desactivar el antivirus a la hora de establecer el programa de arranque por que no dejaba modificar el registro.

Un saludo y gracias :D
2  Sistemas Operativos / Windows / Re: Arrancar un programa sin llegar a ver el escritorio. en: 13 Marzo 2015, 16:04 pm
Entonces lo que pretendes hacer es deshabilitar la shell y punto, jeje.

Accede a la siguiente clave de registro:
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon

Crea un nuevo valor de tipo REG_SZ con el nombre Shell (en caso de que no exista), y en los datos del valor especifica la ruta absoluta a tu programa (ej: C:\Application.exe).

ADVERTENCIA:
Lo que quieres hacer es interferir en el comportamiento del SO, y dicha modificación del registro prevendrá la inicialización de la Shell de Windows por tu propia Shell, es decir, no vas a poder acceder de forma natural a características cómo el menú contextual, o atajos del teclado (hotkeys) para iniciar aplicaciones cómo el administrador de tareas para inicializar el explorer manualmente (a menos que desde tu programa ejecutes el administrador de tareas o los programas que quieras).

Por ende, si haces la modificación del registro, primero prepara tu aplicación para que sea capaz de ejecutar el proceso 'explorer.exe', de lo contrario lo verás dificil para revertir el cambio;
puedes revertir la modificación eliminando el valor que creaste en el registro desde la misma cuenta de usuario (en caso de que pudieras acceder al regedit o correr un Script), o desde otra cuenta de usuario por ejemplo cargando el HIVE del registro del usuario que creó dicho valor.

Mi recomendación es que primero crees una nueva cuenta de usuario, te loguees en dicha cuenta, y desde allí haces la modificación en el registro para testear las capacidades de tu aplicación.

Saludos!

Muchas gracias Elektro.
El cambio de registro en HKEY Current user no ? Es que no estoy seguro y prefiero preguntar por no liarla.
He visto ademas que hay un programa que se llama Instansheller que lo modifica automaticamente con lo que tu le digas.Eso podria valerme ?

El tema de abrir el "explorer.exe" lo podria hacer con un System.Process.Start y llamar a explorer.exe o hay que hacerlo a traves del administrador de tareas ?

Un saludo.
3  Sistemas Operativos / Windows / Re: Arrancar un programa sin llegar a ver el escritorio. en: 11 Marzo 2015, 20:10 pm
He probado a modificar el registro Shell y el de userinit pero cuando reinicio vuelve a los valores predeterminados.

Lo que quería decir es que suponiendo que modificando el registro, explorer.exe no estaría ejecutado  y de alguna manera debería hacerlo mi programa. Lo que quiero es que no cualquiera pueda tener acceso al escritorio.

Perdón me olvide de decir que es Windows 7 64 bits.
4  Sistemas Operativos / Windows / Arrancar un programa sin llegar a ver el escritorio. en: 11 Marzo 2015, 17:02 pm
Hola a todos !
Traigo una duda que me lleva atormentando varios dias.
Tengo una aplicacion hecha en Visual Studio ( C#) y  mas especificamente sirve para controlar todo lo relacionado con una tienda de repuestos.

Ahora viene la duda, como puedo hacer que al iniciar Windows se cargue mi aplicacion sin tener que pasar por el escritorio ? Lo de meterla en el menu Inicio ya lo he intentado pero tarda bastante en arrancar por lo que el trabajador tendria tiempo de pasearse por el escritorio, carpetas, menu Inicio etc. etc.
Yo lo que quiero es arrancar el ordenador y que despues del logo de Windows, mas tarde o mas temprano, se ejecute mi programa pero sin pasar por el Escritorio.

Otro tema es que tambien me gustaria que una vez arrancado el programa un usuario con mas privilegios ( jefe, tecnico...) pueda acceder al escritorio minimizando el programa. La programacion de eso lo tengo hecho pero me imagino que dentro de mi programa deberia arrancar primero el explorer.exe .

Espero que me podais ayudar.

Un saludo.
5  Programación / .NET (C#, VB.NET, ASP) / Referencia a objeto no definida como instancia de un objeto - [C#] en: 9 Febrero 2015, 10:24 am
Hola a todos.
Como ya puse en otro tema estoy intentando añadir elementos a una base de datos desde un ListBox en VS pero el problema que tengo ahora es que cada vez que intento crearlo me salta este error.
Código
  1. private void Page_Loaded(object sender, RoutedEventArgs e)
  2.        {
  3.            database = new surplastikEntities();
  4.            elementList.ItemsSource = database.element.ToList();
  5.  
  6.            mainWindow = (MainWindow) Window.GetWindow(this);
  7.            mainWindow.SetVisibilidadBoton("botonVolver", Visibility.Visible);
  8.            mainWindow.SetTitle("Productos");
  9.        }


Este es el codigo de la carga de la pagina.

Código
  1. private void ButtonNewProductClick(object sender, System.Windows.RoutedEventArgs e)
  2.        {
  3.            element selected = (element) elementList.SelectedItem;
  4.            element newElement = new element();
  5.  
  6.            newElement.reference_code = "Nueva elemento";
  7.            if (selected != null)
  8.            {
  9.                newElement.large_x = selected.large_x;
  10.                newElement.bulk_code = selected.bulk_code;
  11.                newElement.width_y = selected.width_y;
  12.                newElement.hight_z = selected.hight_z;
  13.  
  14.                newElement.reference_code = selected.reference_code;
  15.            }
  16.            else
  17.            {
  18.                newElement.large_x = 0;
  19.                newElement.bulk_code = "0";
  20.                newElement.width_y = 0;
  21.                newElement.hight_z = 0;
  22.  
  23.                newElement.reference_code = "0";
  24.            }
  25.            database.element.Add(newElement); //<------ERROR AQUI
  26.  
  27.            database.SaveChanges();
  28.            database = new Entities();
  29.            elementList.ItemsSource = database.element.ToList();
  30.  
  31.  
  32.        }

Esa es la accion de mi boton nuevo elemento y la linea donde me da el error. He intentado ponerlo antes de darle los valores y despues de darselos pero el resultado es el mismo.

Agradezco su atencion.

Un saludo

Edit: He probado a meter una linea asi
Código
  1. if (newElement == null)
  2.                MessageBox.Show("NUEVO ELEMENTO NULO");
para ver si el elemento que acabo de crear es nulo y nunca me salta asi que doy por hecho que tiene que ser algo relacionado con la base de datos o su instanciacion.
6  Programación / .NET (C#, VB.NET, ASP) / Re: Error al acceder a base de datos - C# en: 30 Enero 2015, 16:06 pm
Una ayudita ??  :( :(
7  Programación / .NET (C#, VB.NET, ASP) / Re: Error al acceder a base de datos - C# en: 26 Enero 2015, 08:47 am
Pero en cambio en otro programa similar que tengo con las mismas lineas de codigo no me salta ningun error y hace lo que deberia hacer.

Código
  1. database = DataBaseFactory.GetlantaDatabaseEntities();
  2. this.productoList.ItemsSource = database.producto;
  3.  


Código
  1.  private void ButtonNewProductClick(object sender, System.Windows.RoutedEventArgs e)
  2.        {
  3.  
  4.  
  5.            ObjectSet<producto> listProd = (ObjectSet<producto>) this.productoList.ItemsSource;
  6.            producto prod = listProd.CreateObject();
  7.            prod.imagen = null;
  8.            prod.mosaico = null;
  9.            prod.id_producto = -1;
  10.  
  11.            if (selectedProduct != null)
  12.            {
  13.                prod.alto = selectedProduct.alto;
  14.                prod.ancho = selectedProduct.ancho;
  15.                prod.largo = selectedProduct.largo;
  16.            }
  17.            else
  18.            {
  19.                prod.alto = Systema.MIN_L;
  20.                prod.ancho = Systema.MIN_L;
  21.                prod.largo = Systema.MIN_L;
  22.            }
  23.  
  24.            //obtengo un nombre unico
  25.            String nombre = "PRODUCTO";
  26.            int i=0;
  27.            foreach (producto p in listProd)
  28.            {
  29.                try
  30.                {
  31.                    int aux = int.Parse(p.nombre.Substring(8));
  32.                    if (i <= aux)
  33.                    {
  34.                        i = aux + 1;
  35.                    }
  36.                }
  37.                catch (Exception)
  38.                { }
  39.  
  40.                if (String.CompareOrdinal(p.nombre.ToUpper(), (nombre + i)) == 0)
  41.                {
  42.                    i++;
  43.                }
  44.            }
  45.  
  46.  
  47.            prod.nombre = nombre + i;
  48.            listProd.AddObject(prod);            
  49.            database.SaveChanges();
  50.  
  51.            database = DataBaseFactory.GetUpdatedlantaDatabaseEntities();
  52.            this.productoList.ItemsSource = database.producto;
  53.  
  54.  
  55.  
  56.            selectedProduct = prod;            
  57.            this.mosaicoList.ItemsSource = selectedProduct.mosaico;
  58.            this.selectedMosaico = null;
  59.  
  60.            this.productoNombre.Text = selectedProduct.nombre;
  61.            this.alto.Text = selectedProduct.alto.ToString();
  62.            this.ancho.Text = selectedProduct.ancho.ToString();
  63.            this.largo.Text = selectedProduct.largo.ToString();
  64.  
  65.            this.sliderAlto.Value = selectedProduct.alto;
  66.            this.sliderAncho.Value = selectedProduct.ancho;
  67.            this.sliderLargo.Value = selectedProduct.largo;

Ese codigo es para crear nuevos elementos en la base de datos y que aparezcan en un DataGrid y es lo que quiero hacer en el nuevo codigo.

Esta es la parte de crear un nuevo producto del nuevo codido:

Código
  1.        private void ButtonNewProductClick(object sender, RoutedEventArgs e)
  2.        {
  3.            ObjectSet<element> listProd = (ObjectSet<element>) this.productoList.ItemsSource;
  4.        }
  5.  

En esa linea si pongo el acceso a la coleccion como .ToList() me dice lo siguiente:

Citar
Información adicional: No se puede convertir un objeto de tipo 'System.Collections.Generic.List`1[HMI_2.element]' al tipo 'System.Data.Objects.ObjectSet`1[HMI_2.element]'

Edit: Acabo de ver que el primer codigo ,el que funciona, tiene esta linea en el .XAML dentro de Page.Resources no se si tendra que ver:
Código
  1. <CollectionViewSource x:Key="productoViewSource" d:DesignSource="{d:DesignInstance my:producto, CreateList=True}" />
8  Programación / .NET (C#, VB.NET, ASP) / Re: Error al acceder a base de datos - C# en: 24 Enero 2015, 12:05 pm
Perdoname, pensaba que las habia puesto pero me equivoque. Tal y como esta ahora es correcto no ?

Edit: El proyecto usa una version de .NET Framework de destino 4.5.1 no se si estara relacionado con el problema
9  Programación / .NET (C#, VB.NET, ASP) / Error al acceder a base de datos - C# en: 23 Enero 2015, 10:43 am
Hola a todos.
He puesto la misma duda en el foro de Base de Datos pero ahora dudo si deberia estar ahi o aqui.
Os comento, estoy programando una aplicacion HMI para el control de un automata y a la hora de acceder a la base de datos el programa se me para y me salta el siguiente error.

Citar
Se produjo una excepción de tipo 'System.NotSupportedException' en EntityFramework.dll
pero no se controló en el código del usuario

Información adicional:
Citar
Data binding directly to a store query (DbSet, DbQuery, DbSqlQuery, DbRawSqlQuery) is not supported. Instead populate a DbSet with data, for example by calling Load on the DbSet, and then bind to local data. For WPF bind to DbSet.Local. For WinForms bind to DbSet.Local.ToBindingList(). For ASP.NET WebForms you can bind to the result of calling ToList() on the query or use Model Binding, for more information see"

El codigo es el siguiente:
Código
  1. private MainWindow mainWindow;
  2. private basedatosEntities bbdd;
  3. private element producto;
  4.  
  5. public PageSeleccion()
  6. {
  7. InitializeComponent();
  8. bbdd = DataBaseFactory.GetbasedatosDatabaseEntities();
  9. this.productoList.ItemsSource = bbdd.element; <----- Aqui me salta el error
  10. this.producto = null;
  11. }



basedatos es mi base de datos y element es una tabla de la base.

Me gustaria que me ayudarais a resolver este problema.

Gracias.



[MOD]: Usa las etiquetas adecuadas para insertar código o citas.
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines