![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Функция CreateProcessWithLogonW [D7, WinXP]
SergeyGood © (2005-09-16 08:09:00)Помогите запустить код программы по ссылке:
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1126694897&n=5
Останавливается в разделе
implementation
uses
HSAdvApi;
и говорит HSAdvApi file not found
У меня 2003 Винтукей!
SergeyGood (2005-09-21 11:20:00) [1]Приветы пацана, проблему решил. Если у кого будет такая же проблема, вот код, работает на 8, 2003 винтукее, под .Net. Мыльте если чё SergeyGood@yandex.ru (Бескорыстно!!!)
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, System.ComponentModel, Borland.Vcl.StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
function CreateProcessWithLogonW(user:pwidechar; domain:pwidechar;
passw:pwidechar; flags: DWORD; lpApplicationName: PwideChar; lpCommandLine: PwideChar;
dwCreationFlags: DWORD; lpEnvironment: Pointer;
lpCurrentDirectory: PWideChar; const lpStartupInfo: TStartupInfo;
var lpProcessInformation: TProcessInformation): BOOL; stdcall;external 'advapi32.dll' name 'CreateProcessWithLogonW';
{$R *.nfm}
procedure TForm1.Button1Click(Sender: TObject);
var
si: TSTARTUPINFO;
pif: PROCESS_INFORMATION;
begin
si.cb := SizeOf(tstartupinfo);
si.dwFlags := STARTF_USESHOWWINDOW;
si.wShowWindow := SW_SHOWDEFAULT;
si.lpReserved := nil;
si.lpDesktop := nil;
si.lpTitle := nil;
CreateProcessWithLogonW('Ваш юзер', nil, 'Пароль вашего юзера', 0,
nil, 'Программа вашего юзера',0, nil, nil, si, pif);
end;
end.
P.S. Модыраторы, будьте людьми, не удаляйте сообщения!!!
Игорь Шевченко (2005-09-20 11:31:00) [2]
> А чисто теоретически можно такое приложение создать именно
> для .Net или не стоит даже и пытаться?
Можно. Сумму я озвучил.
SergeyGood (2005-09-20 09:12:00) [3]А чисто теоретически можно такое приложение создать именно для .Net или не стоит даже и пытаться? Например не с именно этим кодом.
Этот код лишь часть моей программы и с 8 версии на более ранние версии Делфи её будет проблемно перенести!
Игорь Шевченко (2005-09-19 14:21:00) [4]
> Он говорит Undeclared Identifier PStartupInfo, в чём причина?
Тебе уже сказали, для .Net это не работает.
SergeyGood (2005-09-19 14:09:00) [5]Он говорит Undeclared Identifier PStartupInfo, в чём причина?
xmed (2005-09-16 09:28:00) [6]так ведь в данном коде 2 Unit-a
первый это формаfMain: TfMain;
а втарой Unit начинается со слов
unit HSAdvApi;
interface
uses
Windows;
...
Создаем новое приложения, делаем форму с названием fMain
потом добавляем в проэкт еще один Unit, который и будет HSAdvApi;
и всё...