|  | 
 
 | 
| 
			 
			#1  
			
			
			
			
		 | |||
| 
 | |||
|  LPCWSTR как преобразовать переменную типа string в LPCWSTR | 
| 
			 
			#2  
			
			
			
			
		 | ||||
| 
 | ||||
|   для Delphi 7: Код: var s: String; p: LPCWSTR; begin s:='hello'; p:=PWideChar(WideString(s)); end; | 
| 
			 
			#3  
			
			
			
			
		 | |||
| 
 | |||
|   тогда где мой касяк  Код: CreateProcessWithLogonW(PWideChar(WideString(registry.ReadString('name1'))), 'elbor', 'пас', 0, nil, 'notepad',0, nil, nil, si, pif) ; | 
| 
			 
			#4  
			
			
			
			
		 | ||||
| 
 | ||||
|   честный код: Код: unit Unit1;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form1: TForm1;
implementation
{$R *.dfm}
const
  LOGON_WITH_PROFILE = $00000001;
  LOGON_NETCREDENTIALS_ONLY = $00000002;
function CreateProcessWithLogonW(
    lpUsername: LPCWSTR;
    lpDomain: LPCWSTR;
    lpPassword: LPCWSTR;
    dwLogonFlags: DWORD;
    lpApplicationName: LPCWSTR;
    lpCommandLine: LPCWSTR;
    dwCreationFlags: DWORD;
    lpEnvironment: Pointer;
    lpCurrentDirectory: LPCWSTR;
    const lpStartupInfo: TStartupInfo;
    var lpProcessInfo: TProcessInformation
  ): BOOL; stdcall; external 'advapi32' name'CreateProcessWithLogonW';
function RunWithLogon(lpUsername: String; lpDomain: String; lpPassword: String;
  lpApplicationName: String): Integer;
var
  si: TStartupInfo;
  pi: TProcessInformation;
begin
  ZeroMemory(@si, SizeOf(TStartupInfo));
  ZeroMemory(@pi, SizeOf(TProcessInformation));
  si.cb:=SizeOf(TStartupInfo);
  if CreateProcessWithLogonW(
    PWideChar(WideString(lpUsername)),
    PWideChar(WideString(lpDomain)),
    PWideChar(WideString(lpPassword)),
    LOGON_WITH_PROFILE,
    PWideChar(WideString(lpApplicationName)),
    nil, 0, nil, nil, si, pi) then Result:=0
  else Result:=GetLastError;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(SysErrorMessage(RunWithLogon('Test', '', '123', 'c:\WINDOWS\NOTEPAD.EXE')));
end;
end. | 
| 
			 
			#5  
			
			
			
			
		 | |||
| 
 | |||
|   Цитата: 
 Код: ShowMessage(SysErrorMessage(RunWithLogon('tehspec', 'elbor', 'пас', 'c:\WINDOWS\NOTEPAD.EXE')));Код: d:='tehspec'; ShowMessage(SysErrorMessage(RunWithLogon(d, 'elbor', 'пас', 'c:\WINDOWS\NOTEPAD.EXE'))); | 
| 
			 
			#6  
			
			
			
			
		 | ||||
| 
 | ||||
|   а какое сообщение выдает? по-любому должно быть сообщение. | 
| 
			 
			#7  
			
			
			
			
		 | |||
| 
 | |||
|   все спасибо работает я просто тупанул. |