staryprogramista Temat założony przez niniejszego użytkownika |
Program operujący plikiem *exe » 2015-04-06 12:43:27 Witam,
wymyśliłem sobie pewne makro, które coś tam wykonuje (program zaliczeniowy). Do tego chciałbym utworzyć mały interfejs. Po przemyśleniach stwierdziłem, że ten program nazwijmy go "interfejs", mógłby operować na już skompilowanym *exe "makra". Zadanie interfejsu: 1. Interfejs umieszczałby makro w katalogu c:\ 2. Sytuacja odwrotna. Usunięcie tego pliku z dysku.
Nie wiem czy da radę coś takiego wykonać. Znalazłem coś takiego jak #import, który niby obsługuje *exe, ale nie wiem czy coś takiego byłoby możliwe jak sobie wymyśliłem.
https://msdn.microsoft.com/pl-pl/library/8etzzkb6.aspx
Najlepiej, gdyby było coś w stylu funkcji "LoadImage" :D
Jak to zrobić? Czy może jest lepszy sposób?
Jest to projekt zaliczeniowy przedmiotu, chce go zakończyć na długo przed sesją, nie mam niecnych zamiarów :) Nie oczekuje, że mi ktoś go napiszę, proszę o zarzucenie konkretnymi zagadnieniami, w które sam się zagłębie.
Pozdrawiam |
|
Fireho |
» 2015-04-06 12:59:45 Po co tak rozdzielać? Ale jak bardzo chcesz, to lepszym rozwiązaniem może być stworzenie DLLki z odpowiednimi funkcjami. Co do wrzucania/usuwania to pierwsze jest zależne od tego skąd interfejs brałby tą DLLkę, a co do drugiego to istnieje funkcja std::remove z nagłówka cstdio . |
|
staryprogramista Temat założony przez niniejszego użytkownika |
» 2015-04-06 13:18:19 Korzystałem już z dll, ale właśnie w sposób opisany w tutorialu, pakując w nie swoje funkcje. Niezbyt widzę w tym rozwiązania mojego problemu. Myślałem nad czymś takim: robię dwa projekty "główny" i "interfejs". Interfejs nie interesuje co jest w głównym programie, tylko jak już wspomniałem, ma mieć funkcję zarządzania plikiem *exe tego głównego programu, a dokładniej jego utworzenia w katalogu i usunięcie. |
|
Fireho |
» 2015-04-06 13:25:57 To w czym problem? To makro-DLL będzie miało kilka wyeksportowanych funkcji typu jakieś init , run czy cleanup , a interfejs nie będzie się przejmował co one dokładnie robią, tylko dynamicznie wczytywał określoną bibliotekę i wywoływał jakieś funkcje o określonej nazwie. |
|
staryprogramista Temat założony przez niniejszego użytkownika |
» 2015-04-06 13:35:19 Program główny ma być po utworzeniu przez interfejs samodzielnym programem, nawet po zamknięciu interfejsu. Interfejs nie działa cały czas. |
|
Fireho |
» 2015-04-06 15:03:09 Skoro tak, to exeka możesz uruchomić za pomocą system , ShellExecute lub CreateProcess . |
|
staryprogramista Temat założony przez niniejszego użytkownika |
» 2015-04-06 17:26:54 O dzięki :) już prawie jestem w domu. Skorzystałem z CreateProcess i działa ok.
Ale pytanko czy jest jakaś funkcja, która mi kopie tego exe gdzieś zapisze na dysku? Googluje, ale ciężko się przebić przez tematy typu "save cpp to exe". |
|
Fireho |
» 2015-04-06 19:52:54 A skąd ty chcesz wziąć to .exe z makrem? Z Internetu, ten interfejs ma w sobie zawierać ukrytego exeka czy jak? |
|
« 1 » 2 |