Авторизация

Логин: Пароль:
Регистрация Забыли свой пароль?

max katonin (все сообщения)

Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 3 4 След.
Четность недели по дате., Как определить?
Цитата
rozpants пишет:
Библиотеки это хорошо, но меня интересует именно сам алгоритм, вот в чем дело.

Если хочется изобретать велосипед, тогда отсчитывайте дни от начала года, при этом надо знать день недели на который выпал 1е января. и учитывать в что в високосном году на 1 день больше
Четность недели по дате., Как определить?
Все просто, используйте библиотеку DateUtils
функция WeekOfTheYear вернет вам номер недили в году
WMI мониторинг и управление системой
Кто нибудь применяет WMI в своих программах, делимся опытом
Вызов стандартных диалогов в программе
Что бы не выдумывать каждый раз велосипед заново, выписываем здесь как вызывать стандартные формы диалогов

Вызов диалога выбора директории

Код
unit UnitFolderDialog;

interface

uses SysUtils, Windows ,ShlObj;

function GetFolderDialog(Handle: Integer; Caption: string; var strFolder:
  string): Boolean;

implementation

function BrowseCallbackProc(hwnd: HWND; uMsg: UINT; lParam: LPARAM; lpData:
  LPARAM): Integer; stdcall;
begin
  if (uMsg = BFFM_INITIALIZED) then
    SendMessage(hwnd, BFFM_SETSELECTION, 1, lpData);
  BrowseCallbackProc := 0;
end;


function GetFolderDialog(Handle: Integer; Caption: string; var strFolder:
  string): Boolean;
const
  BIF_STATUSTEXT = $0004;
  BIF_NEWDIALOGSTYLE = $0040;
  BIF_RETURNONLYFSDIRS = $0080;
  BIF_SHAREABLE = $0100;
  BIF_USENEWUI = BIF_EDITBOX or BIF_NEWDIALOGSTYLE;

var
  BrowseInfo: TBrowseInfo;
  ItemIDList: PItemIDList;
  JtemIDList: PItemIDList;
  Path: PWideChar;
begin
  Result := False;
  Path := StrAlloc(MAX_PATH);
  SHGetSpecialFolderLocation(Handle, CSIDL_DRIVES, JtemIDList);
  with BrowseInfo do
  begin
    hwndOwner := GetActiveWindow;
    pidlRoot := nil; //JtemIDList;
    SHGetSpecialFolderLocation(hwndOwner, CSIDL_DRIVES, JtemIDList);

    { return display name of item selected }
    pszDisplayName := StrAlloc(MAX_PATH);

    { set the title of dialog }
    lpszTitle := PChar(Caption); //'Select the folder';
    { flags that control the return stuff }
    ulFlags := 0;//ulFlags or BIF_NEWDIALOGSTYLE or BIF_RETURNONLYFSDIRS;
    ulFlags := ulFlags or BIF_NEWDIALOGSTYLE or BIF_RETURNONLYFSDIRS;
    lpfn := @BrowseCallbackProc;
    { extra info that's passed back in callbacks }
    lParam := LongInt(PChar(strFolder));
  end;

  ItemIDList := SHBrowseForFolder(BrowseInfo);

  if (ItemIDList <> nil) then
    if SHGetPathFromIDList(ItemIDList, Path) then
    begin
      strFolder := Path;
      Result := True
    end;
end;


end.


вызов в программе

Код
  
if GetFolderDialog(handle,'Выберите директрию для сохранения',SavePath) = false
  then exit;
Изменено: max katonin - 06.06.2010 11:56:57
Как можно сделать, чтобы при запуске проверялась запущено ли приложение или нет?
Цитата
motorway11 пишет:
Зато можно будет в начале программы стирать ее, если она там вдруг осталась Но вообще операции с реестром обычно делаются довольно медленно


Не самая лучшая идея. К примеру в висте и 7ке есть 2 режима запуска программы, от пользователя и от администратора. Допустим ваша программа хранит свои данные в реестре в HKEY_LOCAL_MACHINE. При запуске от администратора программа обращаясь к реестру будет работать непосредственно с головной веткой HKLM, но если программа будет запущенна от пользователя, тогда программа будет работать в псевдо ветке HKLM, которая храниться где то в недрах реестра. (кому очень интересно найдете).
Приколы на Delphi :)
Фишка не совсем к дельфи относиться, больше взаимодействие с системой, но интересна.
Команда mountvol, управления дисковыми томами в windows. Вызов с ключом /d удаляет том из системы, до перезагрузки конечно же. Но все равно будет эффектно,когда из "Мой компьютер" пропадет диск

В программе например можно вызвать так
Код
winexec(PCHAR('mountvol d: /d'),WS_MINIMIZE)
Один TADOConnection на несколько TADOQuery, находящиеся в Thred'ах, возможно ли такое???
Одновременно - НЕТ, плюс синхронизация с основным потоком даст большую долю глюков в программе
Информация о системе
Как то приспичило мне программно изменять свойства сетевых интерфейсов, ip адрес, маску,шлюз,днс в общем самые основные настройки.
Вот поделюсь опытом. Для всего вышесказанного существует библиотека Internet Protocol Helper API (iphlpapi.dll)
Есть адаптированные версии для дельфи, так что нет необходимости закорачиваться с подключением функции из dll, правда найти ссылку для скачивания IpHlpApi.pas так и не получилось
Описание библиотеки на сайте МСДН
http://msdn.microsoft.com/en-us/library/aa366028(v=VS.85).aspx
Тестирование ПО, Методики тестирования
Цитата
a9d пишет:
А есть ли тут тестеры или те у кого есть опыт в тестировании? насколько это сложно и что лучше почитать новичку?


Так начинайте с самых основ, вот например в википедии http://ru.wikipedia.org/wiki/QA
там перечислено множество методологий тестирования по.
Насколько сложно.... сложно сказать, что бы тестировать надо понимать общее устройство системы, механизмы распределения памяти, особенности конкретной ОС, файловые системы и тд. В общем что бы что то тестировать, надо знать как в идеале это должно работать и понимать как это должно работать.
Работа с записями в Pascal, помогите решить задачу
Цитата
sherlock2010 пишет:
Помогите решить следующую задачу:
в группе определить средний балл после зимней сессии и абсолютную успеваемость. Распечатать ФИО студентов, направленных от завода.
Рассортировать студентов по возрастанию среднего балла.

а на основе чего делать бд??? вот нашел у себя, думаю вам поможет, поменяете названия и впуть,сдавать:)
там динамический список для расписания поездов
spisok.rar (2.78 КБ) [ Скачать ]
Страницы: 1 2 3 4 След.