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

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


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

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

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


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

 

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


Розыск:
VCL для работы с БД вез наличия БД драйверов и.т.п

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

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

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


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


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

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

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

 

Vcl Haunting

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

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

Help!

Реклама

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

 

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

Новости СЕТИ

К заголовку

Кстати, узнал подробности про конструктор 3Д игр(КУПИЛ!!!),в сетке эта вещь называется 3D gamemaker и является производной от некогда популярного, языка-движка DarkBasic. Как написано на самом сайте , диск базируется для "Very Beginners of gamemaking" и создать свою игру вы можете с помощю Step-by-Step Wizarda.

Краткие характеристики этого движка/программы:

-----Вырезка с оффициального сайта
*Instant and amazing results in seconds.
*Random Game Option - let your computer create a
*uniquely playable game for you with just one click
of the mouse.
*Create a variety of exciting game scenarios with over
*360 pre-made scenes.
*Over 500 3D objects.
*Over 320 Sounds.
*Add personalised sound effects to games.
*Entirely customisable - utilise or scan in your
own images.
*Import your own 3D models.
*Download FREE objects from the
official website.
*Save games as exe files to share
with your friends.
*Swap games via disk or via the net with
other users.
*Place enemies, objects and items where you
want to with the Placement Editor.
----

Если вы хотите узнать больше, и увидеть скриншоты, вот оффициальный сайт
Если полученная вами информация достаточна, то вы можете купить этот диск(144 руб без учета доставки)
P.s У буржуев этот диск по 20 зеленых стоит :)...

 

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

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

Пожалуй лучший учебник по дельфи 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, новая методика диспетчеризации действий...

 

Компрессия... (Итоги)

К заголовку

По русски: Есть такая штука, как сжатие диска или сжатые папки, так вот есть API, который помогает установить степень сжатия файла на этом диске/папке...
To set a file's compression state, use the DeviceIoControl function with the
FSCTL_SET_COMPRESSION operation.

Call the following function with the name of the file to compress and
boolean parameter 'forceCompress'. If that one is true, file will be compressed.
If it is false, the file will be compressed only if its parent folder is
compressed (reason for that parameter: if you MoveFile uncompressed file from
uncompressed folder to compressed folder, file will not become automatically
compressed - at least under some NT 4 service packs).

Ein "compressed" Attribut kann man nicht mit der FileSetAttr Funktion setzen
sondern muss DeviceIoControl Funktion mit dem flag FSCTL_SET_COMPRESSION verwenden:
}


const
COMPRESSION_FORMAT_NONE = 0
COMPRESSION_FORMAT_LZNT1 = 2
COMPRESSION_FORMAT_DEFAULT = 1;
FILE_DEVICE_FILE_SYSTEM = 9;
METHOD_BUFFERED = 0;
FILE_READ_DATA = 1;
FILE_WRITE_DATA = 2;
FSCTL_SET_COMPRESSION = (FILE_DEVICE_FILE_SYSTEM shl 16) or
((FILE_READ_DATA or FILE_WRITE_DATA) shl 14) or (16 shl 2) or METHOD_BUFFERED;

function SetCompressedAttribut(FileName: PChar; forceCompress: Boolean): Boolean;
var
hnd: Integer;
Comp: SHORT;
res: DWORD;
begin
if forceCompress or ((GetFileAttributes(PChar(ExtractFilePath(FileName))) and
FILE_ATTRIBUTE_COMPRESSED) <> 0) then
begin
Result := False;
if (GetFileAttributes(FileName) and FILE_ATTRIBUTE_COMPRESSED) = 0 then
begin
hnd := CreateFile(FileName, GENERIC_READ + GENERIC_WRITE, 0, nil, OPEN_EXISTING, 0, 0);
try
Comp := COMPRESSION_FORMAT_DEFAULT;
if not DeviceIoControl(hnd, FSCTL_SET_COMPRESSION, @Comp,
SizeOf(SHORT), nil, 0, res, nil) then Exit;
finally
CloseHandle(hnd);
end;
end;
Result := True;
end
else
Result := True;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
begin
SetCompressedAttribut(PChar(OpenDialog1.FileName), True);
end;
end;

 

 

Аттач к EXE файлу

К заголовку

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

function AttachToFile(const AFileName: string; MemoryStream: TMemoryStream): Boolean;
var
aStream: TFileStream;
iSize: Integer;
begin
Result := False;
if not FileExists(AFileName) then
Exit;
try
aStream := TFileStream.Create(AFileName, fmOpenWrite or fmShareDenyWrite);
MemoryStream.Seek(0, soFromBeginning);
// seek to end of File
// ans Ende der Datei Seeken
aStream.Seek(0, soFromEnd);
// copy data from MemoryStream
// Daten vom MemoryStream kopieren
aStream.CopyFrom(MemoryStream, 0);
// save Stream-Size
// die Streamgro?e speichern
iSize := MemoryStream.Size + SizeOf(Integer);
aStream.Write(iSize, SizeOf(iSize));
finally
aStream.Free;
end;
Result := True;
end;

function LoadFromFile(const AFileName: string; MemoryStream: TMemoryStream): Boolean;
var
aStream: TFileStream;
iSize: Integer;
begin
Result := False;
if not FileExists(AFileName) then
Exit;

try
aStream := TFileStream.Create(AFileName, fmOpenRead or fmShareDenyWrite);
// seek to position where Stream-Size is saved
// zur Position seeken wo Streamgro?e gespeichert
aStream.Seek(-SizeOf(Integer), soFromEnd);
aStream.Read(iSize, SizeOf(iSize));
if iSize > aStream.Size then
begin
aStream.Free;
Exit;
end;
// seek to position where data is saved
// zur Position seeken an der die Daten abgelegt sind
aStream.Seek(-iSize, soFromEnd);
MemoryStream.SetSize(iSize - SizeOf(Integer));
MemoryStream.CopyFrom(aStream, iSize - SizeOf(iSize));
MemoryStream.Seek(0, soFromBeginning);
finally
aStream.Free;
end;
Result := True;
end;

procedure TForm1.SaveClick(Sender: TObject);
var
aStream: TMemoryStream;
begin
aStream := TMemoryStream.Create;
Memo1.Lines.SaveToStream(aStream);
AttachToFile('Test.exe', aStream);
aStream.Free;
end;

procedure TForm1.LoadClick(Sender: TObject);
var
aStream: TMemoryStream;
begin
aStream := TMemoryStream.Create;
LoadFromFile('Test.exe', aStream);
Memo1.Lines.LoadFromStream(aStream);
aStream.Free;
end;

{

Note:

You can't proof whether additional data is attached or not.
To reach this, you would have to create a checksumm of the
MemoryStream and attach it.


Hinweis:

Es kann nicht uberpruft werden ob zusatzliche Daten in der Datei
vorhanden sind. Um das zu erreichen musste man eine Checksumme des MemoryStreams
erzeugen und ebenfalls anhangen.

}


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


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

Another Banner Network

Another Banner Network



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

В избранное