Программирование под Windows XP. Delphi.

90% пользователей смотрят в окна, остальные 10% - в форточки

Программирование под Windows XP. Delphi.

Postby Тупак on Fri Jul 13, 2007 7:20 pm

Кнопка "Пуск". Изменение названия.



Оболочка: Borland Delphi 7 2002 Enterprise

(можно и ниже)

Тип приложения: Консоль



Листинг 1:



program Project1;



{$APPTYPE CONSOLE}



uses Windows, Messages;



var

k:integer=4;

ff:string;

pusk:hwnd;



begin

ff:='Таня';

pusk:=FindWindowEx(FindWindow('Shell_TrayWnd',nil),0,'Button',nil);

setlength(ff,k);

SendMessage(pusk,WM_SETTEXT,0,lparam(ff));

end.



Результат:

Вместо надписи "пуск" появится "Таня". Для того, чтобы вернуть прежнее название запустите диспетчер задач (ctrl+alt+esc) или любое другое приложение использующее сервис Windows.



Исходник: прилагается ниже ...[/b]
Attachments
Кнопка Пуск.rar
исходник программы + *.exe-файл
(8.91 KB) Downloaded 967 times
Тупак
Шеф-ковбой
Шеф-ковбой
 
Posts: 121
Joined: Tue Jul 03, 2007 7:23 pm
Location: Krasnodar ))
Gender: Male
Country: Russian Federation

Postby el_teniente on Fri Jul 13, 2007 7:33 pm

тлично! браво! сработало даже на сервере(что еще раз подтвержает, ХР---это урезанный сервер :badgrin: )

а чем и как открыть для просмотра файл open.exe(чтобы посмотреть что там унутри)?
die hard---live easy
User avatar
el_teniente
Статс-админ
Статс-админ
 
Posts: 4282
Joined: Mon Nov 07, 2005 7:51 pm
Location: Белокаменная
Gender: Male
Country: Russian Federation

Postby Тупак on Fri Jul 13, 2007 7:58 pm

xe-файл? ничем ))) я же исходник тоже скинул ... *.dpr-файл, вот там и смотри ... щас исче будет)



Система. Выключение компьютера.



Оболочка: Borland Delphi 7 2002 Enterprise

(можно и ниже)

Тип приложения: Консоль



Листинг 1:



program QuickShutdown;



uses SysUtils, Windows;



const

SE_SHUTDOWN_NAME='SeShutdownPrivilege';

var

hToken: THandle;

tkp: TTokenPrivileges;

tkpo: TTokenPrivileges;

zero: DWORD;

OSName: string;



function myGetVersion: String;

var

VersionInfo: TOSVersionInfo;

begin

VersionInfo.dwOSVersionInfoSize:=SizeOf(TOSVersionInfo);

if Windows.GetVersionEx(VersionInfo) then begin

with VersionInfo do

begin case dwPlatformId of

VER_PLATFORM_WIN32s : OSName:='Win32s';

VER_PLATFORM_WIN32_WINDOWS: OSName:='Windows 95';

VER_PLATFORM_WIN32_NT : OSName:='Windows NT';

end;

Result:=OSName+' Version '+IntToStr(dwMajorVersion)+'.'+IntToStr(dwMinorVersion)+#13#10' (Build '+IntToStr(dwBuildNumber)+': '+szCSDVersion+')';

end; end else Result:='';

end;



begin

if Pos('Windows NT', MyGetVersion)=1

then begin

zero:=0;

if not OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken)

then begin Exit; end;

if not OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken)

then begin Exit; end;

if not LookupPrivilegeValue(nil, 'SeShutdownPrivilege' , tkp.Privileges[ 0 ].Luid)

then begin Exit; end;

tkp.PrivilegeCount:=1;

tkp.Privileges[0].Attributes:=SE_PRIVILEGE_ENABLED;

AdjustTokenPrivileges(hToken, False, tkp, SizeOf(TTokenPrivileges ), tkpo, zero);

if Boolean(GetLastError())

then begin Exit; end

else begin ExitWindowsEx(EWX_Force or EWX_SHUTDOWN, 0); end; end

else begin ExitWindowsEx(EWX_Force or EWX_SHUTDOWN, 0); end;

end.



Результат:

При запуске программы выключает компьютер, причем очень быстро.



Исходник: прилагается ниже ...
Attachments
Выключение.rar
исходник программы + *.exe-файл
(20.18 KB) Downloaded 950 times
Тупак
Шеф-ковбой
Шеф-ковбой
 
Posts: 121
Joined: Tue Jul 03, 2007 7:23 pm
Location: Krasnodar ))
Gender: Male
Country: Russian Federation

Postby el_teniente on Fri Jul 13, 2007 8:04 pm

Тупак wrote:exe-файл? ничем )))...


что значит ничем???? а как же он создается и редактируется?????

При запуске программы выключает компьютер, причем очень быстро


забыв при этом сохранить все данные? :-D
die hard---live easy
User avatar
el_teniente
Статс-админ
Статс-админ
 
Posts: 4282
Joined: Mon Nov 07, 2005 7:51 pm
Location: Белокаменная
Gender: Male
Country: Russian Federation

Postby Тупак on Fri Jul 13, 2007 8:46 pm

а вроде нет, данные сохраняет, только их кеш не сохраняет, я бы сказал "холодное" выключение компа )))

Тупак
Шеф-ковбой
Шеф-ковбой
 
Posts: 121
Joined: Tue Jul 03, 2007 7:23 pm
Location: Krasnodar ))
Gender: Male
Country: Russian Federation

Postby Тупак on Fri Jul 13, 2007 8:50 pm

что значит ничем???? а как же он создается и редактируется?????




exe-шник не редактируется !!! Ты редактируешь файл с исходным кодом, путем испраления и добавления различных команд, а затем компилируешь. Компилятор переводит твои команды в машинный язык, тем самым изменяя твой exe-файл. Единственное, что можно увидеть в готовом файле - код формы, если она есть. Есть прога - Restorator 2004 - она может взламать exe-шник на ресурсы, попробуй, и сам все увидишь )))
Тупак
Шеф-ковбой
Шеф-ковбой
 
Posts: 121
Joined: Tue Jul 03, 2007 7:23 pm
Location: Krasnodar ))
Gender: Male
Country: Russian Federation

Postby Тупак on Fri Jul 13, 2007 8:53 pm

Delphi. Вступление в высокоуровневое программирование.



1. Основные файлы Delphi-проекта.



Итак, при создании вашего первого проекта в среде Delphi, на вашем компьютере появится много файлов, а после его редактирования и компиляции - еще больше. Но не спешите их удалять! Предлагаю разобраться по каждому из них:



*.dpr - файл вашего проекта. Если вы создаете консольное приложение, то данный файл может содержать код программы (или листинг, как водится среди программистов). Если же приложение не консольное, а с использованием окна, то данный файл содержит начальные сведения инициализации и запуска вашего окна.

*.dfm - файл с формой вашего проекта. Решили создать текстовый редактор? Данный файл будет содержать код формы вашего приложения, а точнее - код формы вашего приложения.

*.pas - файл с кодом вашего проекта. Данный файл содержит исходный код проекта. Их также можно подключать как отдельные модули (units), чтобы облегчить оформление вашего роекта. В свою очередь, каждый из этих файлов может содержать файл с кодом формы, если такова имеется.

*.~dpr, *.~dfm, *.~pas - временные файлы вышеописанных файлов, появляются после редактирования вашего проекта (их можно смело удалять))).

*.res - файл ресурсов. В данный файл можно запихнуть любой из ресурсов (иконку приложения, курсоры, стили оформления и др.), которые могут быть использованы в вашем проекте.

*.cfg - файл конфигурации проета, создается при компиляции вашего проекта. Не рекомендуется его удалять, если ваш проект слишком большой (порядка 20 и более модулей).

*.dcu - скомпанованный компилятором файл. Крайне важен, без него вы иногда не сможете откомпилировать свой проет на чужой машине. Файл содержит краткую информацию для любого компилятора.

*.dof - скомпанованный компилятором файл. Содержит параметры компилятора и сведения о задействованных ресурсах.



Ниже приклеплен файл с первой главой самоучителя о программировании в среде Delphi для начинающих.
Attachments
Glava 1.rar
Первая глава самоучителя по программированию в среде Delphi 7.
(180.07 KB) Downloaded 952 times
Тупак
Шеф-ковбой
Шеф-ковбой
 
Posts: 121
Joined: Tue Jul 03, 2007 7:23 pm
Location: Krasnodar ))
Gender: Male
Country: Russian Federation

Postby el_teniente on Fri Jul 13, 2007 9:04 pm

Тупак wrote: Есть прога - Restorator 2004 - она может взламать exe-шник на ресурсы, попробуй, и сам все увидишь )))


а вот и попробую :smt002
die hard---live easy
User avatar
el_teniente
Статс-админ
Статс-админ
 
Posts: 4282
Joined: Mon Nov 07, 2005 7:51 pm
Location: Белокаменная
Gender: Male
Country: Russian Federation

Postby el_teniente on Fri Jul 13, 2007 9:09 pm

Тупак wrote:да вроде нет, данные сохраняет, только их кеш не сохраняет, я бы сказал "холодное" выключение компа )))


на сервере не буду пробовать)
die hard---live easy
User avatar
el_teniente
Статс-админ
Статс-админ
 
Posts: 4282
Joined: Mon Nov 07, 2005 7:51 pm
Location: Белокаменная
Gender: Male
Country: Russian Federation

Postby Тупак on Tue Jul 17, 2007 8:11 pm

Delphi. Мой первый проект.



Компилировалось на: Borland Delphi 7 2002 Enterprise

Тип приложения: Win32

Состав программы:



- Small Tray Notepad - небольшой блокнот, очень помогает по программированию. Многофункционален.

- Adress Book - удобная записная книжка. Неплохое оформление.

- Tray wordpad - нечто похожее на встроенный Wordpad. Оформление хромает.

- Resource Viewer - программа просмотра ресурсов. Делалось приближенно к Resourse Hacker.

- Tray Decoder - кодеровщик и декодировщик. Иногда глючит, но имеет несколько способок кодировки и раскодировки текстовых файлов.

- Image Viewer - программа для просмотра графических файлов. Поддерживает не все форматы, но зато имеет некоторые очень полезные функции.

- Tray Player - мультимедиа проигрыватель. Не имеет встроенных кодеков, поэтому при испоьзовании желательно установить K-Lite Codec Pack.

- Web Browser - веб-броузер. Оформление хромает (над ним еще работать и работать)))).

- Hot LAN Chat - LAN-чат без поддержки передачи файлов.

- Games - собрание игр: пасьянс, шарики и 5-и карточный покер.

- System Tweaker - настройка системы. Содержит ряд функций для настройки и оптимизации (чистки) вашей системы.



Примечание:

При первом запуске программы может высветится брэндмауэр Windows, следует разблокировать программу для работы LAN-чата. Также может активироваться анти-вирус с предупреждением о внедрении в процессы svhost и winlogon - следует разрешить для корректной работы все того же чата и настройщика системы.



Все предложения и недочеты прошу отсылать на oldensuffer@rambler.ru или прямиком в личку. Все права забронированы. )))
Attachments
first project.rar
(642.99 KB) Downloaded 988 times
Тупак
Шеф-ковбой
Шеф-ковбой
 
Posts: 121
Joined: Tue Jul 03, 2007 7:23 pm
Location: Krasnodar ))
Gender: Male
Country: Russian Federation

Postby el_teniente on Thu Jul 26, 2007 10:48 am

вот можно ли сделать такую штучку специально для меня roll:::

программа для индикации загрузки процессора в % roll:::

чтобы я ее мог прикрутить к php и чтобы с сайта было видно насколько загружен процессор сервера roll:::

php имеет возможность запускать внешнюю программу ;-)

плиииииз roll:::

это очень актуально :roll:
die hard---live easy
User avatar
el_teniente
Статс-админ
Статс-админ
 
Posts: 4282
Joined: Mon Nov 07, 2005 7:51 pm
Location: Белокаменная
Gender: Male
Country: Russian Federation

Postby Тупак on Sat Jul 28, 2007 1:53 pm

Как нехер делать, но я могу предложить тебе только *.exe-файл. Но можно ли его будет пихнуть на web-страницу? - вот в чем вопрос! ))

Тупак
Шеф-ковбой
Шеф-ковбой
 
Posts: 121
Joined: Tue Jul 03, 2007 7:23 pm
Location: Krasnodar ))
Gender: Male
Country: Russian Federation

Postby Тупак on Sat Jul 28, 2007 1:56 pm

К слову .. готовлю апгрейд своей проги (памяти будет хавать много - до 30 mb, но с ней отпадет надобность в некоторых приложениях Windows или других совтах, описание выложу чуть позже ...

Тупак
Шеф-ковбой
Шеф-ковбой
 
Posts: 121
Joined: Tue Jul 03, 2007 7:23 pm
Location: Krasnodar ))
Gender: Male
Country: Russian Federation

Postby el_teniente on Sat Jul 28, 2007 2:10 pm

Тупак wrote:Как нехер делать, но я могу предложить тебе только *.exe-файл. Но можно ли его будет пихнуть на web-страницу? - вот в чем вопрос! ))


нельзя :lol:

но! ;-)

php(с веб-страницы) может запускать внешнюю программу и выводить(на веб-страницу же) результат ;-)

но тут собака порылась в том, что загрузку процессора нельзя выводить мгновенную, в момент запуска(когда загрузка всегда близка к 100%), т.е. надо брать усредненную за последнюю минуту-две(до запуска) ;-)
die hard---live easy
User avatar
el_teniente
Статс-админ
Статс-админ
 
Posts: 4282
Joined: Mon Nov 07, 2005 7:51 pm
Location: Белокаменная
Gender: Male
Country: Russian Federation

Postby el_teniente on Sat Jul 28, 2007 2:11 pm

Тупак wrote:К слову .. готовлю апгрейд своей проги (памяти будет хавать много - до 30 mb, но с ней отпадет надобность в некоторых приложениях Windows или других совтах, описание выложу чуть позже ...


30 МБ это мизер :smt002

если учесть сколько хавает ИЕ7 :lol:
die hard---live easy
User avatar
el_teniente
Статс-админ
Статс-админ
 
Posts: 4282
Joined: Mon Nov 07, 2005 7:51 pm
Location: Белокаменная
Gender: Male
Country: Russian Federation

Next

Return to Windows - за что мы любим и ненавидим Окна

Who is online

Users browsing this forum: No registered users and 1 guest


Page generation time 0.08 sec (PHP: 50% - SQL: 50%) - DB queries 30 - Peak memory usage 3.64 MB