Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- [Setup]
- AppName=My Program
- AppVersion=1.5
- DefaultDirName={pf}\My Program
- PrivilegesRequired=lowest
- [Code]
- #ifdef UNICODE
- #define AW "W"
- #else
- #define AW "A"
- #endif
- const
- PIPE_TYPE_BYTE = $00000000;
- PIPE_ACCESS_INBOUND = $00000001;
- INVALID_HANDLE_VALUE = $FFFFFFFF;
- type
- LPSECURITY_ATTRIBUTES = Cardinal;
- function CreateNamedPipe(lpName: string; dwOpenMode: DWORD; dwPipeMode: DWORD;
- nMaxInstances: DWORD; nOutBufferSize: DWORD; nInBufferSize: DWORD;
- nDefaultTimeOut: DWORD; lpSecurityAttributes: LPSECURITY_ATTRIBUTES): THandle;
- external 'CreateNamedPipe{#AW}@kernel32.dll stdcall';
- function CloseHandle(hObject: THandle): BOOL;
- external 'CloseHandle@kernel32.dll stdcall';
- procedure InitializeWizard;
- var
- PipeHandle: THandle;
- begin
- PipeHandle := CreateNamedPipe('\\.\pipe\SetupMsPipe123', PIPE_ACCESS_INBOUND, PIPE_TYPE_BYTE, 2, 0, 1024, 60000, 0);
- if PipeHandle <> INVALID_HANDLE_VALUE then
- begin
- MsgBox('Pipe has been created!', mbInformation, MB_OK);
- CloseHandle(PipeHandle);
- end
- else
- MsgBox(SysErrorMessage(DLLGetLastError), mbError, mb_Ok);
- end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement