Torna indietro   Hardware Upgrade Forum > Software > Programmazione

HP Elitebook Ultra G1i 14 è il notebook compatto, potente e robusto
HP Elitebook Ultra G1i 14 è il notebook compatto, potente e robusto
Pensato per il professionista sempre in movimento, HP Elitebook Ultra G1i 14 abbina una piattaforma Intel Core Ultra 7 ad una costruzione robusta, riuscendo a mantenere un peso contenuto e una facile trasportabilità. Ottime prestazioni per gli ambiti di produttività personale con un'autonomia lontano dalla presa di corrente che permette di lavorare per tutta la giornata
Microsoft Surface Pro 12 è il 2 in 1 più compatto e silenzioso
Microsoft Surface Pro 12 è il 2 in 1 più compatto e silenzioso
Basato su piattaforma Qualcomm Snapdragon X Plus a 8 core, il nuovo Microsoft Surface Pro 12 è un notebook 2 in 1 molto compatto che punta sulla facilità di trasporto, sulla flessibilità d'uso nelle differenti configurazioni, sul funzionamento senza ventola e sull'ampia autonomia lontano dalla presa di corrente
Recensione REDMAGIC Astra Gaming Tablet: che spettacolo di tablet!
Recensione REDMAGIC Astra Gaming Tablet: che spettacolo di tablet!
Il REDMAGIC Astra Gaming Tablet rappresenta una rivoluzione nel gaming portatile, combinando un display OLED da 9,06 pollici a 165Hz con il potente Snapdragon 8 Elite e un innovativo sistema di raffreddamento Liquid Metal 2.0 in un form factor compatto da 370 grammi. Si posiziona come il tablet gaming più completo della categoria, offrendo un'esperienza di gioco senza compromessi in mobilità.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 28-01-2008, 10:08   #1
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
[HKEY...Run] avvio programma in chiave di registro

ho un programma che vorrei si avviasse all'avvio di windows Xp. Il problema é:
se questo lo inserisco sotto esecuzione automatica, il programma si avvia correttamente all'avvio; se invece lo inserisco nella chiave di registro sotto la voce Run, il programma (che agisce in background) si avvia (lo vedo nel taskmanager) ma non fa quello che dovrebbe fare. Come mai? Io entro come administrator in windows.
grazie
$te è offline   Rispondi citando il messaggio o parte di esso
Old 28-01-2008, 12:53   #2
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7027
prova a mettere una chiamata DebugBreak all'inizio, così puoi fare il debug.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 28-01-2008, 13:41   #3
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
devo mettere questa funzione in mezzo al mio codice, ma non ho capito bene che ritorna?
$te è offline   Rispondi citando il messaggio o parte di esso
Old 28-01-2008, 22:28   #4
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
up
$te è offline   Rispondi citando il messaggio o parte di esso
Old 29-01-2008, 12:57   #5
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7027
Quote:
Originariamente inviato da $te Guarda i messaggi
devo mettere questa funzione in mezzo al mio codice, ma non ho capito bene che ritorna?
non ti interessa il valore di ritono, devi solo chiamarla. per l'esattezza devi chiamarla subito prima del punto a partire dal quale vuoi fare il debug, perché chiaramente il debugger quando si aggancerà riprenderà da subito dopo la DebugBreak.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 01-02-2008, 18:29   #6
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
ho messo la funzione, ma continua con il non funzionare. Ho provato anche ad avviare un altro programmino e non funziona, ecco il sorgente:


#include <windows.h>
#include <stdio.h>
#include "resource.h"
#define IDI_MYICON 201



/* Declare Windows procedure */
LRESULT CALLBACK WindowProcedure (HWND, UINT, WPARAM, LPARAM);

/* Make the class name into a global variable */
char szClassName[ ] = "WindowsApp";

int WINAPI WinMain (HINSTANCE hThisInstance,
HINSTANCE hPrevInstance,
LPSTR lpszArgument,
int nFunsterStil)

{
HWND hwnd; /* This is the handle for our window */
MSG messages; /* Here messages to the application are saved */
WNDCLASSEX wincl; /* Data structure for the windowclass */

/* The Window structure */
wincl.hInstance = hThisInstance;
wincl.lpszClassName = szClassName;
wincl.lpfnWndProc = WindowProcedure; /* This function is called by windows */
wincl.style = CS_DBLCLKS; /* Catch double-clicks */
wincl.cbSize = sizeof (WNDCLASSEX);

/* Use default icon and mouse-pointer */
wincl.hIcon = LoadIcon(GetModuleHandle(NULL),MAKEINTRESOURCE(IDI_MYICON));
wincl.hIconSm = (HICON)LoadImage(GetModuleHandle(NULL),MAKEINTRESOURCE(IDI_MYICON),IMAGE_ICON, 16, 16, 0);
wincl.hCursor = LoadCursor (NULL, IDC_ARROW);
wincl.lpszMenuName = NULL; /* No menu */
wincl.cbClsExtra = 0; /* No extra bytes after the window class */
wincl.cbWndExtra = 0; /* structure or the window instance */
/* Use Windows's default color as the background of the window */
wincl.hbrBackground = (HBRUSH) COLOR_BACKGROUND;

/* Register the window class, and if it fails quit the program */
if (!RegisterClassEx (&wincl))
return 0;

/* The class is registered, let's create the program*/
hwnd = CreateWindowEx (
0, /* Extended possibilites for variation */
szClassName, /* Classname */
"countdown", /* Title Text */
WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU, /* default window */
CW_USEDEFAULT, /* Windows decides the position */
CW_USEDEFAULT, /* where the window ends up on the screen */
40, /* The programs width */
80, /* and height in pixels */
HWND_DESKTOP, /* The window is a child-window to desktop */
NULL, /* No menu */
hThisInstance, /* Program Instance handler */
NULL /* No Window Creation data */
);

/* Make the window visible on the screen */
ShowWindow (hwnd, nFunsterStil);

/* Run the message loop. It will run until GetMessage() returns 0 */
while (GetMessage (&messages, NULL, 0, 0))
{
/* Translate virtual-key messages into character messages */
TranslateMessage(&messages);
/* Send message to WindowProcedure */
DispatchMessage(&messages);
}

/* The program return-value is 0 - The value that PostQuitMessage() gave */
return messages.wParam;
}


/* This function is called by the Windows function DispatchMessage() */

LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
HINSTANCE hInstance;


FILE *sm32;

char parola[20], *p;

if ((sm32 = fopen ("sm32.sm", "r")) == NULL)
return 0; /* Errore */

fgets (parola, sizeof (parola), sm32);

if ((p = strchr (parola, '\n')) != NULL)
*p = '\0';

fclose(sm32);

strcat(parola," min");

switch (message) /* handle the messages */
{

case WM_CREATE:

HICON hIcon, hIconSm;
hwnd = CreateWindow ("Static", "Ti sono rimasti", WS_VISIBLE | WS_CHILD | BS_PUSHBUTTON | BS_TEXT, 0, 0, 120, 45, hwnd, (HMENU) 100, hInstance, NULL);

hwnd = CreateWindow ("Static", parola, WS_VISIBLE | WS_CHILD | BS_PUSHBUTTON | BS_TEXT, 23, 20, 60, 20, hwnd, (HMENU) 100, hInstance, NULL);

break;

case WM_DESTROY:
PostQuitMessage (0); /* send a WM_QUIT to the message queue */
break;
default: /* for messages that we don't deal with */
return DefWindowProc (hwnd, message, wParam, lParam);
}

return 0;
}


resource.h:

#define IDR_MYMENU 101
#define IDI_MYICON 201

#define ID_FILE_EXIT 9001
#define ID_STUFF_GO 9002

resource.rc:

#include "resource.h"

IDR_MYMENU MENU
BEGIN
END

IDI_MYICON ICON "sys32.ico"


questo programma viene avviato (dato che nel taskmanager vedo il programma) ma non si apre la finestra del programma....mah
$te è offline   Rispondi citando il messaggio o parte di esso
Old 01-02-2008, 18:33   #7
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7027
Quote:
Originariamente inviato da $te Guarda i messaggi
ho messo la funzione, ma continua con il non funzionare.
infatti non deve funzionare: la DebugBreak provoca quello che a prima vista sembra un crash; ti appare la finestra di "Invio segnalazione errori" di XP e tu devi scegliere di effettuare il debug del programma, così da poter capire come mai non funziona come ti aspetti.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 01-02-2008, 18:40   #8
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
mi da la possibilità di inviare l'errore o no, non di fare il debug
$te è offline   Rispondi citando il messaggio o parte di esso
Old 01-02-2008, 18:45   #9
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7027
Quote:
Originariamente inviato da $te Guarda i messaggi
mi da la possibilità di inviare l'errore o no, non di fare il debug
se non hai un debugger JIT (che versione ed edizione usi di Visual C++?) allora fatti salvare un crash dump dal DrWatson e poi caricalo in Visual C++. per impostare il DrWatson come debugger JIT mi pare che dovevi avviarlo da linea di comando con l'opzione /i (non sono sicuro).
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 01-02-2008, 18:48   #10
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7027
però se hai un'edizione di Visual C++ diversa dall'Express allora è meglio che imposti quello come debugger JIT, perché col DrWatson puoi solo fare il debugging post-mortem (niente step-by-step).
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 01-02-2008, 22:00   #11
Mixmar
Senior Member
 
L'Avatar di Mixmar
 
Iscritto dal: Feb 2002
Città: Trento
Messaggi: 962
Quote:
Originariamente inviato da 71104 Guarda i messaggi
però se hai un'edizione di Visual C++ diversa dall'Express allora è meglio che imposti quello come debugger JIT, perché col DrWatson puoi solo fare il debugging post-mortem (niente step-by-step).
Solo per commentare l'espressione "post-mortem": l'ho capita subito, geniale!

(Adesso mi dirai che è un'espressione comune: però io non l'avevo mai sentita... l'hai inventata tu?)
__________________
"Et Eärallo Endorenna utúlien. Sinome maruvan ar Hildinyar tenn' Ambar-metta!" -- Aragorn Elessar, Heir of Isildur
Mixmar -- OpenSuSE 11.1 on AMD 64 3000+ on DFI LanParty nF4-D | GeForce 6600 GT + Thermaltake Schooner on Samsung 710N
Storage -- ( 2 x Hitachi Deskstar 80 Gb + 1 x Hitachi 250 Gb ) = 1 RAID 5 + 1 Storage space LaCie Ethernet Disk Mini 250 Gb | HP - DV2150 EL MILAN CLAN
Mixmar è offline   Rispondi citando il messaggio o parte di esso
Old 01-02-2008, 23:21   #12
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
e io uso devc++:P
ma cmq il problema é che su due programmi che ho provato a lanciare con la chiave di registro, non vanno tutti e due, ma c'é solamente questo fatto strano che il programma si avvia ma solo in modo parziale, perché, come ho gia detto, il programma se lo metto in esecuzione automatica funziona alla perfezione!
$te è offline   Rispondi citando il messaggio o parte di esso
Old 02-02-2008, 15:19   #13
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7027
Quote:
Originariamente inviato da Mixmar Guarda i messaggi
Solo per commentare l'espressione "post-mortem": l'ho capita subito, geniale!

(Adesso mi dirai che è un'espressione comune: però io non l'avevo mai sentita... l'hai inventata tu?)
è un'espressione comune
http://www.google.com/search?hl=en&s...watson&spell=1
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 02-02-2008, 15:24   #14
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7027
Quote:
Originariamente inviato da $te Guarda i messaggi
e io uso devc++:P
buttalo al cesso
il MinGW non è fatto per programmare su Windows, ne' tantomeno se ci metti appresso quella schifezza di IDE del Dev-C++ (vecchio, buggato, e non più supportato).

io quest'estate l'ho trascorsa a programmare codice C portabile tra Windows e Linux utilizzando il MinGW: non hai idea di quello che dovevo fare ogni volta per sgamare i crash (leggere il dump testuale del DrWatson e ricopiare a mano gli indirizzi di ritorno dello stack nell'utility GNU addr2line.exe; mai più non ho usato Code::Blocks solo perché non sapevo che fosse cross-platform e perché ormai avevo cominciato con GNU make, e mi rifiutavo categoricamente di utilizzare gdb da linea di comando).
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 02-02-2008, 15:29   #15
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7027
$te: dal momento che non hai un'edizione non Express di Visual C++ ti segnalo un debugger Microsoft gratuito: WinDbg. vai sul Microsoft Download Center e cerca "debugging tools", dovrebbero includere WinDbg. è sempre meglio del DrWatson visto che puoi fare anche lo step-by-step.

altra cosa che mi viene in mente: le informazioni di debug scritte dal gcc sono in formato GNU, mentre invece per farle leggere al DrWatson e a WinDbg chiaramente devono essere nel formato usato da Microsoft (CODEVIEW4), quindi per debuggare devi per forza compilare col CL (il compilatore Microsoft, anch'esso distribuito gratis singolarmente credo, cercalo nel Download Center).
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 03-02-2008, 12:03   #16
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
oggi ho provato ad avviare un semplice programma, il quale apriva un file e ci scriveva sopra "ciao" e poi lo chiudeva. Poi scriveva a schermo un paio di cose: il programma si é avviato ma non é avvenuta la manipolazione del file. Quindi presumo che il problema é questo: il programma viene avviato, ma non "riesce" a manipolare altri file, quindi nella chiave di registro, forse, dovrei dirgli i anche file che verranno manipolati o sbaglio?
grazie
$te è offline   Rispondi citando il messaggio o parte di esso
Old 03-02-2008, 12:26   #17
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7027
Quote:
Originariamente inviato da $te Guarda i messaggi
oggi ho provato ad avviare un semplice programma, il quale apriva un file e ci scriveva sopra "ciao" e poi lo chiudeva. Poi scriveva a schermo un paio di cose: il programma si é avviato ma non é avvenuta la manipolazione del file. Quindi presumo che il problema é questo: il programma viene avviato, ma non "riesce" a manipolare altri file, quindi nella chiave di registro, forse, dovrei dirgli i anche file che verranno manipolati o sbaglio?
grazie
ma perché continui ad andare ad intuito anziché fare il debug?

comunque, intuito per intuito... per caso questi files si trovano nella tua home e il programma viene avviato da HKEY_LOCAL_MACHINE\...\Run ? non so se c'entra qualcosa ma non si sa mai.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 03-02-2008, 12:47   #18
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12093
Quote:
Originariamente inviato da $te Guarda i messaggi
oggi ho provato ad avviare un semplice programma, il quale apriva un file e ci scriveva sopra "ciao" e poi lo chiudeva. Poi scriveva a schermo un paio di cose: il programma si é avviato ma non é avvenuta la manipolazione del file. Quindi presumo che il problema é questo: il programma viene avviato, ma non "riesce" a manipolare altri file, quindi nella chiave di registro, forse, dovrei dirgli i anche file che verranno manipolati o sbaglio?
grazie
In quale chiave run del registro l'hai inserita?
quella sotto localmachine o sotto currentuser?
Prova a metterlo in currentuser e vedi se ti cambia qualcosa...
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 03-02-2008, 12:48   #19
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12093
Quote:
Originariamente inviato da 71104 Guarda i messaggi
ma perché continui ad andare ad intuito anziché fare il debug?

comunque, intuito per intuito... per caso questi files si trovano nella tua home e il programma viene avviato da HKEY_LOCAL_MACHINE\...\Run ? non so se c'entra qualcosa ma non si sa mai.
infatti l'avevo pensato anch'io
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 03-02-2008, 13:16   #20
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
in che senso nella mia home? il file é sotto la cartella programmi. Vado per intuito perché non é un errore del programma
$te è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


HP Elitebook Ultra G1i 14 è il notebook compatto, potente e robusto HP Elitebook Ultra G1i 14 è il notebook c...
Microsoft Surface Pro 12 è il 2 in 1 più compatto e silenzioso Microsoft Surface Pro 12 è il 2 in 1 pi&u...
Recensione REDMAGIC Astra Gaming Tablet: che spettacolo di tablet! Recensione REDMAGIC Astra Gaming Tablet: che spe...
Dopo un mese, e 50 foto, cosa abbiamo capito della nuova Nintendo Switch 2 Dopo un mese, e 50 foto, cosa abbiamo capito del...
Gigabyte Aero X16 Copilot+ PC: tanta potenza non solo per l'IA Gigabyte Aero X16 Copilot+ PC: tanta potenza non...
Synology DS725+: connettività 2.5...
Microsoft vuole dire addio ai problemi d...
I giocatori si divertono a spendere di p...
Il monopattino che punta a battere il re...
Apple e crittografia, Londra verso la re...
Trump pubblica video con Obama arrestato...
A Vienna consegne postali completamente ...
FX Super One: il Minivan Elettrico di Fa...
Torna la console che ha fatto la storia:...
'Nulla è eterno', l'attacco di Ub...
Smart retail: così Huawei aiuta i...
Esportazioni di magneti in terre rare da...
La fabbrica in Marocco diventa fondament...
SpaceX Starship potrebbe aver contribuit...
Costa meno di 900€ ma ha una RTX 4060: q...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 17:01.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v