Jaki jest właściwy sposób użycia ShellExecute () w C, aby otworzyć plik .txt
W porządku, więc muszę otworzyć plik .txt, który zostanie utworzony w tym samym pliku, co program.
Chciałbym użyć ShellExecute (); aby to zrobić i wykonałem wiele badań na ten temat i po prostu nie wydaje mi się, aby poprawna składnia była poprawna głównie dlatego, że nie wiem, co zrobić z parametrem „HWND”
Spojrzałemtutaj aby uzyskać odpowiedzi i uzyskać wszystkie informacje oprócz tego, co umieścić w HWND
Oto, jak potrzebuję użyty kod:
ShellExecute(0,"open","c:\\debug.txt",NULL,NULL,1);
Z góry dziękuję za pomoc, jeśli nie jesteś pewien, o czym mówię! :)
Jest to program, którego używam do testowania funkcji:
#include "DAL.h"
//DAL.h added to Testing file to make compiling easier
//Created to test show_debug()
int main(void)
{
int test1,test2,final;
puts("Enter 2 numbers to add (2,2)");
scanf("%d,%d",&test1,&test2);
log_debug(test1);
log_debug(test2);
view_debug();
final= test1+test2;
printf("%d\n",final);
log_debug(final);
return(0);
}
view_debug (); to funkcja, która obejmuje ShellExecute
void view_debug(void)//WIP
//Opens the debug.txt in notepad
{
LoadLibrary( "shell32.dll" );
ShellExecute(0,"open","c:\\debug.txt",NULL,NULL,1);
}
To jest log_debug ();
int log_debug(int test_variable)
//This function simply tests the programmers desired veriable & displays it for help in keeping track of a veriables value(integer).
//The function has support for upto 1 variable for testing
{
time_t now;
time(&now);
FILE *debug; //Creates file to write debug info
debug=fopen("debug.txt", "a+");
fprintf(debug,"DEBUG %.24s: <%d>\n", ctime(&now),test_variable);
//TODO: Allow more than one variable
fclose(debug);
return(0);
}
Plik jest tworzony przez funkcję log_debug (); i działa, ale musi zostać otwarty ręcznie, ponieważ ShellExecute nie działa.
Pełne źródłoTutaj.