
03.08.2008, 04:04
|
|
Постоянный
Регистрация: 31.01.2008
Сообщений: 643
С нами:
9619229
Репутация:
445
|
|
Народ а как проверить что сдром закрыт (командой конечно)???
То есть к примеру если сдром закрыт то выполняем то .......
И еще как сделать так чтобы при нажатии кнопки опеределеный файл запускался??? Путь до файла не известен
Последний раз редактировалось diznt; 03.08.2008 в 04:15..
|
|
|

04.08.2008, 17:08
|
|
Новичок
Регистрация: 26.06.2008
Сообщений: 15
С нами:
9407911
Репутация:
13
|
|
Сообщение от diznt
Народ а как проверить что сдром закрыт (командой конечно)???
То есть к примеру если сдром закрыт то выполняем то .......
По-моему, никак (если кто знает как-поправьте). Но можно узнать есть ли в нем диск, в простейшем случае так:
Код:
function CheckCD(vol: string):boolean;
begin
Result:=false;
try
ChDir(vol);
Result:=true;
except
end;
end;
И еще можно закрыть или открыть лоток:
Код:
uses mmsystem;
...
mciSendString('Set cdaudio door open wait', nil, 0, handle); // открыть
mciSendString('Set cdaudio door closed wait', nil, 0, handle); //закрыть
Сообщение от diznt
И еще как сделать так чтобы при нажатии кнопки опеределеный файл запускался??? Путь до файла не известен
Если файл в текущем или общедоступном каталоге, то просто выполнить через WinExec, CreateProcess или ShellExecute. Если нет, то сначала его придется найти.
|
|
|

03.08.2008, 11:03
|
|
Познающий
Регистрация: 24.07.2008
Сообщений: 47
С нами:
9367314
Репутация:
31
|
|
Почему не работает:
if form1.btnInstall.Visible:= True
then
paWelcome.Parent := paMain;
end;
Выдает ошибку [Error] fSetup.pas(255): Type of expression must be BOOLEAN. Заранее спасибо
|
|
|

03.08.2008, 11:19
|
|
Познающий
Регистрация: 30.04.2007
Сообщений: 77
С нами:
10016487
Репутация:
50
|
|
2 _GlaD1aT(OR)_
if form1.btnInstall.Visible:= True
меняем на
if (form1.btnInstall.Visible==True)
|
|
|

03.08.2008, 11:27
|
|
Новичок
Регистрация: 28.07.2008
Сообщений: 9
С нами:
9361461
Репутация:
23
|
|
Сообщение от FIND_ERROR
2 _GlaD1aT(OR)_
if form1.btnInstall.Visible:= True
меняем на
if (form1.btnInstall.Visible==True)
Этож делфи..
во: if form1.btnInstall.Visible=True then
|
|
|

03.08.2008, 11:41
|
|
Познающий
Регистрация: 09.04.2008
Сообщений: 51
С нами:
9520030
Репутация:
74
|
|
и даже просто
if form1.btnInstall.Visible then... 
а если это в модуле form1, то и без form1.
if btnInstall.Visible then...
|
|
|

03.08.2008, 13:40
|
|
Познающий
Регистрация: 24.07.2008
Сообщений: 47
С нами:
9367314
Репутация:
31
|
|
Всем спасибо
|
|
|

03.08.2008, 16:09
|
|
Members of Antichat - Level 5
Регистрация: 04.09.2005
Сообщений: 528
С нами:
10885346
Репутация:
2947
|
|
Как выполнить ShellCode в дельфях?!
в C+ это выглядело примерно так :
int main()
{
((void (__stdcall *)())&scode[0])(); // вызов шеллкода
return 0;
}
|
|
|

04.08.2008, 08:54
|
|
Members of Antichat - Level 5
Регистрация: 04.09.2005
Сообщений: 528
С нами:
10885346
Репутация:
2947
|
|
Сообщение от slider
Как выполнить ShellCode в дельфях?!
в C+ это выглядело примерно так :
Код:
int main()
{
((void (__stdcall *)())&scode[0])();
return 0;
}
UP!
|
|
|

20.09.2008, 17:20
|
|
Постоянный
Регистрация: 05.01.2007
Сообщений: 508
С нами:
10182506
Репутация:
1393
|
|
Сообщение от slider
Как выполнить ShellCode в дельфях?!
в C+ это выглядело примерно так :
а в делфи вроде так =)
Код:
Турбо Паскаль позволяет вам вставить команды на языке ас-
семблера непосредственно в ваш исходный код на Паскале. Это может
оказаться очень полезным как для взаимодействия со специальными
устройствами, так и для написания очень быстрых процедур, которые
используют средства поддержки Турбо Паскаля.
Машинный код, который вы хотите вставить в вашу программу,
должен идти после ключевого слова inline и быть заключен в круг-
лые скобки. Каждый байт или слово отделяются обратным слешем.
Простая арифметика может быть реализована с помощью знаков плюс и
минус. Символ "*" определяет ячейку, на которую указывает счетчик
адреса. Весь код вводится в виде чисел, то есть вы не можете ис-
пользовать мнемоник как в ассемблере. Так как inline - это пред-
ложение, оно оканчивается точкой с запятой.
Например,
inline ($C9/$E900);
будет вводить три байта в вашу программу: $C9, $E9 и 0.
|
|
|
|
 |
|
Предыдущая тема
Следующая тема
|
Здесь присутствуют: 4 (пользователей: 0 , гостей: 4)
|
|
|
|