|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Запускается одна и та же программа с разными ключами |
|
C/C++ - Запускается одна и та же программа с разными ключами
|
Новый участник Сообщения: 3 |
Профиль | Отправить PM | Цитировать Запускается одна и та же программа во всех трех (с разными ключами),что не так сделано
Код: #include <vcl.h> #pragma hdrstop #include <Tlhelp32.h> #include "Unit1.h" #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; char* pName; AnsiString FullPath; int OE; String Capt; __fastcall TForm1::TForm1(TComponent* Owner) :TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::N1Click(TObject *Sender) { OE = ((TMenuItem *)Sender)->Tag; Capt = ((TMenuItem *)Sender)->Caption; BitBtn1->Enabled = true; switch(OE) { case 0 : FullPath = "revLoader.exe","-launch hl.exe -game cstrike -steam"; break; case 1 : FullPath = "revLoader.exe","-launch hl.exe -game czero -steam"; break; case 2 : FullPath = "revLoader.exe","-launch hl.exe -steam"; break; } Timer1->Enabled = true; } //--------------------------------------------------------------------------- void __fastcall TForm1::BitBtn1Click(TObject *Sender) { ShellExecute(NULL,"open",FullPath.c_str(),NULL,NULL,SW_SHOWNORMAL); } //--------------------------------------------------------------------------- bool IsProcessRun(char* pName) { HANDLE Hndl = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); if(Hndl == INVALID_HANDLE_VALUE) return false; PROCESSENTRY32 ProcessEntry; ProcessEntry.dwSize = sizeof(ProcessEntry); bool Loop = Process32First(Hndl, &ProcessEntry); while (Loop) { if (strcmp(ProcessEntry.szExeFile, pName) == 0) { CloseHandle(Hndl); return true; } Loop = Process32Next(Hndl, &ProcessEntry); } return false; } //--------------------------------------------------------------------------- void __fastcall TForm1::Timer1Timer(TObject *Sender) { pName = AnsiString(ExtractFileName(FullPath)).c_str(); if(! IsProcessRun(pName)) { BitBtn1->Caption = Capt + " [0]"; BitBtn1->Enabled = true; } else { BitBtn1->Caption = Capt + " [1]"; BitBtn1->Enabled = false; } Application->ProcessMessages(); } //--------------------------------------------------------------------------- P.S Исходный код для C++ Builder XE6 |
|
Отправлено: 18:39, 31-07-2014 |
Новый участник Сообщения: 3
|
Профиль | Отправить PM | Цитировать Теги проверял все правильно,и все равно не правильный запуск
|
Отправлено: 18:41, 31-07-2014 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 3
|
Профиль | Отправить PM | Цитировать И так тоже самое:
#include <vcl.h> #pragma hdrstop #include <Tlhelp32.h> #include "Unit1.h" #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; char* pName; AnsiString FullPath; AnsiString Keys; int OE; String Capt; __fastcall TForm1::TForm1(TComponent* Owner) :TForm(Owner) { } //--------------------------------------------------------------------------- bool IsProcessRun(char* pName) { HANDLE Hndl = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); if(Hndl == INVALID_HANDLE_VALUE) return false; PROCESSENTRY32 ProcessEntry; ProcessEntry.dwSize = sizeof(ProcessEntry); bool Loop = Process32First(Hndl, &ProcessEntry); while (Loop) { if (strcmp(ProcessEntry.szExeFile, pName) == 0) { CloseHandle(Hndl); return true; } Loop = Process32Next(Hndl, &ProcessEntry); } return false; } void __fastcall TForm1::BitBtn1Click(TObject *Sender) { ShellExecute(NULL,"open",FullPath.c_str(),Keys.c_str(),NULL,SW_SHOWNORMAL); } //--------------------------------------------------------------------------- void __fastcall TForm1::Timer1Timer(TObject *Sender) { pName = AnsiString(ExtractFileName(FullPath)).c_str(); if(! IsProcessRun(pName)) { BitBtn1->Caption = Capt + " [0]"; BitBtn1->Enabled = true; } else { BitBtn1->Caption = Capt + " [1]"; BitBtn1->Enabled = false; } Application->ProcessMessages(); } //--------------------------------------------------------------------------- void __fastcall TForm1::N1Click(TObject *Sender) { OE = ((TMenuItem *)Sender)->Tag; Capt = ((TMenuItem *)Sender)->Caption; BitBtn1->Enabled = true; switch(OE) { case 0 : FullPath = "revLoader.exe", Keys ="-launch hl.exe -game cstrike -steam"; break; case 1 : FullPath = "revLoader.exe", Keys ="-launch hl.exe -game czero -steam"; break; case 2 : FullPath = "revLoader.exe", Keys ="-launch hl.exe -steam"; break; } Timer1->Enabled = true; } //--------------------------------------------------------------------------- |
Отправлено: 20:40, 31-07-2014 | #3 |
Необычный Сообщения: 4463
|
Профиль | Сайт | Отправить PM | Цитировать Alattare, ага. А теперь пожалуйста подробней про цели запуска программы.
А так же где находится revLoader, запускается ли он из командной строки (если да, то как ? С полными путями), что указано в переменной среды PATH, каково относительное расположение (где они друг от друга) компилируемого приложения и revLoader? Что будет если открыть новую консоль и сразу выполнить " revLoader.exe -launch hl.exe -game cstrike -steam "? P.S. Будете оформлять код, воспользуйтесь соотв. тегом. Во-о-он та решетка сверху. |
------- Отправлено: 08:46, 01-08-2014 | #4 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Не запускается ни одна программа. | Fronter1 | Лечение систем от вредоносных программ | 16 | 28-01-2012 19:52 | |
Прочее - [решено] Одна и та же XP на одном железе видит интернет, на другом только локалку | nikvasko | Сетевое оборудование | 5 | 03-09-2011 00:47 | |
Не запускается ни одна программа | TverReus | Лечение систем от вредоносных программ | 23 | 28-11-2010 15:31 | |
Разное - [решено] Одна и та же формула считает по разному в Excel и PHP | Artem-Samsung | Программирование и базы данных | 1 | 21-10-2010 18:39 | |
Разное - Не запускается ни одна программа | Glebush | Microsoft Windows Vista | 5 | 05-03-2010 09:57 |
|