Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

СообЧА. Программирование на Delphi


Служба Рассылок Subscribe.Ru

Subscribe.Ru :СообЧа программирование на дельфи !
—Сообча : программирование на дельфи

Некому оформить сайт ?
Нужен красивый баннер ?
Нет времени на обновление сайта?

Качественное оформление, работа с самыми современными средствами, FLASH,CGI,JAVA
Тогда вам сюда !!!!
Менее чем за 50$ мы поможем


----- (перед просмотром рассылку лучше сохранить)

 

 В этом выпуске:


Оьратите внимание на почти полное отсутсвие баннеров, да ... теперь и бюджет поменьше будет.

Фонд поддержки наших проектов и рассылки:
Получатель: ИНН 7707083893 Новгородское ОСБ № 8629
Счет получателя: 47422810343029900030
Банк получателя
:Новгородское ОСБ № 8629 г.Великий Новгород 30101810100000000698 Бик 044959698

Храпунову Кириллу Алексеевичу

! желающим помочь рассылке


Рассылки Subscribe.Ru это стильно удобно, и информативно!
СообЧа (СООБщество ЧАйников). Обмен опытом, вопросы, ответы.


подпишись и подпиши друга!!!!

 Contact (Связь с Нами):

Pixel@novgorod.net + Subject: (см ниже)

 

Vcl Haunting

"Золотой Чайник"

Вопрос по дельфи N (N номер версии)

Help!

Реклама

Полезный линк

 

Наш сайт : pixelsoft.narod.ru

Новости СЕТИ

К заголовку

Небольшое лирическое отступление от темы рассылки: Две конкурирующие компании AMD и Intel преберегли для нас в рукаве пару козырей. Если посмотреть на историю развития разных моделей, такое уже случалось с Macintosh. Да, впервые в мир домашних ПК приходит RISC технология...(По планам обеих компаний выпуск тестовых образцов состоится в 2003 году.) . О том, как нас плавно будут готовить к приходу многозадачности с большой буквы рассказывать не мне это к "рассылкам по железу". Речь идет вот о чем, ВЕСЬ , без исключения софт(которым мы пользуемся/играемся повседневно) заточен под один процессор и не более, а программистов которые знают КАК написать программу, которая сама поймет сколько есть ресурсов и потоков, а темболее смодет их ГРАМОТНО использовать немного, так что прошу всех сесть за литературу и начать готовиться к тому , что мир ПК встанет с ног на голову(новые баги в новой винде и все такое :) )...

 

Книги по Дельфи которые ВЫ ОБЯЗАНЫ ПРОЧИТАТЬ...

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

Пожалуй лучший учебник по дельфи 6 на сегодняшний день, вам даже не надо знать дельфи, чтобы начать ...

  • Дельфи 5: Руководство разработчика БД
  •  

    DirectX. Графика в проектах Delphi (+CD - ROM)
    Лучшее пособие для тех кто решил связаться с DirectX, по слухам на CD помимо примеров есть DirectxSDK7.0 от Microsoft...

    Среда программирования Delphi 5-6. Справочное пособие
    Книга полностью описывает среду программирования Delphi, которая включает в себя полный набор визуальных инструментов для быстрой и профессиональной разработки приложений для различных операционных систем, кроме того рассмотрены проблемы перехода между этими версиями дельфи.

    Программирование в Delphi 6 (+ floppy дискета ) Чайникам рекомендуется!!!

    Книга содержит методические и справочные материалы по новой версии системы визуального объектно-ориентированного программирования Delphi 6 и предшествующим версиям Delphi 5 и 4. Рассмотрены такие новые возможности Delphi, как кросс-платформенные приложения, технологии доступа к данным ADO, InterBase Express, dbExpress, компоненты — серверы СОМ, технологии распределенных приложений СОМ, CORBA, MIDAS, новая методика диспетчеризации действий...

 

На закуску :FAQ... (Итоги)

К заголовку

Q :Не могли бы Вы в очередной рассылке о Дельфи написать как осуществляется
поиск строки в текстовом файле.
Очень подробно, для чайников, если можно.


A: Очень элементарно, любой текстовый файл состоит из строк, а они , в свою очередь из подстрок. Например строка 'Windows is most buggy OS' , состоит из 5 слов или 27 символов , которые можно объединять в подстроки. Проще говоря любой текстовый файл представленный как Tstrings имеет свойство длинны Length, которое счетает сколько в файле не пустых строк, считая от нулевой.
Ну дак вот, берем искомую строку (то, что мы ищем) и рассматриваем mytextfiles.strings[n](это отдельная строка.) есть функция, которая сравнивает две строки и возвращает либо -1 ,если искомого текста в строке нет, либо номер символа, с которого начинается исходный текст. По найденной строке вызываем Getfocus(x,y) x- номер строки y-номер символа.
Для понту можно еще и выделить найденное ....

Q: Нужно сделать маленькую игру на OpenGL(а-ля Pacman) , но работу с ним я не осилю, что делать?
A: Попробуй использовать Glscene, это интуитивно понятная библиотека, распространяется в сети бесплатно, но имеет кучу примеров и довольно приемлимый набор эффектов...

Q:Как получить описание компьютера, установленныю на нем ОС и имя пользователя, который на нем
работает?

Если знаете, опубликуйте пожалуйта ответ.
A: Ответ на вопрос, в виде кода:
const

{ operating system constants }
cOsUnknown = -1;
cOsWin95 = 0;
cOsWin98 = 1;
cOsWin98SE = 2;
cOsWinME = 3;
cOsWinNT = 4;
cOsWin2000 = 5;
cOsWhistler = 6;


function GetOperatingSystem : integer;
var

osVerInfo : TOSVersionInfo;
majorVer, minorVer : Integer;
begin

result := cOsUnknown;
{ set operating system type flag }
osVerInfo.dwOSVersionInfoSize := SizeOf(TOSVersionInfo);
if GetVersionEx(osVerInfo) then
begin
majorVer := osVerInfo.dwMajorVersion;
minorVer := osVerInfo.dwMinorVersion;
case osVerInfo.dwPlatformId of
VER_PLATFORM_WIN32_NT : { Windows NT/2000 }
begin
if majorVer <= 4 then
result := cOsWinNT
else if (majorVer = 5) AND (minorVer= 0) then
result := cOsWin2000
else if (majorVer = 5) AND (minorVer = 1) then
result := cOsWhistler
else
result := cOsUnknown;
end;
VER_PLATFORM_WIN32_WINDOWS : { Windows 9x/ME }
begin
if (majorVer = 4) AND (minorVer = 0) then
result := cOsWin95
else if (majorVer = 4) AND (minorVer = 10) then
begin
if osVerInfo.szCSDVersion[1] = 'A' then
result := cOsWin98SE
else
result := cOsWin98;
end
else if (majorVer = 4) AND (minorVer = 90) then
result := cOsWinME
else
result := cOsUnknown;
end;
else
result := cOsUnknown;
end;
end
else
result := cOsUnknown;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin

ShowMessage(IntToStr(GetOperatingSystem));
end;

----

GetLocalUserList - возвращает список пользователей (Windows NT, Windows 2000)

Кондратюк Виталий предлагает следующий код:


--------------------------------------------------------------------------------
unit Func;
interface

uses Sysutils, Classes, Stdctrls, Comctrls, Graphics, Windows;

////////////////////////////////////////////////////////////////////////////////
{$EXTERNALSYM NetUserEnum}
function NetUserEnum( servername : LPWSTR;

level,
filter : DWORD;
bufptr : Pointer;
prefmaxlen : DWORD;
entriesread,
totalentries,
resume_handle : LPDWORD ) : DWORD; stdcall;
external 'NetApi32.dll' Name 'NetUserEnum';

function NetApiBufferFree( Buffer : Pointer{LPVOID} ) : DWORD; stdcall;

external 'NetApi32.dll' Name 'NetApiBufferFree';
////////////////////////////////////////////////////////////////////////////////

procedure GetLocalUserList(ulist: TStringList);

implementation

//------------------------------------------------------------------------------
// возвращает список пользователей локального хоста
//------------------------------------------------------------------------------
procedure GetLocalUserList(ulist: TStringList);
const

NERR_SUCCESS = 0;
FILTER_TEMP_DUPLICATE_ACCOUNT = $0001;
FILTER_NORMAL_ACCOUNT = $0002;
FILTER_PROXY_ACCOUNT = $0004;
FILTER_INTERDOMAIN_TRUST_ACCOUNT = $0008;
FILTER_WORKSTATION_TRUST_ACCOUNT = $0010;
FILTER_SERVER_TRUST_ACCOUNT = $0020;

type

TUSER_INFO_10 = record
usri10_name,
usri10_comment,
usri10_usr_comment,
usri10_full_name : PWideChar;
end;
PUSER_INFO_10 = ^TUSER_INFO_10;

var

dwERead, dwETotal, dwRes, res : DWORD;
inf : PUSER_INFO_10;
info : Pointer;
p : PChar;
i : Integer;
begin

if ulist=nil then
Exit;
ulist.Clear;


info := nil;
dwRes := 0;
res := NetUserEnum( nil,
10,
FILTER_NORMAL_ACCOUNT,
@info,
65536,
@dwERead,
@dwETotal,
@dwRes);
if (res<>NERR_SUCCESS) or (info=nil) then
Exit;
p := PChar(info);
for i:=0 to dwERead-1 do begin
inf := PUSER_INFO_10 ( p + i*SizeOf(TUSER_INFO_10) );
ulist.Add( WideCharToString( PWideChar((inf^).usri10_name) ) );
end;


NetApiBufferFree(info);
end;

end.


 

 

Zaluskiy Anton(COOLer)  и Khrapunov Kirill(Pixel)  - ведущие проекта    "Мир Delphi" (C) Pixelsoftware(Pixel)& Delphi 2000-2002(COOLer)


http://subscribe.ru/
E-mail: ask@subscrib
e.ru
Отписаться
Убрать рекламу
Рейтингуется SpyLog



http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное