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

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


  Mostrar Mensajes
Páginas: 1 ... 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 [47] 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 ... 255
461  Programación / .NET (C#, VB.NET, ASP) / Re: Ayuda necesito que el pc lea en: 20 Noviembre 2017, 03:23 am
No se a que te refieres.
https://msdn.microsoft.com/es-es/library/k0t5wee3.aspx

462  Programación / Programación C/C++ / Re: Solucionando errores en: 19 Noviembre 2017, 22:27 pm
Hola Señor.

¿Cómo estás?

Tenía que poner std, no str, me esquivoqué al escribir, en el cual también da errores.

Hice otro código pero sigue con errores.
Código
  1. #include "stdafx.h"
  2. #include "stdio.h"
  3. #include "Windows.h"
  4. #include "iostream"
  5. #include "string"
  6. #include "conio.h"
  7. #include "cctype"
  8.  
  9. using namespace std;
  10.  
  11.  
  12. int main()
  13. {
  14. // Título de la ventana.
  15. SetConsoleTitle(L"Abrir y cerrar bandeja del disco C++ Win32");
  16.  
  17. // Variable
  18. char entrada[] = "\0"; // Guarda A, a, C, y c tipo string que introduces desde la consola.
  19.  
  20. while (true)
  21. {
  22. cout << "Control bandeja del lector : \n\n" << endl; // Muestra en pantalla textos.
  23. cout << "A - Abrir bandeja. \n" << endl;
  24. cout << "C - Cerrar bandeja. \n" << endl;
  25. cout << "========================== \n\n" << endl;
  26.  
  27. cin >> entrada; // Aquí introduces letras A, a, C, y c.
  28.  
  29. switch (tolower(entrada)) // Espera recibir A, a, C, y c. Transforma en minúscula.
  30. {
  31. // Abrir bandeja.
  32. case 'a':
  33. cout << "Abriendo..." << endl; // Muestra en pantalla textos.
  34. //printf("Abriendo...");
  35. // Aquí va un evento para que aparezca la palabra Abirendo... mientra se está abriendo el lector.
  36. mciSendString(L"set cdaudio door open", nullptr, 0, nullptr);
  37. cout << "Abierto." << endl; // Muestra en pantalla textos.
  38. break;
  39.  
  40. // Cerrar bandeja.
  41. case 'b':
  42. cout << "Cerrando..." << endl; // Muestra en pantalla textos.
  43. // Aquí va un evento.
  44. mciSendString(L"set cdaudio door closed", nullptr, 0, nullptr);
  45. cout << "Cerrado." << endl; // Muestra en pantalla textos.
  46. break;
  47.  
  48. default: // Si haz pulsado otro caracter distinto de A, C, a, y c aparece
  49. cout << "Solo pulsar A o C." << endl; // este mensaje.
  50. }
  51. }
  52. return EXIT_SUCCESS;
  53. }
  54.  
  55.  

Errores:


Si que me está dando guerra.

Saludos.
463  Programación / .NET (C#, VB.NET, ASP) / Re: ¿Por qué me salen botones repetidos? en: 19 Noviembre 2017, 20:43 pm
Buenas:

Veo que hay GUI para hacer la vida más fácil, no tiene todos los códigos pero funciona.
https://poshgui.com/#

Más GUI para elegir.
http://tianit.cloudapp.net/blog/index.php/2015/11/04/crear-formularios-con-powershell/

¿Por qué Microsoft no pone como novedad un editor GUI visual para F# y PowerShell?

No se porqué no lo hace si hay demanda, los que lo hacen son terceros y no están completos pero lo intentan y al menos existen para escapar.

Mi truco es, hacer el formulario al 100 % con Visual C# y adaptar los códigos a PowerShell con lo que quiere mucho tiempo.

Saludos.
464  Programación / Scripting / Crear formulario de estos lenguajes en: 19 Noviembre 2017, 11:08 am
Hola:

Antes pensaba que PowerShell solo era línea de comandos, el sustituto del CMD de Windows se puede decir. He descubierto hoy que se puede crear formulario tal como lo hace Windows Form de Visual C# o Visual Basic .net.

Aquí hay un editor de formularios para hacerlo más rápido por vía Web y te genera el código para probarlo en el Power Shell.
https://poshgui.com/#

Aquí encuentras más enalces.
# http://tianit.cloudapp.net/blog/index.php/2015/11/04/crear-formularios-con-powershell/

Por ejemplo, abajo un formalario creado en visual solo con códigos de PowerShell.


Mi pregunta es.

¿Se puede crear también formularios con el lenguaje Visual F#?


Por todas partes se llama Visual F#, pero solo he visto códigos en modo consola.

Saludos.
465  Programación / .NET (C#, VB.NET, ASP) / ¿Por qué me salen botones repetidos? en: 19 Noviembre 2017, 09:24 am
Hola:

Tengo esta ventana creada con PowerShell. Lo que no entiendo por mucho que observe el código, es que me aparezcan dos botones iguales en la parte de arriba.



Código:
# Cargo los Assemblies (necesario para definir el form).
[void][reflection.assembly]::loadwithpartialname("System.Windows.Forms")
[void][reflection.assembly]::loadwithpartialname("System.Drawing")

            $label_Mensaje = New-Object System.Windows.Forms.Label
            $button_Abrir = New-Object System.Windows.Forms.Button
            $button_Cerrar = New-Object System.Windows.Forms.Button
            $groupBox_Bandeja = New-Object System.Windows.Forms.GroupBox

            #
            # label_Mensaje
            #
            $label_Mensaje.Location = New-Object System.Drawing.Point(12, 9)
            $label_Mensaje.Name = "label_Mensaje"
            $label_Mensaje.Size = New-Object System.Drawing.Size(58, 13)
            $label_Mensaje.Text = "Abriendo..."
            #
            # button_Abrir
            #
            $button_Abrir.Location = New-Object System.Drawing.Point(31, 30)
            $button_Abrir.Name = "button_Abrir"
            $button_Abrir.Size = New-Object System.Drawing.Size(75, 23)
            $button_Abrir.Text = "Abrir"         
            #
            # button_Cerrar
            #
            $button_Cerrar.Location = New-Object System.Drawing.Point(139, 30)
            $button_Cerrar.Name = "button_Cerrar"
            $button_Cerrar.Size = New-Object System.Drawing.Size(75, 23)
            $button_Cerrar.Text = "Cerrar"
            #
            # groupBox_Bandeja
            #
            $groupBox_Bandeja.Controls.Add($button_Cerrar)
            $groupBox_Bandeja.Controls.Add($button_Abrir)
            $groupBox_Bandeja.Location = New-Object System.Drawing.Point(15, 118)
            $groupBox_Bandeja.Name = "groupBox_Bandeja"
            $groupBox_Bandeja.Size = New-Object System.Drawing.Size(250, 97)
            $groupBox_Bandeja.Text = "Bandeja"

            #
            # Form1
            #
            #$AutoScaleDimensions = New-Object System.Drawing.SizeF(6F, 13F)
            #$AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
            $Form.ClientSize = New-Object System.Drawing.Size(284, 261)
            $Form.Controls.Add($groupBox_Bandeja)
            $Form.Controls.Add($label_Mensaje)
            $Form.Name = "Form1"
            $Form.Text = "Ventana PowerShell"

            # Ejecuto el formulario.
            [void]$Form.ShowDialog()

Saludos.
466  Programación / Scripting / Hacer un menú sencillo con este Script en: 19 Noviembre 2017, 07:22 am
Hola a todos y a todas:

Quiero hacer un menú sencillo que las funciones se hará después.

Por ahora he hecho esto de esta manera haciendo pruebas.

Citar
╔====================================╗
║     Control bandeja del lector     ║
╠====================================╣
║                                    ║
1) Primera Opción
2) Segunda Opción
3) Tercera Opción
S) Presiona 'S' para salir
Elegir una Opción:

Como puedes ver, pulso el número 2), luego Enter para poder entrar en el menú. Mi idea es, desde que pulses la tecla número 2), entre directamente a la Segunda opción sin tener que pulsar Enter.

Código:
{ 
     param (
           [string]$Titulo = ' Control bandeja del lector '
     )
     cls
     Write-Host "╔====================================╗"
     Write-Host "║    $Titulo    ║"
     Write-Host "╠====================================╣"
     Write-Host "║                                    ║"

     
     Write-Host "1) Primera Opción"
     Write-Host "2) Segunda Opción"
     Write-Host "3) Tercera Opción"
     Write-Host "S) Presiona 'S' para salir"
}

do
{
     mostrarMenu
     $input = Read-Host "Elegir una Opción"
     switch ($input)
     {
           '1' {
                cls
                'Primera Opción'
           } '2' {
                cls
                'Segunda Opción'
           } '3' {
                cls
                'Tercera Opción'
           } 's' {
                return
           } 
     }
     pause
}
until ($input -eq 's')


¿Cómo se hace lo que quiero?

Saludos.
467  Programación / Programación C/C++ / Re: Adaptar C++ CLR a C++ Win32 en: 19 Noviembre 2017, 04:29 am
Hola:

Una aclaración de lo que quiero hacer.

Puedo introducir estas letras, A, a, C y c. Si introduzco otra cosa, las ignora.

Si en el teclado pulso la letra A mayúscula, pues con el str.ToLower quería que cualquier letra que pulse mayúscula, lo convierta en minúscula.

He comprobado que tu código al final si funciona, si pongo el teclado en mayúscula activado. Solo falta la soltura de vovler a preguntar siempre las teclas en vez de cerrarse el programa.

Aún así, tu código, buen trabajo. Ya vamos paso a paso.

Saludos.
468  Programación / .NET (C#, VB.NET, ASP) / Re: Hacer funcionar el lector de bandeja de discos con este lenguaje .net en: 19 Noviembre 2017, 01:52 am
Hola:

Ya está está solucionado. Hay que leerse bien hasta las narices los tutos estos deF#.
https://msdn.microsoft.com/es-es/library/ee241126(v=vs.110).aspx
https://msdn.microsoft.com/es-es/library/dd233160(v=vs.120).aspx

Código F#:
Código
  1. // Más información acerca de F# en http://fsharp.org
  2.  
  3. open System
  4. open System.Runtime.InteropServices
  5. open System.Text;
  6.  
  7. // importar librería o dll externo.
  8. [<DllImport("winmm.dll")>]
  9. extern int mciSendString(string lpstrCommand, StringBuilder lpstrReturnString,
  10.        int uReturnLength, IntPtr hwndCallback)
  11.  
  12. let rt = StringBuilder(127)
  13.  
  14. // Evento.
  15. let DoEvents (transition:string) =
  16.    Console.SetCursorPosition(0, 6)
  17.    Console.Write transition
  18.  
  19. let action state transition (mensaje:string) =
  20.    Console.SetCursorPosition(0, 6);
  21.    DoEvents transition;
  22.    mciSendString(state, rt, 127, IntPtr.Zero) |> ignore
  23.    Console.SetCursorPosition(0, 6)
  24.    Console.Write("           ")
  25.    Console.SetCursorPosition(0, 6)
  26.    Console.Write(mensaje)
  27.  
  28. // Pulse letra A para abrir bandeja o C para cerrar bandeja.
  29. let rec loop() =
  30.    match Console.ReadKey(true).Key with
  31.    | ConsoleKey.Escape -> ()
  32.    | ConsoleKey.A -> action "set CDAudio door open" "Abriendo..." "Abierto."
  33.                      loop()
  34.    | ConsoleKey.C -> action "set CDAudio door closed" "Cerrando..." "Cerrado."
  35.                      loop()
  36.    | _ -> loop()
  37.  
  38. [<EntryPoint>]
  39. let main argv =
  40.    // Título de la ventana.
  41.    Console.Title <- "F#"
  42.  
  43.    // Tamaño ventana consola.
  44.    Console.WindowWidth <- 29 // X. Ancho.
  45.    Console.WindowHeight <- 8 // Y. Alto.
  46.  
  47.    // Cursor invisible.
  48.    Console.CursorVisible <- false
  49.  
  50.    // Posición del mansaje en la ventana.
  51.    Console.SetCursorPosition(0, 0)
  52.    Console.Write(@"Control bandeja del lector:
  53.  
  54. A - Abrir bandeja.
  55. C - Cerrar bandeja.
  56. ===========================")
  57.    loop()
  58.    0 // return an integer exit code

Por cierto. Los códigos GeSHI no inclute F# de este foro.

¿Se incluirán en el futuro y no se puede?

Saludos.
469  Programación / Programación C/C++ / Re: Adaptar C++ CLR a C++ Win32 en: 19 Noviembre 2017, 00:10 am
Buenas:

Tu programa ejecuta pero no pasa nada si pulso las teclas.

Intenté hacerlo como pude a mi manera pero no ejecuta.

Código
  1. #include "stdafx.h"
  2. #include "stdio.h"
  3. #include "Windows.h"
  4. #include "iostream"
  5. #include "string"
  6. #include "conio.h"
  7.  
  8. using namespace std;
  9.  
  10.  
  11. int main()
  12. {
  13. // Título de la ventana.
  14. SetConsoleTitle(L"Abrir y cerrar bandeja del disco C++ Win32");
  15.  
  16. // Variable
  17. char entrada[] = "\0"; // Guarda A, a, C, y c tipo string que introduces desde la consola.
  18.  
  19. while (true)
  20. {
  21. printf("Control bandeja del lector : \n\n");
  22. printf("A - Abrir bandeja. \n");
  23. printf("C - Cerrar bandeja. \n");
  24. printf("========================== \n\n");
  25.  
  26. cin >> entrada; // Aquí introduces letras A, a, C, y c.
  27.  
  28. switch (srt.tolower(entrada)) // Espera recibir A, a, C, y c. Transforma en minúscula.
  29. {
  30. // Abrir bandeja.
  31. case 'a':
  32. cout << "Abriendo..." << endl; // Muestra en pantalla textos.
  33. //printf("Abriendo...");
  34. // Aquí va un evento para que aparezca la palabra Abirendo... mientra se está abriendo el lector.
  35. mciSendString(L"set cdaudio door open", nullptr, 0, nullptr);
  36. cout << "Abierto." << endl; // Muestra en pantalla textos.
  37. break;
  38.  
  39. // Cerrar bandeja.
  40. case 'b':
  41. cout << "Cerrando..." << endl; // Muestra en pantalla textos.
  42. // Aquí va un evento.
  43. mciSendString(L"set cdaudio door closed", nullptr, 0, nullptr);
  44. cout << "Cerrado." << endl; // Muestra en pantalla textos.
  45. break;
  46.  
  47. default: // Si haz pulsado otro caracter distinto de A, C, a, y c aparece
  48. cout << "Solo pulsar A o C." << endl; // este mensaje.
  49. }
  50. }
  51. return EXIT_SUCCESS;
  52. }

Algo se nos escapa.

Saludos.
470  Programación / Programación C/C++ / [SOLUCIONADO] Solucionando errores Menú abrir y cerrar unidad CD-ROM en: 18 Noviembre 2017, 21:06 pm
Hola:

He hecho este programa para poder abrir y cerrar la bandeja con C++ Win32. Lo que tiene que hacer es si pulsa la tecla A, se abre el lector, si pulsas C, cierra la bandeja del lector de discos.

Código
  1. #include "stdafx.h"
  2. #include "stdio.h"
  3. #include "Windows.h"
  4. #include "iostream"
  5. #include "string"
  6. #include "conio.h"
  7.  
  8. using namespace std;
  9.  
  10.  
  11. int main()
  12. {
  13. // Título de la ventana.
  14. SetConsoleTitle(L"Abrir y cerrar bandeja del disco C++ Win32");
  15.  
  16. // Variable
  17. char entrada[] = "\0"; // Guarda A, a, C, y c tipo string que introduces desde la consola.
  18.  
  19. while (true)
  20. {
  21. printf("Control bandeja del lector : \n\n");
  22. printf("A - Abrir bandeja. \n");
  23. printf("C - Cerrar bandeja. \n");
  24. printf("========================== \n\n");
  25.  
  26. cin >> entrada; // Aquí introduces letras A, a, C, y c.
  27.  
  28. switch (srt.tolower(entrada)) // Espera recibir A, a, C, y c. Transforma en minúscula.
  29. {
  30. // Abrir bandeja.
  31. case 'a':
  32. cout << "Abriendo..." << endl; // Muestra en pantalla textos.
  33. //printf("Abriendo...");
  34. // Aquí va un evento para que aparezca la palabra Abirendo... mientra se está abriendo el lector.
  35. mciSendString(L"set cdaudio door open", nullptr, 0, nullptr);
  36. cout << "Abierto." << endl; // Muestra en pantalla textos.
  37. break;
  38.  
  39. // Cerrar bandeja.
  40. case 'b':
  41. cout << "Cerrando..." << endl; // Muestra en pantalla textos.
  42. // Aquí va un evento.
  43. mciSendString(L"set cdaudio door closed", nullptr, 0, nullptr);
  44. cout << "Cerrado." << endl; // Muestra en pantalla textos.
  45. break;
  46.  
  47. default: // Si haz pulsado otro caracter distinto de A, C, a, y c aparece
  48. cout << "Solo pulsar A o C." << endl; // este mensaje.
  49. }
  50. }
  51. return EXIT_SUCCESS;
  52. }
  53.  



¿Qué tengo mal?

Saludos.
Páginas: 1 ... 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 [47] 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 ... 255
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines