Вопрос
№2: Управление устройствами через порты Можно ли в Дельфи реализовать
управление устройствами через порты (СОМ, USB)? Если да, то как? Мож какие ссылки
есть по этой теме? Предполагаемое решение: На сайте www.torry.net
я видел компонент управления USB.
Ответ
№2 (Stat): Не знаю насчёт USB,
давно ищу сам информацию по железу на эту тему, а COM, LPT портами можно управлять
как душе угодно. Сам для Delphi не писал, но писал для C++ Builder. (Вообще
хорошо прочитать инструкцию Win32 Programmers Reference Раздел Communications,
там в принципе понятно написано) А ещё находил компонентик для Delphi. Скачал
откуда не помню, весит 58662 байта: // TComPort component ver. 2.00 for Delphi
2, 3, 4, 5 // written by Dejan Crnila, 1998 - 1999 // email: dejancrn@yahoo.com
Вопрос
№3: Установка Interbase Как сделать инсталятор, который прописывал
бы пользователя в Interbase? BDE при этом не нужна совсем.
Ответ
№1 (Denis Alexandrovich Ivanov):
Без проблем: 1. При помощи InstallShieldExpress формируется проект, который
включает в себя установку Interbase Server. 2. После установки Interbase запускаешь
программу, написанную на Delphi 6, которая добавляет нового пользователя Interbase
Пример программы см. ниже:
(************************************************************************
Проект : ....
Автор : Иванов Д.А.
Назначение : Выжимки из библиотеки функций для работы со справочником
пользователей
Note: You must install InterBase 6 to use this feature.
Дата создания: 11.13.2002
История :
************************************************************************)
unit usr;
interface
uses IBCustomDataSet,IBDataBase,IBServices;
type
TUsrInfo = record
Usr:string ; //login
Uid:integer; //уникальный идентификатор, если программа ведет
//справочник пользователей в своей БД - его можно
//брать оттуда по секвенции
Grp:integer; //Group
Pas:string ; //password
end;
TUsrClass = class(TObject)
private
{ Private declarations }
public
UsrData:TUsrInfo;
dbSec :TIBSecurityService;
// добавляет или редактирует пользователя в Interbase
function UpdateUser: string;
end;
TUsrLib = class(TUsrClass)
private
{ Private declarations }
public
procedure AddNewUserToInterbase;
end;
var
clUsr:TUsrLib;
implementation
uses SysUtils,Controls,db,windows,QDialogs;
(***************** Добавляет или редактирует пользователя ***************)
function TUsrClass.UpdateUser: string;
//Usrid = 0 - новый пользователь
var Edes:string; //Описание ошибок
begin
try
if UsrData.Usr = '' then Edes:= 'не указан login пользователя';
if UsrData.Uid = 0 then Edes:= 'не указан id пользователя';
if UsrData.Grp = 0 then Edes:= 'не указана группа пользователя';
if UsrData.Pas = '' then Edes:= 'не указан пароль пользователя';
if EDes <> '' then raise Exception.Create(Edes);
//Добавляем пользователя в interbase
with dbSec do begin
if not Active then Active := True;
UserName := UsrData.Usr;
UserID := UsrData.Uid;
GroupID := UsrData.Grp;
Password := UsrData.Pas;
try
DisplayUser(UserName);
if UserInfo[0] = nil then AddUser else ModifyUser;
except
Edes:='Ошибка добавления пользователя в interbase security';
raise Exception.Create(Edes);
end;
//раздача если нужно права доступа пользователя на таблицы
(* EDes:= GrantData(UsrData.Usr);
if EDes <> '' then raise Exception.Create(Edes);
*)
end;
except
if EDes = '' then EDes:= 'Ошибка добавления пользователя в interbase security';
end;
Result:= EDes;
end;
procedure TUsrLib.AddNewUserToInterbase;
var Edes:string; //Описание ошибок
begin
UsrData.Usr := 'ida' ;
UsrData.Uid := 123 ;
UsrData.Grp := 1 ;
UsrData.Pas := 'pass';
EDes:= UpdateUser;
if EDes <> '' then raise Exception.Create(Edes);
end;
begin
clUsr:=TUsrLib.Create;
end.
Ответ
№2 (Луценко Александр): Установку
Interbase 6.0 я пробовал делать двумя системами создания инсталляций: - InstallShield
- Wise Install Builder. Для обоих использовал готовые скрипты с сайта
http://ibinstall.defined.net/.
По результатам могу сказать, что Wise удобнее и проще в инсталляции. Кроме
того у него есть текстовый редактор скрипта, что нашему брату шибко нравится.
Установка и запуск IBGuard проходит как и в фирменном варианте сразу (Silent Install).
Новые
вопросы
Вопрос
№5: Шифрование базы IB ...есть ли надстройки или прочие возможности
позволяющие шифровать IB базу? Можно ли как простейшую альтернативу шифрованию
защитить базу тем, что при создании указывать для каждой базы отдельного пользователя
и пароль. Мне необходимо защитить IB базу от вскрытия в случае кражи. Предложить свой вариант решения можно
здесь
или воспользовавшись формой обратной связи (для HTML-формата).
Вопрос
№6: NT-based списки пользователей Как узнать список всех пользователей?
Предложить свой вариант решения можно здесь
или воспользовавшись формой обратной связи (для HTML-формата).
Вопрос
№7: Работа в локальной сети по TCP/IP из DOS Может у когонибудь
есть описание, документация или примеры программ, рабрты с Microsoft Sockets for
DOS (sockets.exe)? Заранее спасибо. Предложить
свой вариант решения можно здесь
или воспользовавшись формой обратной связи (для HTML-формата).
Вопрос
№8: Process Handle Как могу я получить Дескриптор Процесса с
помощью WinAPI, если известно его название? Предполагаемое решение: Это
поволяет сделать функция FindWindow из WinAPI.
Справка
WinAPI: HWND FindWindow(
LPCTSTR
lpClassName, // pointer to class name LPCTSTR lpWindowName // pointer to window
name
);
Предложить
свой вариант решения можно здесь
или воспользовавшись формой обратной связи (для HTML-формата).
Вопрос
№9: Delphi 7 Как в Delphi7 редактировать Code Insight(Tools/Editor
Options), вставить в проект(в других версиях Delphi - по-Ctrl+J)? Предложить
свой вариант решения можно здесь
или воспользовавшись формой обратной связи (для HTML-формата).