J
e
ż
e
l
i
w
z
a
d
a
n
i
u
w
y
s
t
ą
p
i
n
a
z
w
a
W
i
n
d
o
w
s
m
a
m
y
n
a
m
y
ś
l
i
3
2
b
i
t
o
w
y
s
y
s
t
e
m
o
p
a
r
t
y
n
a
a
r
c
h
i
t
e
k
t
u
r
z
e
N
T
J
e
ż
e
l
i
w
z
a
d
a
n
i
u
w
y
s
t
ą
p
i
n
a
z
w
a
p
r
o
c
e
s
m
a
m
y
n
a
m
y
ś
l
i
3
2
b
i
t
o
w
y
p
r
o
c
e
s
W
i
n
d
o
w
s
1. U ż y t k o w n i k z u p r a w n i e n i a m i a d m i n i s t r a t o r a u r u c h o m i ł w s
y
s
t
e
m
i
e
w
i
n
d
o
w
s
w
t
r
y
b
i
e
p
e
ł
n
e
g
o
e
k
r
a
n
u
p
r
o
g
r
a
m
s
y
s
t
e
m
u
M
S
7
D
O
S
,
k
t
ó
r
y
z
a
w
i
e
r
a
w
i
r
u
s
a
.
W
i
r
u
s
p
r
o
g
r
a
m
u
j
ą
c
b
e
z
p
o
ś
r
e
d
n
i
o
s
p
r
z
ę
t
p
r
ó
b
u
j
e
w
y
z
e
r
o
w
a
ć
p
a
m
i
ę
ć
C
M
O
S
i
p
a
m
i
ę
ć
F
L
A
S
H
z
a
w
i
e
r
a
j
ą
c
ą
B
I
O
S
.
C
o
m
u
s
i
z
r
o
b
i
ć
a
d
m
i
n
i
s
t
r
a
t
o
r
s
y
s
t
e
m
u
w
c
e
l
u
u
s
u
n
i
ę
c
i
a
a
w
a
r
i
i
?
(
Z
a
k
ł
a
d
a
m
y
,
ż
e
s
t
e
r
o
w
n
i
k
i
t
r
y
b
u
j
ą
d
r
a
s
ą
n
a
p
i
s
a
n
e
p
r
a
w
i
d
ł
o
w
o
)
a
a
t
y
c
h
m
i
a
s
t
z
a
m
k
n
ą
ć
k
o
n
s
o
l
ę
M
S
7
D
O
S
z
w
i
r
u
s
e
m
,
N
b
i
c
n
i
e
m
u
s
i
r
o
b
i
ć
,
N
c
Z
a
p
r
o
g
r
a
m
o
w
a
ć
p
a
m
i
ę
ć
F
L
A
S
H
B
I
O
S
e
m
z
g
o
d
n
y
m
z
p
ł
y
t
ą
g
ł
ó
w
n
ą
,
d
W
y
l
u
t
o
w
a
ć
p
a
m
i
ę
ć
C
M
O
S
z
p
ł
y
t
y
g
ł
ó
w
n
e
j
i
z
a
m
o
n
t
o
w
a
ć
n
o
w
ą
.
2. P e w n a 1 6 7 b i t o w a a p l i k a c j a w i n d o w s w y ś w i e t l a o k n o p o k a z a n e n a r y s u n k u . Z i l u w i d o c z n y c h o k i e n s k ł a d a s i ę t o o
k
n
o
?
P
o
d
a
ć
n
a
z
w
y
t
y
c
h
n
a
z
w
y
o
k
i
e
n
.
a
1
b
2
c
3
nazwy:
B
e
z
n
a
z
w
y
,
"
O
K
"
,
"
A
n
u
l
u
j
"
3. W
s
y
s
t
e
m
i
e
w
i
n
d
o
w
s
u
r
u
c
h
a
m
i
a
m
y
p
r
o
c
e
s
p
1
,
a
n
a
s
t
ę
p
n
i
e
n
a
d
r
u
g
i
e
j
k
o
n
s
o
l
i
p
r
o
c
e
s
p
2
:
void main(void){
void main(void){
char s[]=”wiadomo
\n”;
char s[];
ś
ć
printf(”%p\n”,s); getc(); scanf(”%p”,&s); printf(s);
}
}
s
P
r
o
c
e
s
p
1
w
y
ś
w
i
e
t
l
a
a
d
r
e
s
z
m
i
e
n
n
e
j
.
P
r
o
c
e
s
p
2
w
c
z
y
t
u
j
e
w
s
k
a
ź
n
i
k
,
k
t
ó
r
y
j
e
s
t
i
n
t
e
r
p
r
e
t
o
w
a
n
y
j
a
k
o
a
d
r
e
s
t
a
b
l
i
c
y
t
e
k
s
t
o
w
e
j
d
o
w
y
ś
w
i
e
t
l
e
n
i
a
.
C
o
s
i
ę
s
t
a
n
i
e
,
j
e
ż
e
l
i
p
r
o
c
e
s
o
w
i
p
2
p
o
d
a
m
y
a
d
r
e
s
z
w
r
ó
c
o
n
y
p
r
z
e
z
p
r
o
c
e
s
p
1
?
a
P
r
o
c
e
s
p
2
z
o
s
t
a
n
i
e
p
r
z
e
r
w
a
n
y
,
j
e
ż
e
l
i
w
c
z
y
t
a
n
y
w
s
k
a
ź
n
i
k
w
s
k
a
z
u
j
e
n
a
s
t
r
o
n
ę
b
e
z
p
r
a
w
a
d
o
o
d
c
z
y
t
u
,
b
w
i
a
d
o
m
o
ś
ć
a
e
k
r
a
n
i
e
p
o
j
a
w
i
s
i
ę
t
e
k
s
t
,
N
c
a
e
k
r
a
n
i
e
p
o
j
a
w
i
s
i
ę
p
e
w
i
e
n
t
e
k
s
t
,
a
l
e
n
i
e
b
ę
d
z
i
e
t
o
z
a
w
a
r
t
o
ś
ć
z
m
i
e
n
n
e
j
s
p
r
o
c
e
s
u
p
1
,
N
d
O
d
p
o
w
i
e
d
ź
a
)
a
l
b
o
c
)
.
4. W
s
y
s
t
e
m
i
e
w
i
n
d
o
w
s
u
r
u
c
h
a
m
i
a
m
y
p
r
o
c
e
s
,
k
t
ó
r
y
u
r
u
c
h
a
m
i
a
k
o
l
e
j
n
o
w
ą
t
k
i
w
1
i
w
2
:
UINT w1(void *p){
UINT w2(void *p){
CEvent e1(0,0,”zdarzenie1”); CEvent e1(0,0,”zdarzenie1”); CEvent e2(0,0,”zdarzenie2”); CEvent e2(0,0,”zdarzenie2”); CSingleLock SL(&e1); printf(”2”); e1.SetEvent(); printf(”1”);
CSingleLock SL(&e2); e2.SetEvent(); return 0; printf(”3”); return 0;
}
}
Z
a
k
ł
a
d
a
m
y
,
ż
e
w
ą
t
e
k
w
1
w
y
k
o
n
u
j
e
s
i
ę
p
i
e
r
w
s
z
y
i
c
z
a
s
y
p
o
t
r
z
e
b
n
e
n
a
w
y
k
o
n
a
n
i
e
w
ą
t
k
ó
w
w
1
i
w
2
s
ą
k
r
ó
t
s
z
e
o
d
k
w
a
n
t
u
c
z
a
s
u
u
ż
y
w
a
n
e
g
o
p
r
z
e
z
d
y
s
p
o
z
y
t
o
r
a
.
C
o
z
o
s
t
a
n
i
e
w
y
ś
w
i
e
t
l
o
n
e
n
a
e
k
r
a
n
i
e
?
213
123
321
312
5. C o s i ę s t a n i e w w
y
n
i
k
u
w
y
k
o
n
a
n
i
a
n
a
s
t
ę
p
u
j
ą
c
y
c
h
i
n
s
t
r
u
k
c
j
i
(
w
y
k
o
n
u
j
ą
c
y
j
e
p
r
o
c
e
s
j
e
s
t
p
r
o
c
e
s
e
m
W
i
n
d
o
w
s
)
:
{FILE *f;f=fopen(”\\\\d3\\mailslot\\1025”,”w”);fprintf(f,”1”);fclose(f);}
a
fopen
F
u
n
k
c
j
a
z
w
r
ó
c
i
b
ł
ą
d
,
p
o
n
i
e
w
a
ż
w
n
a
z
w
i
e
p
l
i
k
u
n
i
e
m
o
ż
e
w
y
s
t
ą
p
i
ć
c
i
ą
g
z
n
a
k
ó
w
\
\
,
b
”1”
a
d
y
s
k
u
z
o
s
t
a
n
i
e
u
t
w
o
r
z
o
n
y
p
l
i
k
o
p
o
d
a
n
e
j
n
a
z
w
i
e
z
a
w
i
e
r
a
j
ą
c
y
z
n
a
k
,
N
c
”1025”
”d3”
”1”
U
ż
y
t
k
o
w
n
i
k
n
a
k
o
m
p
u
t
e
r
z
e
o
n
a
z
w
i
e
o
t
r
z
y
m
a
e
7
m
a
i
l
o
t
r
e
ś
c
i
,
d
”1025”
”d3”
”1”.
S
e
r
w
e
r
s
k
r
z
y
n
k
i
p
o
c
z
t
o
w
e
j
o
n
a
z
w
i
e
n
a
k
o
m
p
u
t
e
r
z
e
o
n
a
z
w
i
e
o
t
r
z
y
m
a
w
i
a
d
o
m
o
ś
ć
o
t
r
e
ś
c
i
6.
108a2
a
k
o
m
p
u
t
e
r
z
e
o
n
a
z
w
i
e
,
n
a
k
t
ó
r
y
m
p
r
a
c
u
j
e
s
y
s
t
e
m
W
i
n
d
o
w
s
9
8
,
u
r
u
c
h
o
m
i
o
n
o
s
e
r
w
e
r
p
o
t
o
k
u
n
a
z
w
a
n
e
g
o
N
potok
o
n
a
z
w
i
e
.
C
o
n
a
l
e
ż
y
w
s
t
a
w
i
ć
w
m
i
e
j
s
c
e
z
n
a
k
u
w
p
o
n
i
ż
s
z
y
m
k
o
d
z
i
e
,
ż
e
b
y
t
r
a
n
s
a
k
c
j
a
z
t
y
m
s
e
r
w
e
r
e
m
z
a
k
o
ń
c
z
y
ł
a
s
i
ę
p
o
m
y
ś
l
n
i
e
:
char s[]="Wiadomo
dla serwera\n"; char odp[256]; unsigned long nodp; ś
ć
CallNamedPipe(
,s,strlen(s)+1,odp,256,&nodp,0);
a
”\\\\108a2\\pipe\\potok”, b
”\\108a2\pipe\potok”,
c
S
e
r
w
e
r
p
o
t
o
k
u
n
a
z
w
a
n
e
g
o
n
i
e
m
o
ż
e
p
r
a
c
o
w
a
ć
z
s
y
s
t
e
m
e
m
W
i
n
d
o
w
s
9
8
,
d
”\\\\108a2\\potok”.
7.
FileName
D
o
d
a
j
e
m
y
w
ł
a
ś
c
i
w
o
ś
ć
(
p
r
o
p
e
r
t
y
)
d
o
i
n
t
e
r
f
e
j
s
u
k
o
n
t
r
o
l
k
i
A
c
t
i
v
e
X
.
J
a
k
i
e
s
k
ł
a
d
o
w
e
z
o
s
t
a
n
ą
u
t
w
o
r
z
o
n
e
w
k
l
a
s
i
e
b
a
z
o
w
e
j
C
+
+
d
o
o
b
s
ł
u
g
i
t
e
j
w
ł
a
ś
c
i
w
o
ś
c
i
?
a
GetFileName SetFileName
D
w
i
e
f
u
n
k
c
j
e
:
,
,
b
FileName
J
e
d
n
a
z
m
i
e
n
n
a
s
k
ł
a
d
o
w
a
k
l
a
s
y
o
n
a
z
w
i
e
i
ż
a
d
n
a
f
u
n
k
c
j
a
,
c
D
o
o
b
s
ł
u
g
i
w
ł
a
ś
c
i
w
o
ś
c
i
n
i
e
p
o
t
r
z
e
b
n
e
s
ą
ż
a
d
n
e
s
k
ł
a
d
o
w
e
k
l
a
s
y
b
a
z
o
w
e
j
k
o
n
t
r
o
l
k
i
,
d
GetFileName, SetFileName, QueryFileName.
r
z
y
f
u
n
k
c
j
e
:
T