mirror of
https://github.com/reactos/reactos
synced 2025-10-08 17:32:43 +02:00
Compare commits
2588 Commits
backups/sn
...
ReactOS-0.
Author | SHA1 | Date | |
---|---|---|---|
|
9da3ad2c7b | ||
|
91d961fcec | ||
|
d7bb76c7a3 | ||
|
c3e7a4cd99 | ||
|
82c78b6f8f | ||
|
3c7582d455 | ||
|
84cc68cd65 | ||
|
377a976d5a | ||
|
f9e00769c5 | ||
|
f7dee395ca | ||
|
f9df6b72bf | ||
|
36fbf224f6 | ||
|
0498ff85e3 | ||
|
a128acd13b | ||
|
0eacafad27 | ||
|
d09d1d8165 | ||
|
fd3b42b706 | ||
|
8215152588 | ||
|
9e7f835989 | ||
|
91dda33431 | ||
|
63568c9f24 | ||
|
9f2558d971 | ||
|
7315f47790 | ||
|
3b42dceffb | ||
|
42336ccb3c | ||
|
5c2272b886 | ||
|
4f5478d56a | ||
|
51e9c7f51a | ||
|
4a4f6e5d9f | ||
|
b36097ee50 | ||
|
564e7818da | ||
|
bf93adc414 | ||
|
2d5ebe0ac1 | ||
|
23e5c53ced | ||
|
85470b1b8e | ||
|
09ab5ea7ed | ||
|
27783c2956 | ||
|
536fd901af | ||
|
ed2b3728b6 | ||
|
294ab75756 | ||
|
83bcd980a2 | ||
|
65e31a0c41 | ||
|
b0469b9227 | ||
|
f8e1661549 | ||
|
30a8a02f54 | ||
|
86c98bfda7 | ||
|
a822da7802 | ||
|
e0280ef3ab | ||
|
cdf1fc5784 | ||
|
dbcb280e05 | ||
|
808c1d2aac | ||
|
6e74f9217a | ||
|
68a311b64d | ||
|
2152b66c27 | ||
|
74348be606 | ||
|
0c41ef8fb6 | ||
|
ce979b05e3 | ||
|
2b90a87358 | ||
|
f11f599e16 | ||
|
f6da80a67e | ||
|
ab58eda781 | ||
|
6157c78fb8 | ||
|
9d8a8c4366 | ||
|
86d4e580c0 | ||
|
06b5ec800a | ||
|
6721692a02 | ||
|
dbdfdc99f7 | ||
|
e3397b9bdc | ||
|
f87f8bea7d | ||
|
1345a5a8a7 | ||
|
73375485df | ||
|
2a5ed24776 | ||
|
f5dcc15bd4 | ||
|
689777616b | ||
|
347ea70d19 | ||
|
116dfc5bd7 | ||
|
9215c5efc4 | ||
|
e41b7d9270 | ||
|
21fc538caa | ||
|
13ae1129e5 | ||
|
8f00170a93 | ||
|
0c134b04f8 | ||
|
e12241f5a1 | ||
|
c343d309f2 | ||
|
9f3cbac23f | ||
|
c4689f7e1d | ||
|
47ade62a62 | ||
|
f6dbb71053 | ||
|
882901c398 | ||
|
39596fae98 | ||
|
9f1e4379e0 | ||
|
ae49e29351 | ||
|
eb6e21dd58 | ||
|
0b6eedad3a | ||
|
41f2eb6c3e | ||
|
00d7ab957b | ||
|
899d12e786 | ||
|
e61d96aa6a | ||
|
deaa7df817 | ||
|
be9a0afc1f | ||
|
6f2c13e4df | ||
|
d9827356db | ||
|
3841692020 | ||
|
4c8e09598a | ||
|
0e8444a310 | ||
|
1c0aedce83 | ||
|
d2fc6e6ee2 | ||
|
d88628173c | ||
|
36532bafeb | ||
|
994a9eced3 | ||
|
ae1901b2c3 | ||
|
f45220c16f | ||
|
a18e985b12 | ||
|
0a7125a8be | ||
|
201f83b4b1 | ||
|
99fe0ae037 | ||
|
04b696718d | ||
|
a1938e7ca3 | ||
|
b1f132e660 | ||
|
3b7b8b89b3 | ||
|
4c022adf19 | ||
|
f93ac7e964 | ||
|
d135302c2f | ||
|
d876a3ea01 | ||
|
e22e9fc81f | ||
|
85dde2e51b | ||
|
3ff085924b | ||
|
c8ee4f6694 | ||
|
07c8bb3ca4 | ||
|
84eb2fc018 | ||
|
cf2dee2914 | ||
|
23cc1ba7bf | ||
|
0584d49170 | ||
|
92ea310563 | ||
|
a386d71b0e | ||
|
14bd8eb6f1 | ||
|
35bbb0a567 | ||
|
321c2c1f08 | ||
|
711a1cb341 | ||
|
1fa3c1a922 | ||
|
b4533fa94a | ||
|
3db54fabc1 | ||
|
68430f1260 | ||
|
bcea1db7b0 | ||
|
9338a7ec63 | ||
|
c4b72f20c6 | ||
|
6554d0079b | ||
|
af96013370 | ||
|
2fc232f21e | ||
|
1931f33c9b | ||
|
24ac7c8bed | ||
|
f4e131fa49 | ||
|
7d2398b6af | ||
|
10dc514582 | ||
|
dc50f1da19 | ||
|
922e006ea6 | ||
|
b44faa47ed | ||
|
60dedbf232 | ||
|
c959a66fb5 | ||
|
5e0896e8ab | ||
|
9e4da13034 | ||
|
20bbfa5624 | ||
|
26d220be5e | ||
|
64b471340a | ||
|
4c3c7daba6 | ||
|
0706d8cb47 | ||
|
ef0ae276af | ||
|
e5654cce9f | ||
|
1525fa31fc | ||
|
2bd66111fc | ||
|
54d38174b1 | ||
|
a04fdc1e99 | ||
|
9102288ea4 | ||
|
2ef285e193 | ||
|
5c59bd330a | ||
|
41af86fadd | ||
|
31f03442d0 | ||
|
81eba8d3e7 | ||
|
db0b0e9ee3 | ||
|
9cb674f17f | ||
|
292f51e33a | ||
|
debf556003 | ||
|
6317bb3ec2 | ||
|
33b1caea25 | ||
|
c05ad4799c | ||
|
3e9107ceec | ||
|
1f993d692c | ||
|
355e52a599 | ||
|
52f67885e7 | ||
|
fa50e67d23 | ||
|
1c5588d156 | ||
|
1777a8d251 | ||
|
504d12bfff | ||
|
f369525725 | ||
|
f8e9e5ec4b | ||
|
ab30fb1d60 | ||
|
3dae17b0e7 | ||
|
cdb3d06d8d | ||
|
624f4e9319 | ||
|
eb4e4b6e9f | ||
|
04201ba762 | ||
|
903ac43860 | ||
|
05bae83b22 | ||
|
3832e3a6d8 | ||
|
6af2c49b5f | ||
|
7dea13d496 | ||
|
60382e46c8 | ||
|
03a1f14142 | ||
|
e7e6f2ec5f | ||
|
ecd9852691 | ||
|
b29844edd8 | ||
|
d5ed3d00c5 | ||
|
2716a86ca7 | ||
|
cf62382937 | ||
|
547949716c | ||
|
a449c39c25 | ||
|
38274203e7 | ||
|
f4518d125d | ||
|
7117ea3375 | ||
|
e4ca76000c | ||
|
b17ce9c805 | ||
|
87cb029a9a | ||
|
939e841f4a | ||
|
3c1c6952b7 | ||
|
5cb03586f5 | ||
|
8820136bd2 | ||
|
8f2f019415 | ||
|
7cc3312dde | ||
|
615f2ccd2f | ||
|
f43b456462 | ||
|
d19f4a3169 | ||
|
ee591f5b01 | ||
|
a82d7577b3 | ||
|
483bdaa405 | ||
|
75c3f8d542 | ||
|
ee77d7ac02 | ||
|
5037dd926d | ||
|
b3312ecfdf | ||
|
5ef4290a15 | ||
|
8d64c9de05 | ||
|
cc89486210 | ||
|
67536408ff | ||
|
7426b69076 | ||
|
f445db2c5c | ||
|
de51bd8b04 | ||
|
b0442978e8 | ||
|
3138c9072b | ||
|
6607c27063 | ||
|
1a67145131 | ||
|
91cbbbe892 | ||
|
abf7007043 | ||
|
7f7d54ce48 | ||
|
42e5eee699 | ||
|
1ee7db3ccc | ||
|
220e2a29b0 | ||
|
cd7d2a507c | ||
|
a916000ce2 | ||
|
7e43425f53 | ||
|
32d14fbc55 | ||
|
962da98340 | ||
|
080086f7e7 | ||
|
4008c7e312 | ||
|
3c643293dc | ||
|
d1d15ad1a6 | ||
|
f5be5e8bfe | ||
|
bb12a351c7 | ||
|
eda316218d | ||
|
635d21750f | ||
|
8f060bddfb | ||
|
764f83d90d | ||
|
acaa894b33 | ||
|
838d4a450d | ||
|
6bea3b076d | ||
|
2a16952b1c | ||
|
afdb90c845 | ||
|
d88cd4165d | ||
|
6398772537 | ||
|
7f8dc7dfcc | ||
|
9808e1ee19 | ||
|
3b5b6fd6f1 | ||
|
333789f736 | ||
|
97a76faf99 | ||
|
d7113fdd2b | ||
|
040ae7635a | ||
|
5a105b3163 | ||
|
d56490d24a | ||
|
0c258ecde0 | ||
|
6f9aac412d | ||
|
5d4aa30793 | ||
|
3112a6b342 | ||
|
3c50fb3900 | ||
|
4d90c65d54 | ||
|
89d7d06790 | ||
|
098839afec | ||
|
4b0ee92f91 | ||
|
0cc09fc848 | ||
|
f6d85c300f | ||
|
3770c2d134 | ||
|
8c8f34f7fd | ||
|
57206b450b | ||
|
a26e5a47fc | ||
|
830b3fc070 | ||
|
56c393d8f4 | ||
|
7b8f448f33 | ||
|
b2405204cd | ||
|
2103cf341f | ||
|
3dda28e8fb | ||
|
6664d60e19 | ||
|
907d0d20e8 | ||
|
248545d219 | ||
|
272bc3ef9f | ||
|
0d157ecbc8 | ||
|
ec398e2908 | ||
|
243e71c96c | ||
|
4d493bb613 | ||
|
8ef995b4d0 | ||
|
005d3af030 | ||
|
89eb252fb8 | ||
|
4747d6a5c1 | ||
|
25b44b332b | ||
|
b5cdb03dd8 | ||
|
0b9b807d23 | ||
|
7b4db04803 | ||
|
74a68e0f6b | ||
|
74cca4dd1e | ||
|
eb3f29d2ad | ||
|
a41482aaa8 | ||
|
5e10767ccd | ||
|
d7fe3588b6 | ||
|
1d4a0a6e30 | ||
|
e953073b5f | ||
|
82284116fa | ||
|
4d11c54f65 | ||
|
07e4b2cd19 | ||
|
c524a09a17 | ||
|
40dcceff12 | ||
|
f6131fb8a9 | ||
|
f8555b75c4 | ||
|
9805c2c7e7 | ||
|
2a0e4e58cf | ||
|
3a302c5330 | ||
|
3d3581bab1 | ||
|
b8ed811f40 | ||
|
b8ea78efa1 | ||
|
3779212db7 | ||
|
27951d117b | ||
|
2366903f94 | ||
|
182d125bc0 | ||
|
7583b2b298 | ||
|
6c7fe2fb5f | ||
|
178bc77a1f | ||
|
16370e7605 | ||
|
1bde2edfcb | ||
|
fbfe11f633 | ||
|
ea1f78da72 | ||
|
f45315d051 | ||
|
fc8affc217 | ||
|
be0666cf16 | ||
|
50f668e4b3 | ||
|
1b27b462ec | ||
|
d4db41b968 | ||
|
20cbe80c85 | ||
|
d22bf76977 | ||
|
f5362e927f | ||
|
79a42b92f4 | ||
|
071ff079a6 | ||
|
3fd5666e63 | ||
|
630bbc5421 | ||
|
c16f5dc411 | ||
|
3cbe1ae789 | ||
|
19dd22d422 | ||
|
e340056142 | ||
|
8d15eb4dea | ||
|
8ad0eae687 | ||
|
1ac1c1b261 | ||
|
7384a6a1d5 | ||
|
6b8f404594 | ||
|
349d9f652b | ||
|
72c5e65e8c | ||
|
438d60c401 | ||
|
30ad304570 | ||
|
6d28124a20 | ||
|
658595fb98 | ||
|
453fae7f31 | ||
|
eb6360d80f | ||
|
544223fa5a | ||
|
312c89f38e | ||
|
2252393eeb | ||
|
c2486683cc | ||
|
68dca562d7 | ||
|
5ec31693b0 | ||
|
3e87295366 | ||
|
fd32dd8623 | ||
|
2c1c8e2f94 | ||
|
d6f5debb07 | ||
|
b3b8277a07 | ||
|
101ccf86e2 | ||
|
9a2dd59876 | ||
|
7ca0d5807c | ||
|
391e68be86 | ||
|
27c9570f9d | ||
|
6fda346a25 | ||
|
759a452d44 | ||
|
605a7dfec9 | ||
|
d70eb21b6b | ||
|
3a11250596 | ||
|
c91b3835c5 | ||
|
3767fcf5cc | ||
|
0cfb73fce3 | ||
|
f71f869a95 | ||
|
2130f6ee4b | ||
|
d3e907f461 | ||
|
cef084134d | ||
|
b3e5a3b667 | ||
|
93cfc03633 | ||
|
a538181140 | ||
|
09d56b8cff | ||
|
61b665bdda | ||
|
8fa7e9eda7 | ||
|
597e5ae5bd | ||
|
29d9f9eb31 | ||
|
e7bfd19443 | ||
|
eb1618cb01 | ||
|
d8b7427d6b | ||
|
09cb26ed2e | ||
|
0d89ad94cf | ||
|
afc72d800f | ||
|
b44a9ed6f6 | ||
|
3a104c8f20 | ||
|
2989383bb2 | ||
|
d35d70f2de | ||
|
0978c888bd | ||
|
474be69727 | ||
|
74e602b7f1 | ||
|
ab03499440 | ||
|
5fbcf4bdd4 | ||
|
0688aec488 | ||
|
92e558732b | ||
|
3145e7c7c1 | ||
|
980868b1f9 | ||
|
e024f8f37b | ||
|
fca7431a53 | ||
|
6c88bfb14d | ||
|
f0f266a71d | ||
|
f743323efa | ||
|
4a981826c1 | ||
|
05343d6328 | ||
|
ed4906ee50 | ||
|
7bd43aa322 | ||
|
8f32e01d63 | ||
|
0c663413f5 | ||
|
dd3b6e0e8d | ||
|
3e7b57d242 | ||
|
8e8a5efa43 | ||
|
4c2c978917 | ||
|
17e927e7e5 | ||
|
6f73f34dab | ||
|
ac024d1cda | ||
|
2e2012f926 | ||
|
2464924026 | ||
|
8743767965 | ||
|
6e2403e911 | ||
|
25cdf28c16 | ||
|
77b7db7a3b | ||
|
036e6ad687 | ||
|
28942a7e09 | ||
|
83d3b7e46f | ||
|
f4bd80599a | ||
|
6ad85c01c6 | ||
|
4e1fa50310 | ||
|
50f8a9e9fa | ||
|
d8eaddca44 | ||
|
c0c77a27b3 | ||
|
126ab550af | ||
|
43c14906aa | ||
|
0a4d3b5257 | ||
|
100b1d6e92 | ||
|
83eaf4cbac | ||
|
a905c2dc5b | ||
|
f41d8818ce | ||
|
4a2db60d45 | ||
|
e80a0f88e0 | ||
|
f3782aaf23 | ||
|
1866b31f5e | ||
|
81bce5b365 | ||
|
3a2d3f54c7 | ||
|
5c6a327cb8 | ||
|
35e1e225d6 | ||
|
4d8caff209 | ||
|
8454158975 | ||
|
16a6deef46 | ||
|
c547bb4ae4 | ||
|
24ff00e99b | ||
|
28c0ee0f60 | ||
|
9b660289c6 | ||
|
2f788a0264 | ||
|
09236d66df | ||
|
82997f0e3b | ||
|
e1f8933518 | ||
|
3152f3df52 | ||
|
20c0e9f71f | ||
|
37f0182a2b | ||
|
df088c988e | ||
|
8890301a84 | ||
|
fd26e762c0 | ||
|
09bc8f6843 | ||
|
a99ab25ade | ||
|
7a5517640f | ||
|
4988f293f8 | ||
|
69571f3303 | ||
|
04488bf33d | ||
|
18ce9d2c37 | ||
|
e798892743 | ||
|
9f53283069 | ||
|
3f34a77f7b | ||
|
dac59d58ed | ||
|
96d090509e | ||
|
7a8fa2cc0e | ||
|
60751dbf95 | ||
|
acfef1de4a | ||
|
8de656fc77 | ||
|
fb9fc24487 | ||
|
52d2b0fff1 | ||
|
6045d865f8 | ||
|
d144147237 | ||
|
c3265cc215 | ||
|
9b036de80b | ||
|
6e19246ef7 | ||
|
f239be2af0 | ||
|
c130169bb8 | ||
|
3f5b95bb92 | ||
|
20b08209f8 | ||
|
718178aa88 | ||
|
903c7855c9 | ||
|
bbee494c2a | ||
|
140dd73755 | ||
|
8d1170ce2b | ||
|
4f1f6bb03e | ||
|
a7d6502350 | ||
|
fb184b034d | ||
|
9260320d5c | ||
|
59ae921bd1 | ||
|
cdafd8b213 | ||
|
02b8adbe36 | ||
|
f91f6781d9 | ||
|
3e73825c04 | ||
|
53c317d86d | ||
|
bcd5f02d0f | ||
|
61e603ee5a | ||
|
755627e213 | ||
|
d52d8cb667 | ||
|
6ab32d28bf | ||
|
e1aaa10312 | ||
|
81c8fd62b3 | ||
|
15f8d4f061 | ||
|
6b4d06cee9 | ||
|
70740f2a14 | ||
|
e1cb837969 | ||
|
44616bacfb | ||
|
70cd488931 | ||
|
eb88e1e349 | ||
|
63eb4b623a | ||
|
440e3c69e4 | ||
|
e98a0d8a85 | ||
|
21b16a63ed | ||
|
a59bc8597f | ||
|
95d15ef760 | ||
|
d5ae9f5408 | ||
|
daff560348 | ||
|
8679f001d9 | ||
|
1611dc4086 | ||
|
0f80ead8ec | ||
|
cead3c26ac | ||
|
b03f8990c0 | ||
|
375355b9a6 | ||
|
b39d02678f | ||
|
fce964935e | ||
|
07a0591894 | ||
|
7d14e79c4c | ||
|
e5da5bc0d6 | ||
|
8538be9a1f | ||
|
0c26c6fe3f | ||
|
cc95312078 | ||
|
50313aa5c8 | ||
|
3be9010b96 | ||
|
d060749ca4 | ||
|
c1d754ee9f | ||
|
c6fc31e430 | ||
|
47a6faa9cd | ||
|
f51faa4a0f | ||
|
3ef498a4de | ||
|
7b67bd00c4 | ||
|
c588ecb84f | ||
|
038c2e6ca0 | ||
|
379c7825ec | ||
|
296d09b486 | ||
|
29177f71b6 | ||
|
9a54d4a3a0 | ||
|
47ef0a440a | ||
|
23da2b0594 | ||
|
9e82e9f1d6 | ||
|
c4393987a1 | ||
|
8f2963ab01 | ||
|
2fa8800e5e | ||
|
440290e1cb | ||
|
846f8450db | ||
|
9386daa570 | ||
|
f61c6e1fbd | ||
|
7bb4b752e1 | ||
|
a6849e9613 | ||
|
683eaf0e00 | ||
|
5d1661ec2d | ||
|
40f5fb3a68 | ||
|
e89be79709 | ||
|
d2dcb75417 | ||
|
31391c60b1 | ||
|
acc9f33775 | ||
|
3972478a69 | ||
|
7e486e2119 | ||
|
a89c82316c | ||
|
fb1a1ab85e | ||
|
1c9d856e91 | ||
|
a6a53b4231 | ||
|
44162f7bd9 | ||
|
c43028c6ab | ||
|
b2b645b014 | ||
|
a09e47fe40 | ||
|
92ccd9c174 | ||
|
0629afcaa5 | ||
|
b2ba90c6b5 | ||
|
4214877a10 | ||
|
049b4bff68 | ||
|
a467407d5f | ||
|
4ba7bf7dbe | ||
|
9187043762 | ||
|
27fe85a2cb | ||
|
8e52193434 | ||
|
a569e0aa3a | ||
|
fe8ca04a83 | ||
|
44ac5bf123 | ||
|
f732630141 | ||
|
0e96026122 | ||
|
7ee1b6a5f5 | ||
|
d452b9b684 | ||
|
bc7078eaf3 | ||
|
c04750f246 | ||
|
d7e4f26d1a | ||
|
bb1fb70eb3 | ||
|
ea547f81f4 | ||
|
d855861c41 | ||
|
b0da8bcfdf | ||
|
88a76ad2f0 | ||
|
945dd20eae | ||
|
7fe1fd0766 | ||
|
275c4e77d8 | ||
|
562561d422 | ||
|
9c22d4b0b8 | ||
|
817f78086f | ||
|
4f86a02439 | ||
|
153601c7a2 | ||
|
019092990f | ||
|
c1c815b13d | ||
|
a51b9dd514 | ||
|
c52bb16926 | ||
|
f64b823282 | ||
|
bbe72b0163 | ||
|
a9757a1ab0 | ||
|
8a30da51a0 | ||
|
10e08033ca | ||
|
48d95feba1 | ||
|
2e3ea31302 | ||
|
87d9dfae0d | ||
|
b00727337e | ||
|
5f36105c74 | ||
|
94f9c1a7c1 | ||
|
48014fdd4b | ||
|
4466aba674 | ||
|
7a5211283a | ||
|
fb1948e7d4 | ||
|
a652c58c19 | ||
|
68bca6631d | ||
|
6ab86eb6cc | ||
|
2e25bf12d0 | ||
|
4baf3f8e4f | ||
|
e53736f6e0 | ||
|
17c95d5279 | ||
|
7fd7537957 | ||
|
313744b524 | ||
|
a1a782be93 | ||
|
2796bd5d20 | ||
|
1338881e3b | ||
|
be8b65c8a9 | ||
|
988b6396aa | ||
|
4ed5e28c51 | ||
|
dddd4b38f6 | ||
|
a31e72a3f9 | ||
|
973f7314b1 | ||
|
819142c996 | ||
|
f5c285da13 | ||
|
450b66d358 | ||
|
44f1cf17c7 | ||
|
8eede74d89 | ||
|
688f2cec04 | ||
|
e4bc2f39da | ||
|
4021832267 | ||
|
6ac34f176c | ||
|
98917d7d98 | ||
|
ba88179c67 | ||
|
fe15b28371 | ||
|
4875f5476e | ||
|
5e9d1bc628 | ||
|
d4534e81e1 | ||
|
920b985227 | ||
|
b6e4109ff1 | ||
|
698c2abb16 | ||
|
4185903012 | ||
|
29d82352a3 | ||
|
c7afd6f90c | ||
|
b4e46f9021 | ||
|
e4832e1f99 | ||
|
3305b84402 | ||
|
676adf3c06 | ||
|
a366e71f50 | ||
|
643b7c9da9 | ||
|
3acad0e9e5 | ||
|
af645ee7a2 | ||
|
423102807d | ||
|
5b6e082869 | ||
|
f06734e55d | ||
|
16e06b89aa | ||
|
a465b60e7f | ||
|
0c9cd421ee | ||
|
4bb2162111 | ||
|
8b566eee47 | ||
|
bd209c59d1 | ||
|
ac91514ccd | ||
|
a3842a814c | ||
|
9e97728d4f | ||
|
c24fbddd42 | ||
|
e8476bec2a | ||
|
a0360cc9e8 | ||
|
5c8991ddbd | ||
|
8600730e9c | ||
|
0db63068ac | ||
|
ba1fcb6554 | ||
|
55bf6ea8ff | ||
|
32b595761c | ||
|
837c766030 | ||
|
2b8120a968 | ||
|
0b299f6798 | ||
|
cf595e72fa | ||
|
8550143bab | ||
|
d4b437e4ee | ||
|
3ac350cfe0 | ||
|
80aa7fd7f9 | ||
|
26344e7671 | ||
|
3dfda10ed9 | ||
|
9ef60ad5b0 | ||
|
96e7761203 | ||
|
ef84fa90a8 | ||
|
a6f1faa394 | ||
|
16989d664d | ||
|
5d5f53ae61 | ||
|
720092b8e7 | ||
|
00c641a9ec | ||
|
3849c29490 | ||
|
21c885f66d | ||
|
afa3aa776e | ||
|
d1760301d4 | ||
|
982c3c6f8d | ||
|
8faff50ad8 | ||
|
f13d997b76 | ||
|
2dfccd0635 | ||
|
ec320d1e33 | ||
|
74f6803499 | ||
|
bc1e2dbb92 | ||
|
259a8515b0 | ||
|
c1934a3a17 | ||
|
8928ef6200 | ||
|
02ae08f9cb | ||
|
11cbbbb746 | ||
|
895f97e0a2 | ||
|
a5cc32eb36 | ||
|
335b3f2e4e | ||
|
e6825b17d8 | ||
|
1d1755e8f5 | ||
|
4c8ca6f0a4 | ||
|
8403189f6c | ||
|
b89db46b1f | ||
|
2ec8bd97ab | ||
|
dd512f56a9 | ||
|
3e2f6b9d2c | ||
|
a8f63ddb13 | ||
|
cb488db9b7 | ||
|
4bc905e4fd | ||
|
3b40688aba | ||
|
35fecb20bc | ||
|
f23a970e84 | ||
|
3dfa093f63 | ||
|
adae348b32 | ||
|
a526c712b5 | ||
|
30d5e8f413 | ||
|
f10b1d9976 | ||
|
f62dd8e937 | ||
|
3d271a9794 | ||
|
996f952333 | ||
|
a1290edbe7 | ||
|
4535174660 | ||
|
06850c5772 | ||
|
b9b174c0fa | ||
|
27142f2af0 | ||
|
b206e0eb2a | ||
|
01a6b1023f | ||
|
f25d0ce422 | ||
|
053db1af86 | ||
|
4f80d030e6 | ||
|
46f402da90 | ||
|
79aeba8939 | ||
|
403ef47169 | ||
|
701f62c3ac | ||
|
1bb6977402 | ||
|
43e13595cf | ||
|
e9846d6f9c | ||
|
83e0dd0595 | ||
|
384affe098 | ||
|
e395d953b3 | ||
|
b5171111fb | ||
|
9b4e4d42ed | ||
|
6eec01d1f5 | ||
|
8fde80eacd | ||
|
b6f13160b2 | ||
|
34a71f27fc | ||
|
d1ad859a6e | ||
|
20689dba23 | ||
|
f83d61cce0 | ||
|
ceaed9f1ec | ||
|
4414132a97 | ||
|
1f03a83d50 | ||
|
6e74416198 | ||
|
e570b43842 | ||
|
20756892b7 | ||
|
7edfd6a3a9 | ||
|
a8b7dd40e2 | ||
|
e21e3e4e03 | ||
|
1836858f0a | ||
|
ec2dddf4cb | ||
|
599c80f8f2 | ||
|
e9940a928b | ||
|
fd91fe3337 | ||
|
5db681f766 | ||
|
ef27450876 | ||
|
a909a0807a | ||
|
85f31b899e | ||
|
424bbf064b | ||
|
eff26a3a92 | ||
|
497a20b8a0 | ||
|
77ec221feb | ||
|
ae3886b65f | ||
|
202ae322fb | ||
|
fc00a030f4 | ||
|
3d8292ede6 | ||
|
aac777cc7f | ||
|
417e293fac | ||
|
35fae98753 | ||
|
de6836080a | ||
|
ad372d31e3 | ||
|
f7928467e7 | ||
|
97a27e2c87 | ||
|
602f37c6ae | ||
|
670ebb242c | ||
|
4677d6bfe0 | ||
|
25db42d246 | ||
|
ef88fe7a1a | ||
|
73e2aff9c5 | ||
|
880f06c728 | ||
|
4923220ed0 | ||
|
7a5cfecf02 | ||
|
8c0a8b2873 | ||
|
daf94f98b0 | ||
|
60f3172c4f | ||
|
dd0e23b691 | ||
|
1313fd5c76 | ||
|
43527efc13 | ||
|
f24e5deac9 | ||
|
789449896d | ||
|
77d8a7f5ee | ||
|
bb2c79c089 | ||
|
5830fef205 | ||
|
49455e979d | ||
|
21862af108 | ||
|
d8187f248b | ||
|
e70a305963 | ||
|
c2e52c6046 | ||
|
28877f472f | ||
|
b026b17386 | ||
|
cc01ed0b73 | ||
|
54083aff00 | ||
|
40b6e1c065 | ||
|
fa68145452 | ||
|
f3a4314827 | ||
|
12e208e27a | ||
|
82c97261bf | ||
|
1cfc77902c | ||
|
b0864955dd | ||
|
cb609f0b17 | ||
|
c860e2b80d | ||
|
c447bed85d | ||
|
c873907550 | ||
|
3f79f9922f | ||
|
21cb633c9e | ||
|
6de65ddcea | ||
|
5657d83d0e | ||
|
645f25c4dd | ||
|
2769768c33 | ||
|
569891558f | ||
|
8b3bb3c44c | ||
|
05ad12aa18 | ||
|
8e001f542a | ||
|
246f24bd7f | ||
|
9bb6d0de5b | ||
|
8bf97b3a3d | ||
|
71817abc60 | ||
|
389bdb30ca | ||
|
8c82e4261d | ||
|
21b119daec | ||
|
cb78e64537 | ||
|
c022c746c8 | ||
|
0431372bc4 | ||
|
8acb3b7995 | ||
|
84ae261e52 | ||
|
a737c007e8 | ||
|
6790e320bd | ||
|
6ca2243552 | ||
|
46a9b5557e | ||
|
59cc29bd8e | ||
|
026c7235f9 | ||
|
35eb4001b2 | ||
|
d1fa8b8908 | ||
|
7d242dfe4c | ||
|
a1b2032688 | ||
|
4e56b66072 | ||
|
ebbf3e1aa6 | ||
|
ba121aaf83 | ||
|
bc6b7e2b35 | ||
|
97053d19c0 | ||
|
bbc430fc8c | ||
|
00e7f308a4 | ||
|
0588697d7a | ||
|
afd47c09cf | ||
|
3fb8c7bc13 | ||
|
925499d1b6 | ||
|
3419e8ae60 | ||
|
e826abc369 | ||
|
17ecb5786e | ||
|
ee47b6c3f0 | ||
|
048ad653f4 | ||
|
6900e149e5 | ||
|
4545bf4999 | ||
|
702511c91e | ||
|
fbfd0e502f | ||
|
29d8855a84 | ||
|
f80095f154 | ||
|
ff51b80ac6 | ||
|
a2c9b85f80 | ||
|
db2abeca16 | ||
|
0309c0644e | ||
|
77e85485aa | ||
|
837f2ae4cb | ||
|
15a480bb44 | ||
|
667ce623d5 | ||
|
755636e921 | ||
|
bf3b8cd273 | ||
|
0258ba9082 | ||
|
1b2b13846d | ||
|
c788005b8c | ||
|
5e8714cdca | ||
|
4daf6ffcbc | ||
|
2a507824c6 | ||
|
cf6d69d369 | ||
|
b1b089e5fe | ||
|
55bba159b9 | ||
|
9cac6ddd71 | ||
|
34de8c3bdb | ||
|
463dc9b8bd | ||
|
b295df005d | ||
|
73dff0f128 | ||
|
7fc8752aed | ||
|
f1421e61ad | ||
|
f754176cb8 | ||
|
878152ec5b | ||
|
9ca6144945 | ||
|
0c6d37d9fa | ||
|
10236225d3 | ||
|
73696326a3 | ||
|
81d33af127 | ||
|
e52d910948 | ||
|
3092ec5137 | ||
|
fec280223d | ||
|
8ec42ffc99 | ||
|
587b5a7dcc | ||
|
2a258f8902 | ||
|
3bce3e3e48 | ||
|
a9265410de | ||
|
b8b7eedce2 | ||
|
0cd03197e2 | ||
|
7b87ca6c5e | ||
|
fafcbebc79 | ||
|
8f792acdab | ||
|
1b82948d08 | ||
|
4603f5333e | ||
|
340d80290d | ||
|
e06db72a02 | ||
|
e0d0a0da5e | ||
|
ed8ab11d0f | ||
|
cf1f4ee72a | ||
|
3230cffd7b | ||
|
f3b4ed1f59 | ||
|
0457d0515e | ||
|
249a485fb2 | ||
|
3ac876a570 | ||
|
ad61fd2df2 | ||
|
2d7b980fca | ||
|
f7de731248 | ||
|
651bfe32bc | ||
|
fea16f685a | ||
|
bf9276fb38 | ||
|
5dc0efe009 | ||
|
9a66f98d08 | ||
|
cc68e066fd | ||
|
9883b9f952 | ||
|
1d323c7f36 | ||
|
557197382e | ||
|
8b55390e8d | ||
|
4fba105205 | ||
|
e210d0be7d | ||
|
29e234b3a2 | ||
|
0c9274d5bf | ||
|
a9d1e30a2a | ||
|
e49ac92a99 | ||
|
6261af5945 | ||
|
fd3b70fc42 | ||
|
5d11d1699c | ||
|
7c59b923ac | ||
|
648f8eb5ff | ||
|
e17745ee73 | ||
|
c3297be6ce | ||
|
8d823dd58d | ||
|
c04d8c58e7 | ||
|
0ad21ab1b8 | ||
|
447c0daf7d | ||
|
14e5cfe8eb | ||
|
aaa7adc518 | ||
|
8dbe68b77a | ||
|
1882e8f1b8 | ||
|
5c9adf775d | ||
|
856b02d967 | ||
|
47e72b3d01 | ||
|
7797dd6fcc | ||
|
6231da678b | ||
|
494233b2a4 | ||
|
f57506f679 | ||
|
62a543313a | ||
|
832d0fddb9 | ||
|
59a44b785e | ||
|
7a81d8995f | ||
|
f71facb90a | ||
|
c6b55bf950 | ||
|
9c8343f170 | ||
|
7eee4d8436 | ||
|
7fee8ebabe | ||
|
89e9101a9b | ||
|
82ed3d127f | ||
|
ed384844a1 | ||
|
00ce056206 | ||
|
87b1008e63 | ||
|
59aefe6216 | ||
|
2ae045e8a1 | ||
|
301c476074 | ||
|
395c541573 | ||
|
971c0bc040 | ||
|
ec2450447a | ||
|
7e6dc5a06d | ||
|
0feb059c77 | ||
|
0b0e9bd364 | ||
|
c6af963e8d | ||
|
29bf877001 | ||
|
baa9ecf7e8 | ||
|
4f6e241a71 | ||
|
6073c0f854 | ||
|
5f624ba435 | ||
|
b1b42795a9 | ||
|
5ea4ffbcaf | ||
|
94a9d5ba0b | ||
|
4358ac07a7 | ||
|
5383e90959 | ||
|
48c9363c36 | ||
|
5855a53b74 | ||
|
761c932726 | ||
|
eb86e8afd5 | ||
|
93bbc9d548 | ||
|
f7b5561d60 | ||
|
f606ee89dd | ||
|
c5dde308bf | ||
|
80db48ee6f | ||
|
e0eab0e64c | ||
|
8e993c1a64 | ||
|
bb24e3a5e4 | ||
|
8a80051169 | ||
|
b400ac7ae6 | ||
|
a142fcc929 | ||
|
e007edf028 | ||
|
54297235d4 | ||
|
8e07a66b68 | ||
|
48277d058b | ||
|
c4b8caf365 | ||
|
a1488a0f38 | ||
|
9b06dff0d9 | ||
|
36c77a1616 | ||
|
3606086387 | ||
|
687ee5ded5 | ||
|
814dd8031a | ||
|
9d0f4183f7 | ||
|
85353f2fba | ||
|
41772c8273 | ||
|
74568a6e4d | ||
|
6993f86ef3 | ||
|
12b5c1dd77 | ||
|
9ce65ea71e | ||
|
07ecda8b60 | ||
|
2d709a011a | ||
|
4630534773 | ||
|
00d5ff1307 | ||
|
f2ad28ea2d | ||
|
8832faa915 | ||
|
f59a44447a | ||
|
504b19f120 | ||
|
cd690901ea | ||
|
f3a00c2f57 | ||
|
c27717bac7 | ||
|
2e5058f3bf | ||
|
71c5ed5c2f | ||
|
254b1fbb03 | ||
|
a8d5478895 | ||
|
cc3b08af40 | ||
|
abc2d4d228 | ||
|
0989caed38 | ||
|
6e64a5904a | ||
|
80c4567edf | ||
|
ba1534d005 | ||
|
0adcb4d02a | ||
|
985555c58f | ||
|
6c5070eb34 | ||
|
fd343d21dd | ||
|
3df8b3ccc8 | ||
|
5641391fa5 | ||
|
2c49ea705c | ||
|
95cf9fc991 | ||
|
3625064e10 | ||
|
16b4b0a874 | ||
|
ab14ba211c | ||
|
bf594249dd | ||
|
81b072cc64 | ||
|
4c03c1a55a | ||
|
54688094ac | ||
|
3676af8656 | ||
|
a2bf0e2023 | ||
|
f752d4ffda | ||
|
99e8525cb3 | ||
|
ba1cd55e86 | ||
|
0386475fc9 | ||
|
019a8d2be6 | ||
|
800e1d3803 | ||
|
ee917ebd77 | ||
|
c1bfc56213 | ||
|
bf0e8e0bcb | ||
|
b3ba96d405 | ||
|
ae5c6647eb | ||
|
23cfe6bc43 | ||
|
948cba0848 | ||
|
ad0bb95ddd | ||
|
5a98df6476 | ||
|
fc32eb9533 | ||
|
2cb19e0bc8 | ||
|
4617ea0c82 | ||
|
021ab6e000 | ||
|
2eb3e5db44 | ||
|
04d0e17fdf | ||
|
240072132d | ||
|
ebc3d8bfbc | ||
|
b5fd932bef | ||
|
0448b0da4e | ||
|
fcd6f24ca0 | ||
|
91d6a8f428 | ||
|
41733bc328 | ||
|
0366c75f60 | ||
|
b6a16efc88 | ||
|
3238412b08 | ||
|
d25e21c753 | ||
|
156cf60be5 | ||
|
29446ab9a9 | ||
|
4e159110ff | ||
|
0fa558e2b5 | ||
|
9955015ce3 | ||
|
c3fed1277e | ||
|
9aa31f7cb4 | ||
|
f671800441 | ||
|
d2f5096281 | ||
|
eeb2923366 | ||
|
69dba98f6b | ||
|
ca2eacaa6a | ||
|
a44126539b | ||
|
6a3bffaeba | ||
|
c7991b4c1d | ||
|
bee3e24b5e | ||
|
74dcd7dc34 | ||
|
d054fcda2b | ||
|
f7120fd6aa | ||
|
58e33a8638 | ||
|
005df62c31 | ||
|
4d205b64e0 | ||
|
8897aab532 | ||
|
68995425ec | ||
|
2aff90f702 | ||
|
f730ef2eb5 | ||
|
0ddc7f0226 | ||
|
bb881d4570 | ||
|
70855a91fa | ||
|
c718e06314 | ||
|
a15a07cd73 | ||
|
8c03c7ba9b | ||
|
a8d18eaa06 | ||
|
83b4b492a6 | ||
|
1d4a6469bb | ||
|
8230cf186e | ||
|
7b6b59705a | ||
|
12d266bcf7 | ||
|
7445284933 | ||
|
358d46f7c9 | ||
|
808452e8b7 | ||
|
f04ae39730 | ||
|
4b61850cfd | ||
|
4d858698cd | ||
|
ee4765946d | ||
|
77b88b38af | ||
|
b097d7ad0e | ||
|
22f7d5504b | ||
|
06be6aac8a | ||
|
d8d0d107a4 | ||
|
c8c9ff4987 | ||
|
830abcecb9 | ||
|
2b5269e1b5 | ||
|
296f1e6c50 | ||
|
14d7d9764c | ||
|
41875f2f17 | ||
|
63dec8bdb5 | ||
|
eb94e9a2a5 | ||
|
90a505efb3 | ||
|
7643fdc6bb | ||
|
508223165a | ||
|
13d03d3364 | ||
|
3f8b42f823 | ||
|
bb98fff5c2 | ||
|
1f5449e7c5 | ||
|
3dcc353592 | ||
|
4634a076c4 | ||
|
2721d9f046 | ||
|
1e842f0e63 | ||
|
69dc549fdb | ||
|
576756c8f8 | ||
|
04fa10095f | ||
|
f03e637c36 | ||
|
ffa916c3c7 | ||
|
fe9810f5a4 | ||
|
caa685ac17 | ||
|
f059b95530 | ||
|
1f3623d2ae | ||
|
b2b175013f | ||
|
ab65241c66 | ||
|
9b5b4a4c28 | ||
|
37073ed5e2 | ||
|
95668db524 | ||
|
42057b458d | ||
|
520918a849 | ||
|
1ed7ebc368 | ||
|
3e49feb4e7 | ||
|
298e2fb71c | ||
|
84b6e377ec | ||
|
68b4b8905e | ||
|
12a5c1fb9a | ||
|
425f097968 | ||
|
ece00ea85f | ||
|
75a22bb16a | ||
|
5799101b4c | ||
|
3830a078fb | ||
|
c6bb3308f1 | ||
|
f005129274 | ||
|
e7f1aefdb9 | ||
|
32d3e05769 | ||
|
7483cbb904 | ||
|
0368cd40fa | ||
|
c9953bd506 | ||
|
b71b5767ea | ||
|
f2ad06776a | ||
|
4227981b8b | ||
|
3774050bf3 | ||
|
d48a928307 | ||
|
e53f1ac932 | ||
|
16a3b0d967 | ||
|
6579ca96ea | ||
|
6868358a85 | ||
|
d5f4f99b0e | ||
|
8b594efa21 | ||
|
a7d4b8d04f | ||
|
777a9ec12a | ||
|
f3aa1616ef | ||
|
2a81b18aee | ||
|
1f67849a7e | ||
|
f981e06368 | ||
|
7148ac52fc | ||
|
83ae839957 | ||
|
f36d39ae3a | ||
|
08315aa914 | ||
|
81652fd827 | ||
|
482d43b875 | ||
|
2c28e0e6fa | ||
|
2f277c0810 | ||
|
5104d39515 | ||
|
99a6d1dd88 | ||
|
ae875ccc88 | ||
|
f368db7eeb | ||
|
1d7676d1e0 | ||
|
4f72307675 | ||
|
53fdca886e | ||
|
9b3b1801ed | ||
|
c87e532dcb | ||
|
9accb03ac7 | ||
|
4bc269e94e | ||
|
2ed266de0c | ||
|
5c77ae15e6 | ||
|
0f1de17bcc | ||
|
79111c35e6 | ||
|
9f59e28a23 | ||
|
5ccb049790 | ||
|
08a509daee | ||
|
f4c6543a49 | ||
|
9abeb0d9b0 | ||
|
7b0de0e982 | ||
|
837d7e9292 | ||
|
ea43e3d3dc | ||
|
2475975c7d | ||
|
e2e12caf2a | ||
|
5da9304c6d | ||
|
dba6b1c35c | ||
|
6cea30d6fe | ||
|
d920d6c30a | ||
|
ca4c2640e7 | ||
|
ef483f95f7 | ||
|
b96144bbbd | ||
|
5b17f6949b | ||
|
bb85fef52f | ||
|
dd588d8bb2 | ||
|
f78f7b3f31 | ||
|
3499311e18 | ||
|
3df13bc41a | ||
|
27c1e20f13 | ||
|
7fb841c839 | ||
|
e78b6c5179 | ||
|
23733b7867 | ||
|
f772b72e3e | ||
|
e4bf71987b | ||
|
8b8c1c7e5a | ||
|
c60757b725 | ||
|
64c9bc0eba | ||
|
c7a2132d63 | ||
|
3a8d6379b1 | ||
|
0ba77df60d | ||
|
cf3310e4e9 | ||
|
8e371f8e7f | ||
|
099a790594 | ||
|
590c4dcc8c | ||
|
1dc27a26be | ||
|
9c5c0b479a | ||
|
9a213745ca | ||
|
e4b71d31f9 | ||
|
8056edf828 | ||
|
29631b02e2 | ||
|
5d76039958 | ||
|
67e4aa500e | ||
|
1f58ae3a5d | ||
|
41f23cace3 | ||
|
36bd380f3a | ||
|
92922765ac | ||
|
2667ff688f | ||
|
b742e89b01 | ||
|
e2c97e602f | ||
|
17a622f506 | ||
|
eb5ff5ce18 | ||
|
34d6ad7853 | ||
|
7db2f3af0f | ||
|
61d91cd9e8 | ||
|
238c9ac8e2 | ||
|
ea55caa53a | ||
|
990af47b16 | ||
|
57ec8a7319 | ||
|
c607de714c | ||
|
ebf8247723 | ||
|
d92f2f5ea1 | ||
|
bb9f71835f | ||
|
e83d1d9365 | ||
|
126cfbc810 | ||
|
18d52d4336 | ||
|
c2c30fe940 | ||
|
c80fda1b0a | ||
|
8c77497afc | ||
|
afde7ef918 | ||
|
6f4d361e2f | ||
|
78544a017e | ||
|
25f693843f | ||
|
ffcce8faae | ||
|
8e63468492 | ||
|
aae34d2409 | ||
|
a5ad497158 | ||
|
126bbfdb97 | ||
|
6f9bc0e872 | ||
|
25d242883a | ||
|
5b66f1e47b | ||
|
935904f4a0 | ||
|
a03264afb2 | ||
|
6ec8989b85 | ||
|
d81bed0847 | ||
|
532649d4b1 | ||
|
0d480e9966 | ||
|
90905aac47 | ||
|
390a07e59a | ||
|
f3fbc9263c | ||
|
3024860a8b | ||
|
f349496e1d | ||
|
6660eb455a | ||
|
d4ede62fde | ||
|
ac044acb7d | ||
|
a5ab07e889 | ||
|
ebc1f941e0 | ||
|
dd6803f824 | ||
|
e43a13448e | ||
|
4e9706e794 | ||
|
9e0186b983 | ||
|
9c1e8ef08d | ||
|
876ddcbeed | ||
|
da88b8a4af | ||
|
42f43a36a5 | ||
|
ba8f65ba67 | ||
|
9ff4f04538 | ||
|
3f81e26f34 | ||
|
ca7ae9bbef | ||
|
ab5f5755fc | ||
|
47ee20b4ab | ||
|
21dd348b8e | ||
|
f605f83671 | ||
|
b926d3c9a4 | ||
|
9607bedb48 | ||
|
49216293a4 | ||
|
3c9397513f | ||
|
6e9b30c86a | ||
|
58f2a22a11 | ||
|
036af3b730 | ||
|
6050891f74 | ||
|
e324a62898 | ||
|
3f2554487e | ||
|
4578326e06 | ||
|
6e89272bef | ||
|
1566f90e46 | ||
|
61c4b92f67 | ||
|
d934f98c23 | ||
|
8cee5635e7 | ||
|
5267b02c28 | ||
|
9869fa33f8 | ||
|
826536350c | ||
|
0b7e31082f | ||
|
772d8095c2 | ||
|
e96ee73cba | ||
|
27f761d0a3 | ||
|
88dcf31856 | ||
|
0348b64178 | ||
|
968d02e55c | ||
|
481f7c440a | ||
|
bcb2480c3c | ||
|
16fa7d18c5 | ||
|
b5f0b7d584 | ||
|
12a284e9eb | ||
|
0cf270e3ca | ||
|
6eb6728488 | ||
|
b4bf1a0c92 | ||
|
95415c2f28 | ||
|
8987f5fa46 | ||
|
73bb103c3c | ||
|
66a30f987b | ||
|
1b634b38ec | ||
|
2ee2be0a07 | ||
|
5e63cb55f0 | ||
|
029cc4a9a1 | ||
|
af6491bc87 | ||
|
25382c0600 | ||
|
3f11bbbaf1 | ||
|
4b762458f9 | ||
|
82fdf83109 | ||
|
b6295d12e2 | ||
|
41c7ba2971 | ||
|
719936a2f1 | ||
|
dc0fc72451 | ||
|
d48996392c | ||
|
7800da4db6 | ||
|
e3dca9d237 | ||
|
3cd888817c | ||
|
996dfea0be | ||
|
0e90ca425c | ||
|
28dad177a0 | ||
|
6ee138b21a | ||
|
836e49cf3b | ||
|
81ddcd09c3 | ||
|
bdabc81718 | ||
|
9ae2e91963 | ||
|
4e8b6ffda0 | ||
|
9feb079172 | ||
|
39b324e543 | ||
|
e85e97caeb | ||
|
e2e4314c68 | ||
|
b001a719b7 | ||
|
b1de4fb737 | ||
|
cfe19bdf5f | ||
|
243d613886 | ||
|
1cd6fc67b1 | ||
|
9594cc6ea9 | ||
|
747a21c72e | ||
|
49f2678311 | ||
|
1014d132dc | ||
|
f2ca31bf0f | ||
|
1ec199bac3 | ||
|
cf28e96ee8 | ||
|
b12e316394 | ||
|
5fd3611831 | ||
|
9d21751b1b | ||
|
926c3cfb05 | ||
|
ccf03e4ba8 | ||
|
9ffcd6f25a | ||
|
229958ea1d | ||
|
103ff5a0b0 | ||
|
7eb46b4d50 | ||
|
ea461699aa | ||
|
ed174701c8 | ||
|
5eebde25c0 | ||
|
ceeeea30e1 | ||
|
d41a3f0e64 | ||
|
2a53c5f4b0 | ||
|
c8ec5e1a66 | ||
|
dacd843616 | ||
|
96fc9a41f8 | ||
|
0ad9e5d154 | ||
|
c8a8975faf | ||
|
ff5f825f59 | ||
|
841f48d8f2 | ||
|
a5fd03e6e1 | ||
|
9a649094dc | ||
|
17990b28a2 | ||
|
dde1f97a02 | ||
|
8c8c4f495c | ||
|
36f927df20 | ||
|
334e885321 | ||
|
87b6094ea0 | ||
|
fd61c08de6 | ||
|
ca27ff05fc | ||
|
2c8cb9c285 | ||
|
7d54bdf9cc | ||
|
081ba36892 | ||
|
9bbe22afa8 | ||
|
92d1110c00 | ||
|
8d91d51710 | ||
|
3dc773f430 | ||
|
3938ea389a | ||
|
40768427f8 | ||
|
bf571b10a0 | ||
|
9ec5efa4f7 | ||
|
29bebdf5b3 | ||
|
b2c245865a | ||
|
07392e555e | ||
|
2e07736507 | ||
|
b40958162a | ||
|
9e499d4fb4 | ||
|
44f312e477 | ||
|
b63e5725ae | ||
|
b9b510dbc1 | ||
|
a7253195cd | ||
|
7b725d5d8f | ||
|
47df3c243f | ||
|
1f1f5a4c49 | ||
|
a770bf5f98 | ||
|
99b6de6618 | ||
|
a3aa3fb107 | ||
|
ef268d1301 | ||
|
766a0d27df | ||
|
ef0d1d640c | ||
|
8896e6a8c4 | ||
|
0aeb3f07b1 | ||
|
749f780aef | ||
|
74365d512d | ||
|
57ba1bd2d4 | ||
|
c799fd3e4f | ||
|
1dc1c3f7ef | ||
|
c31e1f67a6 | ||
|
9dda28415f | ||
|
a05881c135 | ||
|
855bcceefc | ||
|
e525ccdb5f | ||
|
a471a57006 | ||
|
5db91c84a0 | ||
|
5ccf3c01a4 | ||
|
a6b1351921 | ||
|
8a75088c41 | ||
|
efce805bfc | ||
|
404456b319 | ||
|
709dfc61a2 | ||
|
e4ffdbb8a7 | ||
|
8fc83b30af | ||
|
f2d49d7a05 | ||
|
1442edd291 | ||
|
90999f0373 | ||
|
523a1a5589 | ||
|
50a627eb56 | ||
|
eb31df80a7 | ||
|
48f148bba8 | ||
|
736b7b86f6 | ||
|
cd7c1882ed | ||
|
bfd112dafa | ||
|
a11a51af76 | ||
|
7f0502d36e | ||
|
e1a81c6804 | ||
|
4536560a1d | ||
|
12796f8786 | ||
|
192c5b7ac3 | ||
|
a20fc53659 | ||
|
d5122b7e7b | ||
|
0a08074364 | ||
|
da200b3a2c | ||
|
6d7fcc4bab | ||
|
633f34d7c4 | ||
|
ee9c290085 | ||
|
aea802c64c | ||
|
58c3357ad1 | ||
|
c785b8f077 | ||
|
6fc550ad47 | ||
|
1a345aab0c | ||
|
a000763117 | ||
|
22726a1e1c | ||
|
4485b549ba | ||
|
04c65f7051 | ||
|
e8127690bb | ||
|
c24dcb3ff2 | ||
|
e8801e23b6 | ||
|
657d78a387 | ||
|
1a74d78001 | ||
|
21f976c9ff | ||
|
568b75b342 | ||
|
5ebe380166 | ||
|
7a29e16fbd | ||
|
d3e43b0f5f | ||
|
6d0f733ac7 | ||
|
9624a5e18b | ||
|
7475839d64 | ||
|
c2c4d46671 | ||
|
2bebddf5ee | ||
|
ca45c6e795 | ||
|
096143cb2f | ||
|
ade0d2cda5 | ||
|
d915c39751 | ||
|
83f928948d | ||
|
3049f1a5b4 | ||
|
3175ed2860 | ||
|
47b3314130 | ||
|
754b0a7362 | ||
|
7cec4c47db | ||
|
2c10751e87 | ||
|
e01de74720 | ||
|
2549b1ebe7 | ||
|
3f0da1835a | ||
|
68bcda65e2 | ||
|
3fb8dc2d64 | ||
|
0ce031f74d | ||
|
a35a785b11 | ||
|
1de5731e1e | ||
|
2a8a023851 | ||
|
c7dd36d8e1 | ||
|
7f0fc1252d | ||
|
35f9007fc4 | ||
|
a01ab28f62 | ||
|
21a0d64aa3 | ||
|
11e9d57a30 | ||
|
bb5564609a | ||
|
527c11cf4d | ||
|
7761bf28ba | ||
|
bd37cb261c | ||
|
974a6b6921 | ||
|
8f83c019d3 | ||
|
30ff1f1032 | ||
|
1140838644 | ||
|
833738127d | ||
|
ed41960b74 | ||
|
0d96052ca1 | ||
|
f1167250a0 | ||
|
71d5b09683 | ||
|
f3f43843fe | ||
|
b7add401e9 | ||
|
3da415c457 | ||
|
fa047badd1 | ||
|
668ef9aa19 | ||
|
a54d1167e4 | ||
|
17b4930a9d | ||
|
ea3f263fca | ||
|
399406609d | ||
|
f62aa585d6 | ||
|
3180d93edf | ||
|
80d548b608 | ||
|
c88489858d | ||
|
d41da9f33b | ||
|
0afae481fa | ||
|
332071647d | ||
|
fb4e02aa90 | ||
|
270d0ba79a | ||
|
762bec692a | ||
|
744f1fb179 | ||
|
14a6ac2ce8 | ||
|
7e9b3d61c0 | ||
|
3bee65b985 | ||
|
74b479fa67 | ||
|
b0107a6173 | ||
|
d6e721c82f | ||
|
af810e862f | ||
|
0b5c61d493 | ||
|
54e99fcd1b | ||
|
cce01fa95c | ||
|
c5e734fdd8 | ||
|
aadba539ce | ||
|
8e18f1fbd9 | ||
|
ab777da1ae | ||
|
2299a44489 | ||
|
b193d7bdfb | ||
|
23e508dc18 | ||
|
8cd23c3dc0 | ||
|
a55106da83 | ||
|
46bbe29d9e | ||
|
f0d4850705 | ||
|
d39ff22033 | ||
|
16093a084c | ||
|
3e44ec76e4 | ||
|
3ee27dbe81 | ||
|
ae1c49c382 | ||
|
974f97cce5 | ||
|
3d7ae255a1 | ||
|
327d464e0c | ||
|
0d21c76ef1 | ||
|
b687b6775f | ||
|
e5d67ba90e | ||
|
7b0c55ea0c | ||
|
0744770ebe | ||
|
f9e5da10de | ||
|
4c9e684463 | ||
|
29310d6f92 | ||
|
99548a5a34 | ||
|
aab0fd5e9d | ||
|
8fc6f71e55 | ||
|
d73bbf218c | ||
|
49284f4696 | ||
|
a96ca3a4c1 | ||
|
bb759c3378 | ||
|
26627a49b0 | ||
|
7fe41a4b39 | ||
|
183b495907 | ||
|
444775e662 | ||
|
a6eabc0043 | ||
|
a3dbf1b448 | ||
|
695beeee78 | ||
|
22f4acf925 | ||
|
3bbcc2cbbe | ||
|
01d077b3e0 | ||
|
0cc4d22bd3 | ||
|
ef4075bbc4 | ||
|
e993655cf8 | ||
|
9b73cb030e | ||
|
3ff70dc5d5 | ||
|
89c3520c86 | ||
|
fb4c861add | ||
|
0c81653dc2 | ||
|
7e8e4427bf | ||
|
6ca897b261 | ||
|
7837d0dd2b | ||
|
3008f14a0d | ||
|
b671384719 | ||
|
4cc7823baf | ||
|
c4a61ec7f2 | ||
|
65212f3682 | ||
|
03c1491725 | ||
|
fbf2c84e20 | ||
|
4a949013d2 | ||
|
05ea8d2099 | ||
|
a26ebfa365 | ||
|
c253b1d7bc | ||
|
f445cac180 | ||
|
8eb8e09554 | ||
|
46fc7b685b | ||
|
42eafa71ae | ||
|
c3b22d159c | ||
|
07d9832b5f | ||
|
f11a6d6c2c | ||
|
6f403240d9 | ||
|
58a1e88856 | ||
|
4a404e8b55 | ||
|
8c2649b3fe | ||
|
f5a2b4ee5d | ||
|
a7a057e3a2 | ||
|
e98102ef8a | ||
|
dc7472be71 | ||
|
e6d204ac42 | ||
|
9a6c74a856 | ||
|
595348341e | ||
|
c4dbe78cac | ||
|
81461b5470 | ||
|
112dfc045f | ||
|
2324378c5e | ||
|
6b17088fa1 | ||
|
0f3ce680b5 | ||
|
2dc688c68b | ||
|
b0a8d568d9 | ||
|
6c3bba2b11 | ||
|
687517808b | ||
|
08824abdc1 | ||
|
9bf7b57fd1 | ||
|
722d054541 | ||
|
fe25cf50e9 | ||
|
b45fe0d55c | ||
|
20637bd50c | ||
|
4027329c6a | ||
|
ff16e0a2fc | ||
|
4fc25ae9f2 | ||
|
a310f53b84 | ||
|
9951d766cc | ||
|
d36b97a1dc | ||
|
49691778cd | ||
|
d3a5befca6 | ||
|
d14a8724c0 | ||
|
c5ad9e290c | ||
|
c037053a34 | ||
|
cef870285c | ||
|
bc95e1f73c | ||
|
d65aa5dd2f | ||
|
a02e2eb1aa | ||
|
1f354adf5e | ||
|
12edc3f68c | ||
|
a16217bd9d | ||
|
bcbf704a5d | ||
|
1fd943c142 | ||
|
01e37dce52 | ||
|
5947a69517 | ||
|
b623cc77d2 | ||
|
fef2774bdd | ||
|
ed898f91d4 | ||
|
a63f1b60f6 | ||
|
d4491e333c | ||
|
0f78def92f | ||
|
b81dc9c21f | ||
|
c3af8cc0b7 | ||
|
8209287044 | ||
|
0d6ecb3255 | ||
|
610f6533b9 | ||
|
fa6326df88 | ||
|
a8e3a0bea0 | ||
|
d110b7df27 | ||
|
8c9854691e | ||
|
10570fa49e | ||
|
01cc187f9e | ||
|
129d8806b0 | ||
|
32cb9ee335 | ||
|
06ccd81758 | ||
|
7c6c0e06c6 | ||
|
0b209bd3b4 | ||
|
534805b248 | ||
|
757b0ecb88 | ||
|
e1e4c63781 | ||
|
9d4be48ab8 | ||
|
90dbda7271 | ||
|
69581680df | ||
|
7a050e50e5 | ||
|
3720284204 | ||
|
6202dba74a | ||
|
bc96e9183b | ||
|
d98c0d0d23 | ||
|
8004c858f3 | ||
|
a418a747f9 | ||
|
e0a9bb0739 | ||
|
4e2fae0c10 | ||
|
a2a3c645f6 | ||
|
b42373406d | ||
|
35d175df70 | ||
|
3c5dbe9f1f | ||
|
3e8eeb6c2e | ||
|
d10ad38516 | ||
|
48bef33818 | ||
|
9f128bf796 | ||
|
d23c9ec3c5 | ||
|
aa84b232e5 | ||
|
180da765bc | ||
|
cab4d92ac6 | ||
|
7831d346b7 | ||
|
7d40a4c98e | ||
|
38e3f17430 | ||
|
a0293288a2 | ||
|
0c2925fa09 | ||
|
340722145f | ||
|
22687f1551 | ||
|
a5b9d1f8e8 | ||
|
ff822fa7da | ||
|
65c4e72403 | ||
|
540093496e | ||
|
b4b72c9302 | ||
|
e5a3cf92da | ||
|
e12ad8d673 | ||
|
5fd4223870 | ||
|
9beec30ba3 | ||
|
20421c1d49 | ||
|
81047f4a8b | ||
|
1d4fcbf920 | ||
|
bdf445d754 | ||
|
9cbc4837b7 | ||
|
7408b63c91 | ||
|
e53a72c351 | ||
|
8f3b3eb6e2 | ||
|
6cf2a9fc0e | ||
|
46512f3a37 | ||
|
4a5fe31949 | ||
|
42d50ca091 | ||
|
a0cb636ee3 | ||
|
076082358a | ||
|
e27a5768be | ||
|
02a4d63dc1 | ||
|
4aa6b2e9d3 | ||
|
1a9744d406 | ||
|
a9805facab | ||
|
5c2f126896 | ||
|
c2b131e793 | ||
|
ce14a59aa5 | ||
|
28126afb8e | ||
|
58576e2c5b | ||
|
37e99b9f99 | ||
|
273a731496 | ||
|
4eb205b6f5 | ||
|
c443191b84 | ||
|
4297c7b0b6 | ||
|
1072717a60 | ||
|
aca585d81e | ||
|
8c25d803dd | ||
|
f563a3856b | ||
|
67cbaa5a02 | ||
|
790c388fd1 | ||
|
df216319db | ||
|
d121793bd6 | ||
|
3d204aa2b1 | ||
|
b98bfc8583 | ||
|
ed21369043 | ||
|
47cea24f67 | ||
|
80ba74a493 | ||
|
cc6674b4d1 | ||
|
37cc16189d | ||
|
2fdacdbbd6 | ||
|
e01923caaa | ||
|
6db40277dc | ||
|
ad99a6f7fd | ||
|
429d685816 | ||
|
373bee1800 | ||
|
ec87a34342 | ||
|
b3bee8c862 | ||
|
a32e890392 | ||
|
d26b1ff847 | ||
|
ac5bba8ea8 | ||
|
8632758e52 | ||
|
0125f9192d | ||
|
d2812c3e70 | ||
|
f6c36fb82e | ||
|
cae3a4455e | ||
|
03d2a4b809 | ||
|
c707b2d936 | ||
|
813cc3f137 | ||
|
1d2fe2375a | ||
|
353c67c0d4 | ||
|
d4c71dda90 | ||
|
54c7babbb3 | ||
|
38d1fdf118 | ||
|
781673fa3d | ||
|
2c118e1890 | ||
|
a0aeb266fa | ||
|
4c9e70a899 | ||
|
602c2dd81e | ||
|
a9c9bed2e2 | ||
|
98ffc124f5 | ||
|
12e8ef0213 | ||
|
323bd18771 | ||
|
0dfecf815d | ||
|
824c5e07c0 | ||
|
09207124de | ||
|
f197af7358 | ||
|
a066c5bbb0 | ||
|
06807aee1b | ||
|
bb59ec3e6e | ||
|
f4a1861aab | ||
|
b183748a87 | ||
|
0814bc5358 | ||
|
3c58a339dc | ||
|
ce0d9e3727 | ||
|
d0aa105b59 | ||
|
55ed87f042 | ||
|
42ce59cdd2 | ||
|
4ce821ad14 | ||
|
fa7d321cf7 | ||
|
99e69d6761 | ||
|
0c93077425 | ||
|
52adca06a9 | ||
|
034a3f9f20 | ||
|
f2495ba422 | ||
|
2c8f2ae901 | ||
|
7eea8b9401 | ||
|
91a67de356 | ||
|
5cccca79c2 | ||
|
f52999c41e | ||
|
3412b511c1 | ||
|
55f2b129e3 | ||
|
35e6d1e851 | ||
|
f7841638f6 | ||
|
0fe87b6c3c | ||
|
4221bc4d2d | ||
|
072c1d16c8 | ||
|
d12708671c | ||
|
86fb59915f | ||
|
7731fea285 | ||
|
6cd367f86e | ||
|
24fcf531e7 | ||
|
c86e482415 | ||
|
ad98e4a993 | ||
|
d84d3c799f | ||
|
20ff103b96 | ||
|
f3d71d8a6b | ||
|
15d77be6fd | ||
|
3430268b90 | ||
|
7f3c674aee | ||
|
509c345083 | ||
|
a343648323 | ||
|
82425d713b | ||
|
ec670d6c25 | ||
|
cfbf8660bc | ||
|
79c7b07668 | ||
|
ee601ad450 | ||
|
bdcecff0be | ||
|
92338e37d3 | ||
|
e8322d1fb7 | ||
|
698798ac5c | ||
|
1562869a7a | ||
|
5bcce07fd7 | ||
|
1e3e451c22 | ||
|
f7dfa0ee35 | ||
|
7f4d8362bf | ||
|
e9a079b458 | ||
|
968516f86d | ||
|
b42f4fa34d | ||
|
0c396fc83e | ||
|
494db7a55d | ||
|
2a33de20a4 | ||
|
79e0de2faf | ||
|
fdc18e536d | ||
|
c397981db2 | ||
|
9b3c3d78a1 | ||
|
eb0d4a0a16 | ||
|
07bc9a400d | ||
|
8793f1b4c6 | ||
|
8657be9fb4 | ||
|
22ba0b5aa5 | ||
|
705f7ce49e | ||
|
ecddd01a74 | ||
|
082463978d | ||
|
6acbbeddf8 | ||
|
97d164005c | ||
|
55d4688b34 | ||
|
78ad433718 | ||
|
a51ac2be8c | ||
|
0a11d5e9a2 | ||
|
9817764e06 | ||
|
e75da19bb3 | ||
|
210d27427c | ||
|
b6d3cf9388 | ||
|
8d77737ce9 | ||
|
ba1509ef9e | ||
|
3d592530f4 | ||
|
85f275a284 | ||
|
b21dc336da | ||
|
c05f8b29ef | ||
|
96877abf85 | ||
|
f642128e8f | ||
|
3d8a01fc0d | ||
|
72d0c2396c | ||
|
688b18d88c | ||
|
b5beb7dffc | ||
|
c3363cb938 | ||
|
60cf552825 | ||
|
682cc491e7 | ||
|
1ac7d54efd | ||
|
3720040f9d | ||
|
fcaeb4d6a4 | ||
|
2c8607a700 | ||
|
c51f0d6551 | ||
|
1f9c38b3b9 | ||
|
34a06851d3 | ||
|
496573473b | ||
|
fe5595d60d | ||
|
263afc07c3 | ||
|
ca5719a178 | ||
|
04442ae74c | ||
|
1ef056a0ed | ||
|
6fcebba53b | ||
|
00a8b0a3c8 | ||
|
6f5d03b414 | ||
|
eb198b854d | ||
|
26cf82fa5b | ||
|
0c5fc9b3b5 | ||
|
a3f82b7d7b | ||
|
5dc6c5bb88 | ||
|
d0b74180b2 | ||
|
9efe78ac9f | ||
|
3e7f31ebe1 | ||
|
a9a9930090 | ||
|
6357011e41 | ||
|
3423877df1 | ||
|
6672ea6af0 | ||
|
dbf62b106c | ||
|
08744dfc42 | ||
|
3315eae709 | ||
|
8a6585ff73 | ||
|
d61d2809de | ||
|
a4cfe8d2da | ||
|
c0e27b85ab | ||
|
708359754c | ||
|
a29538f1b9 | ||
|
9fabe9b420 | ||
|
a62945fc94 | ||
|
252f96e3b1 | ||
|
b8e67c826c | ||
|
3b8ab07631 | ||
|
38933ca790 | ||
|
99ef1a3353 | ||
|
7f59e9a13c | ||
|
d259d035bc | ||
|
4c38c9a07e | ||
|
2e6eddbc97 | ||
|
be43197190 | ||
|
a8e3f3a292 | ||
|
3a5149de3e | ||
|
63bbaff803 | ||
|
d46dd383f6 | ||
|
72c8ed3670 | ||
|
6fa7ff1eba | ||
|
0508cc702d | ||
|
76c73fc423 | ||
|
0d6632cdfb | ||
|
916943b1c4 | ||
|
ae221a8274 | ||
|
533d9d5f59 | ||
|
cad3120307 | ||
|
39544b234b | ||
|
ee50a9c889 | ||
|
14a0d23f4c | ||
|
85fa521728 | ||
|
0d36dcef60 | ||
|
9bd7a7db6d | ||
|
38d01b32ac | ||
|
5c2a0471bd | ||
|
1c43c34853 | ||
|
4b5428d521 | ||
|
25b64d3c35 | ||
|
e3d7748688 | ||
|
a82f4b1f38 | ||
|
24100643a9 | ||
|
6031bd0162 | ||
|
4b9d31d916 | ||
|
1da8f46087 | ||
|
6a96846321 | ||
|
7f94fb8b3d | ||
|
3d2b354712 | ||
|
8fb10f0eea | ||
|
a0257c8b37 | ||
|
5bcbde18ec | ||
|
b408826a0b | ||
|
8fbd67bc4a | ||
|
05f82b6443 | ||
|
81eb620cc0 | ||
|
f58ddd3b46 | ||
|
0ebbe83388 | ||
|
9017581a14 | ||
|
91a772cfd5 | ||
|
aef3f9c467 | ||
|
fc0c290789 | ||
|
2a5f64604f | ||
|
84a2080689 | ||
|
8dd8a9d989 | ||
|
d03fd72465 | ||
|
8b0c046e3c | ||
|
2bc77973f5 | ||
|
3d9c96162e | ||
|
8b14a4a88a | ||
|
aec4ce26d4 | ||
|
d550219e4c | ||
|
628956f819 | ||
|
c9c3a517b2 | ||
|
330db984fe | ||
|
4c4b769ef2 | ||
|
0b335753ce | ||
|
cc5ded3854 | ||
|
bf2828383e | ||
|
bc065fb271 | ||
|
2ff4f82972 | ||
|
ee7a3fece4 | ||
|
eb204e920d | ||
|
4c5f898585 | ||
|
d47e800182 | ||
|
f239ca0f04 | ||
|
9593c338c3 | ||
|
fe98303465 | ||
|
baf0c710d8 | ||
|
5f68ab2401 | ||
|
894fa45ad2 | ||
|
e8109a02b4 | ||
|
48a354d428 | ||
|
f37012d4bd | ||
|
89db25b0b1 | ||
|
b881e7c859 | ||
|
699e9b4328 | ||
|
5290f6cf12 | ||
|
cd930de18d | ||
|
c3b215936d | ||
|
9c1da77024 | ||
|
a0c5f491cd | ||
|
63a22e2a2f | ||
|
b00ebb4709 | ||
|
fed5729c81 | ||
|
12aba472ef | ||
|
bf8b336ec9 | ||
|
0a783e0ff3 | ||
|
dc5f65c8d9 | ||
|
2a4fd5b529 | ||
|
1c4750792d | ||
|
eb94308bbb | ||
|
58d0c0b704 | ||
|
5a80dc6298 | ||
|
b0887ed28d | ||
|
b88d0f18e9 | ||
|
8a0defef3d | ||
|
1cfbbff51a | ||
|
160d7c5b1e | ||
|
67cf4907ae | ||
|
bbc1b9deba | ||
|
e294510fcd | ||
|
098c7ec631 | ||
|
3eea4e5f2d | ||
|
66a9815a4e | ||
|
fb8f6fd2aa | ||
|
0b4b25d0ed | ||
|
d8c3f23447 | ||
|
69ce708392 | ||
|
cf6ff20079 | ||
|
51a51d3174 | ||
|
3a5e3ae774 | ||
|
254a9ba114 | ||
|
b5806e39e8 | ||
|
531ee01590 | ||
|
10cdda5bf5 | ||
|
c77ad2e9b5 | ||
|
c60a62e0de | ||
|
076a3c9cb7 | ||
|
8e21414853 | ||
|
040de105cc | ||
|
bc741955ed | ||
|
8895dae5d0 | ||
|
ad3aa035db | ||
|
8ff30df6f3 | ||
|
60153818ab | ||
|
91d63bd669 | ||
|
30abd4f6ee | ||
|
c3df272d43 | ||
|
137402a3be | ||
|
8363fc0f08 | ||
|
a8badad1fa | ||
|
fbebe613b7 | ||
|
efc5b376b4 | ||
|
1fbf90a712 | ||
|
0e026443cf | ||
|
6a6a58912e | ||
|
d3aebbcedc | ||
|
c27310bf96 | ||
|
1ff9c7f40d | ||
|
e5645b55eb | ||
|
4b67338a7f | ||
|
fb4cb1c8c5 | ||
|
8ab805c96c | ||
|
ff46d90618 | ||
|
d1faa1a99f | ||
|
9c77bd1cb7 | ||
|
0140e3bf68 | ||
|
d507b7555e | ||
|
7d865c5974 | ||
|
eb207003e7 | ||
|
d0e5925de2 | ||
|
d04540ff98 | ||
|
1b795376fc | ||
|
17cc431d33 | ||
|
8112191cdb | ||
|
96d5ff4d93 | ||
|
105f70b1fe | ||
|
2735832354 | ||
|
b12f9a0545 | ||
|
16b33b45ab | ||
|
deb1abff20 | ||
|
5cb2406405 | ||
|
99b8a71b9d | ||
|
3f6ca86312 | ||
|
6c90c67259 | ||
|
0a81885192 | ||
|
ed8515d7ed | ||
|
7c6b473efc | ||
|
dcea2a97b2 | ||
|
61c3571160 | ||
|
d894f5d843 | ||
|
b2b90f6342 | ||
|
2f75d2cf5a | ||
|
a5bb3a9997 | ||
|
75df465bbf | ||
|
aac32378ed | ||
|
4e21017693 | ||
|
8abd9a0386 | ||
|
a4aafe9309 | ||
|
5895908402 | ||
|
14628d18e5 | ||
|
844f4e8868 | ||
|
ee95d592f0 | ||
|
7b8651cd90 | ||
|
28e32eb784 | ||
|
92e7c0979a | ||
|
3e357794f9 | ||
|
7986e05dd7 | ||
|
9c2f0f7e3a | ||
|
44408ed371 | ||
|
558f564017 | ||
|
40e80da24a | ||
|
5fbd6598b7 | ||
|
6476277b5c | ||
|
940cde001f | ||
|
23829f32f6 | ||
|
ceb3c692f3 | ||
|
3c7d74d9d9 | ||
|
fdef947fd3 | ||
|
f250bb4eb6 | ||
|
ae49423a04 | ||
|
5da8ac035d | ||
|
fa4bc0ad15 | ||
|
ebc30bc7c1 | ||
|
f9d6dccd9c | ||
|
885506056c | ||
|
d034494c4d | ||
|
2380a6ec54 | ||
|
ed87e2056d | ||
|
4a71e9a2bc | ||
|
76bf27c021 | ||
|
05f4321160 | ||
|
32705690e7 | ||
|
e12d8ec40d | ||
|
3fc6a9d6f0 | ||
|
adffe02e6f | ||
|
c6db4d179c | ||
|
e00840033e | ||
|
ef8e98a485 | ||
|
e5d301366c | ||
|
770c7d7cb0 | ||
|
5d8bf427ca | ||
|
e0f1966727 | ||
|
2d582ff542 | ||
|
6ee0488c6d | ||
|
1d08fd530f | ||
|
37e073b675 | ||
|
51d329b7e1 | ||
|
640e1bacfc | ||
|
1b6257ac3f | ||
|
73975f8f4a | ||
|
dff8dfadb8 | ||
|
0b423f6a54 | ||
|
1df78f4892 | ||
|
d307723a72 | ||
|
9bc48b336f | ||
|
7d07b21168 | ||
|
840345bf57 | ||
|
e4af4ccb22 | ||
|
e9878b1c6a | ||
|
b257841ecd | ||
|
e38d2daa32 | ||
|
f5f288f652 | ||
|
d35ce60785 | ||
|
d4b08aa9bb | ||
|
9121ca5711 | ||
|
ab60ef617a | ||
|
b44173c769 | ||
|
8970909ad9 | ||
|
9481be0824 | ||
|
4b29ab5690 | ||
|
0fc28afe45 | ||
|
be31da9af7 | ||
|
a7c123661e | ||
|
f8ff1c2126 | ||
|
c7afe8dea0 | ||
|
d0228d56b4 | ||
|
84351186d5 | ||
|
dc52ede2f3 | ||
|
0040a2fd32 | ||
|
6086defd15 | ||
|
ad787661bb | ||
|
956b933a71 | ||
|
1b15d09a65 | ||
|
15b97111e6 | ||
|
b33dfb3ede | ||
|
99dcff252e | ||
|
a1895a9da6 | ||
|
b5fc396ab8 | ||
|
40f2bef33b | ||
|
4969288a3b | ||
|
f76faf799a | ||
|
20e9303118 | ||
|
3855dc8d24 | ||
|
d0c02243d2 | ||
|
67862907fb | ||
|
4e4d86df9c | ||
|
cc3ce56acd | ||
|
40a137dfa8 | ||
|
c75bd6ee1e | ||
|
0dff1696a2 | ||
|
d1a6ea86f7 | ||
|
ea13a8e917 | ||
|
fc49388a2a | ||
|
25dc758375 | ||
|
0d8a2edf6b | ||
|
942c4eff2d | ||
|
cb199a866c | ||
|
6e3b5e1ee2 | ||
|
b183bab8f7 | ||
|
bae3687192 | ||
|
8e08a3b453 | ||
|
d4e7d0c0ff | ||
|
3f3ae1f05b | ||
|
434964f61d | ||
|
ce4186a1eb | ||
|
406bb0105f | ||
|
af4f582986 | ||
|
639a2c725d | ||
|
f648131f93 | ||
|
3c4a2b6d93 | ||
|
c18c4aa282 | ||
|
a4ff747ee4 | ||
|
b64b5f76db | ||
|
a2d24bde65 | ||
|
f2599dd576 | ||
|
a35a286182 | ||
|
368cd76efb | ||
|
a957a1d35d | ||
|
7b41c2ebbf | ||
|
585f434ff4 | ||
|
9e1cd0b7ff | ||
|
503cf310ad | ||
|
aac3bbc746 | ||
|
7d478eb667 | ||
|
d87e3543c1 | ||
|
fd3e47079c | ||
|
019c2ecb53 | ||
|
a4cd19ec42 | ||
|
f693e1e83a | ||
|
7d2b56ccb0 | ||
|
e991c925c8 | ||
|
f1f2cc1bc4 | ||
|
6f2ba170ae | ||
|
c903cda7aa | ||
|
e51f406055 | ||
|
60e957af7b | ||
|
71e41b01c6 | ||
|
05153b057d | ||
|
93ea028360 | ||
|
b86b9221d4 | ||
|
49f68f18d2 | ||
|
b6081b04fc | ||
|
68e6647b7f | ||
|
2cb1b3c60d | ||
|
b8af2c6014 | ||
|
ca8a828d02 | ||
|
b27dbd3e4b | ||
|
5b776020ae | ||
|
dcf485d6f3 | ||
|
c9f49ee82b | ||
|
dc4ae1e279 | ||
|
d8c1347c02 | ||
|
d4c9e20b36 | ||
|
37fd8e78e1 | ||
|
7a17550c7d | ||
|
f7890a371a | ||
|
c62ab931ac | ||
|
a60737f997 | ||
|
321bcc056d | ||
|
5c6fa5db16 | ||
|
866bb7c041 | ||
|
9af0f5d061 | ||
|
3d7b3309c1 | ||
|
c4f47d3a1f | ||
|
37f713c79d | ||
|
8d6cd613e3 | ||
|
78cb041bec | ||
|
309215ece6 | ||
|
03a88ff715 | ||
|
e29440dd47 | ||
|
09db4c602e | ||
|
3c798d7107 | ||
|
087c85a5d3 | ||
|
9995ecdc6c | ||
|
e00279af25 | ||
|
0cdf412093 | ||
|
6b968b2143 | ||
|
e50cdc21c6 | ||
|
6c77426a71 | ||
|
d42dc06719 | ||
|
c8574e64e1 | ||
|
a758d604df | ||
|
c3a6132e37 | ||
|
30af627761 | ||
|
ba2134dd1e | ||
|
f848e96f26 | ||
|
843622e20a | ||
|
afb3ba35d8 | ||
|
1f52401541 | ||
|
2e94fb273d | ||
|
7ed643eb9c | ||
|
b83f56253b | ||
|
91eab8a77a | ||
|
75f2cf5f6f | ||
|
d2c73472d0 | ||
|
259a6572ae | ||
|
86dbf40cd1 | ||
|
aef3b57f55 | ||
|
6574de04e3 | ||
|
14711237a1 | ||
|
b0bc4bb807 | ||
|
03bc6a133e | ||
|
3218c2067a | ||
|
84416a465a | ||
|
7aef841dea | ||
|
fe48c72925 | ||
|
587d83f1e3 | ||
|
794f62a466 | ||
|
7e4bcf78c4 | ||
|
5df5a009e2 | ||
|
9be537abb7 | ||
|
a4d50f82ff | ||
|
1793014ec3 | ||
|
f1377fcb7c | ||
|
86ad9580b1 | ||
|
888171ae18 | ||
|
1e363204d6 | ||
|
f2a66788f8 | ||
|
19839c646c | ||
|
1e4d261c62 | ||
|
ecd7f83ffb | ||
|
af0a3b64a9 | ||
|
99b62ed313 | ||
|
beaa69af38 | ||
|
9a3f634ff7 | ||
|
b6a75bda5d | ||
|
4510858390 | ||
|
2ffd28325a | ||
|
26cb1650bc | ||
|
3e53fe49e9 | ||
|
3551e3ab45 | ||
|
1ea68e0e6d | ||
|
6635670794 | ||
|
f67a62efe5 | ||
|
d5fd7aaa19 |
@@ -16,6 +16,11 @@ if(POLICY CMP0051)
|
||||
cmake_policy(SET CMP0051 NEW)
|
||||
endif()
|
||||
|
||||
if(POLICY CMP0058)
|
||||
# Ninja requires custom command byproducts to be explicit
|
||||
cmake_policy(SET CMP0058 OLD)
|
||||
endif()
|
||||
|
||||
project(REACTOS)
|
||||
|
||||
# Versioning
|
||||
@@ -35,7 +40,6 @@ set(CMAKE_SKIP_PREPROCESSED_SOURCE_RULES TRUE)
|
||||
set(CMAKE_SKIP_ASSEMBLY_SOURCE_RULES TRUE)
|
||||
set(CMAKE_COLOR_MAKEFILE OFF)
|
||||
#set_property(GLOBAL PROPERTY RULE_MESSAGES OFF)
|
||||
set(CMAKE_SKIP_INSTALL_RULES ON)
|
||||
|
||||
if(NOT DEFINED NEW_STYLE_BUILD)
|
||||
set(NEW_STYLE_BUILD TRUE)
|
||||
@@ -94,8 +98,6 @@ if(NOT CMAKE_CROSSCOMPILING)
|
||||
add_definitions(/D_ALLOW_KEYWORD_MACROS)
|
||||
endif()
|
||||
add_definitions(/Dinline=__inline)
|
||||
else()
|
||||
add_compile_flags("-fshort-wchar -Wno-multichar")
|
||||
endif()
|
||||
|
||||
include_directories(sdk/include/host)
|
||||
@@ -108,9 +110,9 @@ if(NOT CMAKE_CROSSCOMPILING)
|
||||
|
||||
if(NOT NEW_STYLE_BUILD)
|
||||
if(NOT MSVC)
|
||||
export(TARGETS bin2c widl gendib cabman cdmake fatten hpp mkhive obj2bin spec2def geninc rsym mkshelllink utf16le xml2sdb FILE ${CMAKE_BINARY_DIR}/ImportExecutables.cmake NAMESPACE native- )
|
||||
export(TARGETS bin2c widl gendib cabman fatten hpp isohybrid mkhive mkisofs obj2bin spec2def geninc rsym mkshelllink utf16le xml2sdb FILE ${CMAKE_BINARY_DIR}/ImportExecutables.cmake NAMESPACE native- )
|
||||
else()
|
||||
export(TARGETS bin2c widl gendib cabman cdmake fatten hpp mkhive obj2bin spec2def geninc mkshelllink utf16le xml2sdb FILE ${CMAKE_BINARY_DIR}/ImportExecutables.cmake NAMESPACE native- )
|
||||
export(TARGETS bin2c widl gendib cabman fatten hpp isohybrid mkhive mkisofs obj2bin spec2def geninc mkshelllink utf16le xml2sdb FILE ${CMAKE_BINARY_DIR}/ImportExecutables.cmake NAMESPACE native- )
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@@ -235,6 +237,7 @@ else()
|
||||
${REACTOS_BINARY_DIR}/sdk/include/dxsdk
|
||||
${REACTOS_BINARY_DIR}/sdk/include/ddk
|
||||
${REACTOS_BINARY_DIR}/sdk/include/reactos
|
||||
${REACTOS_BINARY_DIR}/sdk/include/reactos/mc
|
||||
sdk/include/crt
|
||||
sdk/include/ddk
|
||||
sdk/include/ndk
|
||||
|
@@ -28,7 +28,6 @@ add_subdirectory(network)
|
||||
add_subdirectory(notepad)
|
||||
add_subdirectory(osk)
|
||||
add_subdirectory(rapps)
|
||||
add_subdirectory(rapps_new)
|
||||
add_subdirectory(regedit)
|
||||
add_subdirectory(regedt32)
|
||||
add_subdirectory(sc)
|
||||
|
@@ -91,14 +91,14 @@ void print_help() {
|
||||
" will switch device at Scsi2, bus 1, taget_id 1 to UDMA0 mode\n"
|
||||
" atactl -h -d 30 c1:b0:d0:l0 \n"
|
||||
" will hide Master (d0:l0) device on secondary (c1:b0) IDE channel\n"
|
||||
" and lock i/o on this channel for 30 seconds to ensure safity\n"
|
||||
" and lock i/o on this channel for 30 seconds to ensure safety\n"
|
||||
" of removal process"
|
||||
"------\n"
|
||||
"Device address format:\n"
|
||||
"\n"
|
||||
"s<controller id> number of controller in system. Is assigned during hardware\n"
|
||||
" detection. Usually s0/s1 are ATA Pri/Sec.\n"
|
||||
" Note, due do NT internal desing ATA controllers are represented\n"
|
||||
" Note, due do NT internal design ATA controllers are represented\n"
|
||||
" as SCSI controllers.\n"
|
||||
"b<bus id> For ATA controllers it is channel number.\n"
|
||||
" Note, usually onboard controller is represented as 2 legacy\n"
|
||||
@@ -1283,7 +1283,7 @@ ata_scan(
|
||||
to.WaitForPhysicalLink = lock;
|
||||
to.Flags = unhide ? UNIATA_ADD_FLAGS_UNHIDE : 0;
|
||||
|
||||
printf("Scaning bus for new devices.\n");
|
||||
printf("Scanning bus for new devices.\n");
|
||||
if(lock) {
|
||||
printf("You have %d seconds to connect device.\n", lock);
|
||||
}
|
||||
|
@@ -1,6 +1,8 @@
|
||||
|
||||
list(APPEND SOURCE cacls.c cacls.rc)
|
||||
add_executable(cacls ${SOURCE})
|
||||
include_directories(${REACTOS_SOURCE_DIR}/sdk/lib/conutils)
|
||||
|
||||
add_executable(cacls cacls.c cacls.rc)
|
||||
set_module_type(cacls win32cui UNICODE)
|
||||
target_link_libraries(cacls conutils ${PSEH_LIB})
|
||||
add_importlibs(cacls advapi32 user32 shell32 msvcrt kernel32)
|
||||
add_cd_file(TARGET cacls DESTINATION reactos/system32 FOR all)
|
||||
|
@@ -33,155 +33,17 @@ static GENERIC_MAPPING FileGenericMapping =
|
||||
};
|
||||
|
||||
|
||||
static
|
||||
INT
|
||||
LengthOfStrResource(IN HINSTANCE hInst,
|
||||
IN UINT uID)
|
||||
static VOID
|
||||
PrintError(DWORD dwError)
|
||||
{
|
||||
HRSRC hrSrc;
|
||||
HGLOBAL hRes;
|
||||
LPWSTR lpName, lpStr;
|
||||
if (dwError == ERROR_SUCCESS)
|
||||
return;
|
||||
|
||||
if (hInst == NULL)
|
||||
{
|
||||
hInst = GetModuleHandle(NULL);
|
||||
}
|
||||
|
||||
/* There are always blocks of 16 strings */
|
||||
lpName = (LPWSTR)MAKEINTRESOURCE((uID >> 4) + 1);
|
||||
|
||||
/* Find the string table block */
|
||||
hrSrc = FindResourceW(hInst, lpName, (LPWSTR)RT_STRING);
|
||||
if (hrSrc)
|
||||
{
|
||||
hRes = LoadResource(hInst, hrSrc);
|
||||
if (hRes)
|
||||
{
|
||||
lpStr = LockResource(hRes);
|
||||
if (lpStr)
|
||||
{
|
||||
UINT x;
|
||||
|
||||
/* Find the string we're looking for */
|
||||
uID &= 0xF; /* position in the block, same as % 16 */
|
||||
for (x = 0; x < uID; x++)
|
||||
{
|
||||
lpStr += (*lpStr) + 1;
|
||||
}
|
||||
|
||||
/* Found the string */
|
||||
return (int)(*lpStr);
|
||||
}
|
||||
}
|
||||
}
|
||||
return -1;
|
||||
ConMsgPuts(StdErr, FORMAT_MESSAGE_FROM_SYSTEM,
|
||||
NULL, dwError, LANG_USER_DEFAULT);
|
||||
}
|
||||
|
||||
|
||||
static
|
||||
INT
|
||||
AllocAndLoadString(OUT LPTSTR *lpTarget,
|
||||
IN HINSTANCE hInst,
|
||||
IN UINT uID)
|
||||
{
|
||||
INT ln;
|
||||
|
||||
ln = LengthOfStrResource(hInst,
|
||||
uID);
|
||||
if (ln++ > 0)
|
||||
{
|
||||
(*lpTarget) = (LPTSTR)HeapAlloc(GetProcessHeap(),
|
||||
0,
|
||||
ln * sizeof(TCHAR));
|
||||
if ((*lpTarget) != NULL)
|
||||
{
|
||||
INT Ret;
|
||||
Ret = LoadString(hInst,
|
||||
uID,
|
||||
*lpTarget,
|
||||
ln);
|
||||
if (!Ret)
|
||||
{
|
||||
HeapFree(GetProcessHeap(),
|
||||
0,
|
||||
*lpTarget);
|
||||
}
|
||||
return Ret;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static
|
||||
VOID
|
||||
PrintHelp(VOID)
|
||||
{
|
||||
LPTSTR szHelp;
|
||||
|
||||
if (AllocAndLoadString(&szHelp,
|
||||
NULL,
|
||||
IDS_HELP) != 0)
|
||||
{
|
||||
_tprintf(_T("%s"),
|
||||
szHelp);
|
||||
|
||||
HeapFree(GetProcessHeap(),
|
||||
0,
|
||||
szHelp);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static
|
||||
VOID
|
||||
PrintErrorMessage(IN DWORD dwError)
|
||||
{
|
||||
LPTSTR szError;
|
||||
|
||||
if (FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER |
|
||||
FORMAT_MESSAGE_IGNORE_INSERTS |
|
||||
FORMAT_MESSAGE_FROM_SYSTEM,
|
||||
NULL,
|
||||
dwError,
|
||||
MAKELANGID(LANG_NEUTRAL,
|
||||
SUBLANG_DEFAULT),
|
||||
(LPTSTR)&szError,
|
||||
0,
|
||||
NULL) != 0)
|
||||
{
|
||||
_tprintf(_T("%s"),
|
||||
szError);
|
||||
LocalFree((HLOCAL)szError);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static
|
||||
DWORD
|
||||
LoadAndPrintString(IN HINSTANCE hInst,
|
||||
IN UINT uID)
|
||||
{
|
||||
TCHAR szTemp[255];
|
||||
DWORD Len;
|
||||
|
||||
Len = (DWORD)LoadString(hInst,
|
||||
uID,
|
||||
szTemp,
|
||||
sizeof(szTemp) / sizeof(szTemp[0]));
|
||||
|
||||
if (Len != 0)
|
||||
{
|
||||
_tprintf(_T("%s"),
|
||||
szTemp);
|
||||
}
|
||||
|
||||
return Len;
|
||||
}
|
||||
|
||||
|
||||
static
|
||||
BOOL
|
||||
static BOOL
|
||||
PrintFileDacl(IN LPTSTR FilePath,
|
||||
IN LPTSTR FileName)
|
||||
{
|
||||
@@ -199,10 +61,8 @@ PrintFileDacl(IN LPTSTR FilePath,
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
_tcscpy(FullFileName,
|
||||
FilePath);
|
||||
_tcscat(FullFileName,
|
||||
FileName);
|
||||
_tcscpy(FullFileName, FilePath);
|
||||
_tcscat(FullFileName, FileName);
|
||||
|
||||
/* find out how much memory we need */
|
||||
if (!GetFileSecurity(FullFileName,
|
||||
@@ -318,8 +178,7 @@ BuildSidString:
|
||||
}
|
||||
|
||||
/* print the file name or space */
|
||||
_tprintf(_T("%s "),
|
||||
FullFileName);
|
||||
ConPrintf(StdOut, L"%s ", FullFileName);
|
||||
|
||||
/* attempt to map the SID to a user name */
|
||||
if (AceIndex == 0)
|
||||
@@ -335,35 +194,29 @@ BuildSidString:
|
||||
/* print the domain and/or user if possible, or the SID string */
|
||||
if (Name != NULL && Domain[0] != _T('\0'))
|
||||
{
|
||||
_tprintf(_T("%s\\%s:"),
|
||||
Domain,
|
||||
Name);
|
||||
ConPrintf(StdOut, L"%s\\%s:", Domain, Name);
|
||||
IndentAccess = (DWORD)_tcslen(Domain) + _tcslen(Name);
|
||||
}
|
||||
else
|
||||
{
|
||||
LPTSTR DisplayString = (Name != NULL ? Name : SidString);
|
||||
|
||||
_tprintf(_T("%s:"),
|
||||
DisplayString);
|
||||
ConPrintf(StdOut, L"%s:", DisplayString);
|
||||
IndentAccess = (DWORD)_tcslen(DisplayString);
|
||||
}
|
||||
|
||||
/* print the ACE Flags */
|
||||
if (Ace->Header.AceFlags & CONTAINER_INHERIT_ACE)
|
||||
{
|
||||
IndentAccess += LoadAndPrintString(NULL,
|
||||
IDS_ABBR_CI);
|
||||
IndentAccess += ConResPuts(StdOut, IDS_ABBR_CI);
|
||||
}
|
||||
if (Ace->Header.AceFlags & OBJECT_INHERIT_ACE)
|
||||
{
|
||||
IndentAccess += LoadAndPrintString(NULL,
|
||||
IDS_ABBR_OI);
|
||||
IndentAccess += ConResPuts(StdOut, IDS_ABBR_OI);
|
||||
}
|
||||
if (Ace->Header.AceFlags & INHERIT_ONLY_ACE)
|
||||
{
|
||||
IndentAccess += LoadAndPrintString(NULL,
|
||||
IDS_ABBR_IO);
|
||||
IndentAccess += ConResPuts(StdOut, IDS_ABBR_IO);
|
||||
}
|
||||
|
||||
IndentAccess += 2;
|
||||
@@ -375,13 +228,11 @@ BuildSidString:
|
||||
{
|
||||
if (AccessMask == FILE_ALL_ACCESS)
|
||||
{
|
||||
LoadAndPrintString(NULL,
|
||||
IDS_ABBR_NONE);
|
||||
ConResPuts(StdOut, IDS_ABBR_NONE);
|
||||
}
|
||||
else
|
||||
{
|
||||
LoadAndPrintString(NULL,
|
||||
IDS_DENY);
|
||||
ConResPuts(StdOut, IDS_DENY);
|
||||
goto PrintSpecialAccess;
|
||||
}
|
||||
}
|
||||
@@ -389,24 +240,20 @@ BuildSidString:
|
||||
{
|
||||
if (AccessMask == FILE_ALL_ACCESS)
|
||||
{
|
||||
LoadAndPrintString(NULL,
|
||||
IDS_ABBR_FULL);
|
||||
ConResPuts(StdOut, IDS_ABBR_FULL);
|
||||
}
|
||||
else if (!(Ace->Mask & (GENERIC_READ | GENERIC_EXECUTE)) &&
|
||||
AccessMask == (FILE_GENERIC_READ | FILE_EXECUTE))
|
||||
{
|
||||
LoadAndPrintString(NULL,
|
||||
IDS_ABBR_READ);
|
||||
ConResPuts(StdOut, IDS_ABBR_READ);
|
||||
}
|
||||
else if (AccessMask == (FILE_GENERIC_READ | FILE_GENERIC_WRITE | FILE_EXECUTE | DELETE))
|
||||
{
|
||||
LoadAndPrintString(NULL,
|
||||
IDS_ABBR_CHANGE);
|
||||
ConResPuts(StdOut, IDS_ABBR_CHANGE);
|
||||
}
|
||||
else if (AccessMask == FILE_GENERIC_WRITE)
|
||||
{
|
||||
LoadAndPrintString(NULL,
|
||||
IDS_ABBR_WRITE);
|
||||
ConResPuts(StdOut, IDS_ABBR_WRITE);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -446,38 +293,32 @@ BuildSidString:
|
||||
{STANDARD_RIGHTS_ALL, IDS_STANDARD_RIGHTS_ALL},
|
||||
};
|
||||
|
||||
LoadAndPrintString(NULL,
|
||||
IDS_ALLOW);
|
||||
ConResPuts(StdOut, IDS_ALLOW);
|
||||
|
||||
PrintSpecialAccess:
|
||||
LoadAndPrintString(NULL,
|
||||
IDS_SPECIAL_ACCESS);
|
||||
ConResPuts(StdOut, IDS_SPECIAL_ACCESS);
|
||||
|
||||
/* print the special access rights */
|
||||
x = sizeof(AccessRights) / sizeof(AccessRights[0]);
|
||||
x = ARRAYSIZE(AccessRights);
|
||||
while (x-- != 0)
|
||||
{
|
||||
if ((Ace->Mask & AccessRights[x].Access) == AccessRights[x].Access)
|
||||
{
|
||||
_tprintf(_T("\n%s "),
|
||||
FullFileName);
|
||||
for (x2 = 0;
|
||||
x2 < IndentAccess;
|
||||
x2++)
|
||||
ConPrintf(StdOut, L"\n%s ", FullFileName);
|
||||
for (x2 = 0; x2 < IndentAccess; x2++)
|
||||
{
|
||||
_tprintf(_T(" "));
|
||||
ConPuts(StdOut, L" ");
|
||||
}
|
||||
|
||||
LoadAndPrintString(NULL,
|
||||
AccessRights[x].uID);
|
||||
ConResPuts(StdOut, AccessRights[x].uID);
|
||||
}
|
||||
}
|
||||
|
||||
_tprintf(_T("\n"));
|
||||
ConPuts(StdOut, L"\n");
|
||||
}
|
||||
}
|
||||
|
||||
_tprintf(_T("\n"));
|
||||
ConPuts(StdOut, L"\n");
|
||||
|
||||
/* free up all resources */
|
||||
if (Name != NULL)
|
||||
@@ -541,7 +382,7 @@ GetPathOfFile(LPTSTR FilePath, LPCTSTR pszFiles)
|
||||
*pch = 0;
|
||||
if (!GetFullPathName(FilePath, MAX_PATH, FullPath, NULL))
|
||||
{
|
||||
PrintErrorMessage(GetLastError());
|
||||
PrintError(GetLastError());
|
||||
return FALSE;
|
||||
}
|
||||
lstrcpyn(FilePath, FullPath, MAX_PATH);
|
||||
@@ -549,7 +390,7 @@ GetPathOfFile(LPTSTR FilePath, LPCTSTR pszFiles)
|
||||
attrs = GetFileAttributes(FilePath);
|
||||
if (attrs == 0xFFFFFFFF || !(attrs & FILE_ATTRIBUTE_DIRECTORY))
|
||||
{
|
||||
PrintErrorMessage(ERROR_DIRECTORY);
|
||||
PrintError(ERROR_DIRECTORY);
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
@@ -591,7 +432,7 @@ PrintDaclsOfFiles(LPCTSTR pszFiles)
|
||||
LastError = GetLastError();
|
||||
if (LastError == ERROR_ACCESS_DENIED)
|
||||
{
|
||||
PrintErrorMessage(LastError);
|
||||
PrintError(LastError);
|
||||
if (!OptionC)
|
||||
{
|
||||
FindClose(hFind);
|
||||
@@ -599,17 +440,21 @@ PrintDaclsOfFiles(LPCTSTR pszFiles)
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
else
|
||||
_tprintf(_T("\n"));
|
||||
{
|
||||
ConPuts(StdOut, L"\n");
|
||||
}
|
||||
} while(FindNextFile(hFind, &FindData));
|
||||
LastError = GetLastError();
|
||||
FindClose(hFind);
|
||||
|
||||
if (LastError != ERROR_NO_MORE_FILES)
|
||||
{
|
||||
PrintErrorMessage(LastError);
|
||||
PrintError(LastError);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -771,7 +616,7 @@ ChangeACLsOfFiles(LPCTSTR pszFiles)
|
||||
LastError = GetLastError();
|
||||
if (LastError == ERROR_ACCESS_DENIED)
|
||||
{
|
||||
PrintErrorMessage(LastError);
|
||||
PrintError(LastError);
|
||||
if (!OptionC)
|
||||
{
|
||||
FindClose(hFind);
|
||||
@@ -788,7 +633,7 @@ ChangeACLsOfFiles(LPCTSTR pszFiles)
|
||||
|
||||
if (LastError != ERROR_NO_MORE_FILES)
|
||||
{
|
||||
PrintErrorMessage(LastError);
|
||||
PrintError(LastError);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -826,7 +671,7 @@ ChangeACLsOfFilesInCurDir(LPCTSTR pszFiles)
|
||||
LastError = GetLastError();
|
||||
if (LastError == ERROR_ACCESS_DENIED)
|
||||
{
|
||||
PrintErrorMessage(LastError);
|
||||
PrintError(LastError);
|
||||
if (!OptionC)
|
||||
{
|
||||
FindClose(hFind);
|
||||
@@ -843,7 +688,7 @@ ChangeACLsOfFilesInCurDir(LPCTSTR pszFiles)
|
||||
|
||||
if (LastError != ERROR_NO_MORE_FILES)
|
||||
{
|
||||
PrintErrorMessage(LastError);
|
||||
PrintError(LastError);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -872,7 +717,7 @@ ChangeACLsOfFilesInCurDir(LPCTSTR pszFiles)
|
||||
LastError = GetLastError();
|
||||
if (LastError == ERROR_ACCESS_DENIED)
|
||||
{
|
||||
PrintErrorMessage(LastError);
|
||||
PrintError(LastError);
|
||||
if (!OptionC)
|
||||
{
|
||||
FindClose(hFind);
|
||||
@@ -889,26 +734,29 @@ ChangeACLsOfFilesInCurDir(LPCTSTR pszFiles)
|
||||
|
||||
if (LastError != ERROR_NO_MORE_FILES)
|
||||
{
|
||||
PrintErrorMessage(LastError);
|
||||
PrintError(LastError);
|
||||
return FALSE;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
int
|
||||
__cdecl
|
||||
_tmain(int argc, const TCHAR *argv[])
|
||||
int _tmain(int argc, const TCHAR *argv[])
|
||||
{
|
||||
INT i;
|
||||
LPTSTR pch;
|
||||
BOOL InvalidParameter = FALSE;
|
||||
|
||||
/* Initialize the Console Standard Streams */
|
||||
ConInitStdStreams();
|
||||
|
||||
if (argc <= 1)
|
||||
{
|
||||
PrintHelp();
|
||||
ConResPuts(StdOut, IDS_HELP);
|
||||
return 0;
|
||||
}
|
||||
|
||||
// FIXME: Convert to proper parsing, with support for /?
|
||||
|
||||
/*
|
||||
* parse command line options
|
||||
*/
|
||||
@@ -991,8 +839,8 @@ _tmain(int argc, const TCHAR *argv[])
|
||||
|
||||
if (InvalidParameter)
|
||||
{
|
||||
PrintErrorMessage(ERROR_INVALID_PARAMETER);
|
||||
PrintHelp();
|
||||
PrintError(ERROR_INVALID_PARAMETER);
|
||||
ConResPuts(StdOut, IDS_HELP);
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
@@ -23,7 +23,8 @@ CACLS όνομα_αρχείου [/T] [/E] [/C] [/G χρήστης:άδειες [
|
||||
C Αλλαγή (εγγραφή)\n\
|
||||
F Πλήρης έλεγχος\n\
|
||||
/D user Αποτροπή χρήστη από προσπέλαση.\n\
|
||||
Τα Wildcards μπορούν να χρησιμοποιηθούν για να προσδιορίσουν παραπαπάνω από ένα αρχεία στην εντολή.\n\
|
||||
Τα Wildcards μπορούν να χρησιμοποιηθούν για να προσδιορίσουν παραπαπάνω από\n\
|
||||
ένα αρχεία στην εντολή.\n\
|
||||
Μπορείτε να προσδιορίσετε παρπαάνω από έναν χρήστη στην εντολή.\n\n\
|
||||
Abbreviations:\n\
|
||||
CI - Container Inherit.\n\
|
||||
|
@@ -18,7 +18,8 @@ CACLS archivo [/T] [/E] [/C] [/G user:perm [...]] [/R usuario [...]]\n\
|
||||
W Escribir\n\
|
||||
C Cambiar (escribir)\n\
|
||||
F Control total\n\
|
||||
/R usuario Revoca los derechos de acceso al usuario especificado (unicamente válido con /E).\n\
|
||||
/R usuario Revoca los derechos de acceso al usuario especificado\n\
|
||||
(unicamente válido con /E).\n\
|
||||
/P user:perm Reemplaza los derechos de acceso del usuario especificado.\n\
|
||||
Perm puede ser: N Ninguno\n\
|
||||
R Leer\n\
|
||||
|
@@ -15,7 +15,8 @@ CACLS nomfichier [/T] [/E] [/C] [/G user:perm [...]] [/R user [...]]\n\
|
||||
W Écriture\n\
|
||||
C Modification (Écriture)\n\
|
||||
F Contrôle total\n\
|
||||
/R user Supprime les droits d'accès de l'utilisateur spécifié (valide uniquement avec /E).\n\
|
||||
/R user Supprime les droits d'accès de l'utilisateur spécifié\n\
|
||||
(valide uniquement avec /E).\n\
|
||||
/P user:perm Remplace les droits d'accès de l'utilisateur spécifié.\n\
|
||||
Perm peut valoir : N Aucun \n\
|
||||
R Lecture\n\
|
||||
@@ -23,7 +24,8 @@ CACLS nomfichier [/T] [/E] [/C] [/G user:perm [...]] [/R user [...]]\n\
|
||||
C Modification (Écriture)\n\
|
||||
F Contrôle total\n\
|
||||
/D user Interdit l'accès à l'utilisateur spécifié.\n\
|
||||
Il est possible d'utiliser des caractères joker pour sélectionner plus d'un fichier avec une commande.\n\
|
||||
Il est possible d'utiliser des caractères joker pour sélectionner plus d'un\n\
|
||||
fichier avec une commande.\n\
|
||||
Il est possible de spécifier plus d'un utilisateur dans une commande.\n\n\
|
||||
Abréviations:\n\
|
||||
CI - Héritage du conteneur.\n\
|
||||
|
@@ -2,7 +2,9 @@ LANGUAGE LANG_DUTCH, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_HELP "ACL's (Access Control Lists, toegangslijsten) van bestanden weergeven\nof bewerken\n\nCACLS bestandsnaam [/T] [/E] [/C] [/G gebr:toeg] [/R gebruiker [...]]\n\
|
||||
IDS_HELP "ACL's (Access Control Lists, toegangslijsten) van bestanden weergeven\n\
|
||||
of bewerken\n\n\
|
||||
CACLS bestandsnaam [/T] [/E] [/C] [/G gebr:toeg] [/R gebruiker [...]]\n\
|
||||
[/P gebr:toeg [...]] [/D gebruiker [...]]\n\
|
||||
bestandsnaam ACL's weergeven.\n\
|
||||
/T ACL's wijzigen van opgegeven bestanden in\n\
|
||||
|
@@ -24,7 +24,8 @@ CACLS nazwa pliku [/T] [/E] [/C] [/G użytkownik:dostęp [...]] [/R użytkownik
|
||||
W Zapis\n\
|
||||
C Zmiana (zapis)\n\
|
||||
F Pełny dostęp\n\
|
||||
/R użytkownik Odwołuje prawa dostępu określonemu użytkownikowi (działa tylko z opcją /E).\n\
|
||||
/R użytkownik Odwołuje prawa dostępu określonemu użytkownikowi\n\
|
||||
(działa tylko z opcją /E).\n\
|
||||
/P użytkownik:dostęp Edytuje prawa dostępu określonego użytkownika.\n\
|
||||
Poziom dostępu:\n\
|
||||
N Brak\n\
|
||||
@@ -33,7 +34,8 @@ CACLS nazwa pliku [/T] [/E] [/C] [/G użytkownik:dostęp [...]] [/R użytkownik
|
||||
C Zmiana (zapis)\n\
|
||||
F Pełny dostęp\n\
|
||||
/D użytkownik Odbiera prawa dostępu określonemu użytkownikowi.\n\
|
||||
W jednym poleceniu można edytować prawa dostępu do wielu plików, używając symboli wieloznacznych.\n\
|
||||
W jednym poleceniu można edytować prawa dostępu do wielu plików, używając\n\
|
||||
symboli wieloznacznych.\n\
|
||||
W jednym poleceniu można edytować prawa dostępu wielu użytkowników.\n\n\
|
||||
Skróty:\n\
|
||||
CI - Dziedziczenie kontenera.\n\
|
||||
|
@@ -1,4 +1,4 @@
|
||||
/* Ștefan Fulea (stefan dot fulea at mail dot md) */
|
||||
/* Translator: Ștefan Fulea (stefan dot fulea at mail dot md) */
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
@@ -26,8 +26,8 @@ CACLS nume_fișier [/T] [/E] [/C] [/G utilizator:acces [...]]\n\
|
||||
C De modificare (scriere)\n\
|
||||
F Deplin\n\
|
||||
/D utilizator Interzice accesul pentru utilizatorul specificat.\n\
|
||||
Se pot specifica mai multe fișiere utilizând metacaractere.\n\
|
||||
Pot fi specificați mai mulți utilizatori în aceiași comandă.\n\n\
|
||||
Utilizând metacaractere pot fi specificate mai multe fișiere.\n\
|
||||
În aceiași comandă pot fi specificați mai mulți utilizatori.\n\n\
|
||||
Abrevieri:\n\
|
||||
CI - Moștenire container.\n\
|
||||
ACE moștenită de directoare.\n\
|
||||
|
@@ -2,11 +2,14 @@
|
||||
#define _CACLS_PRECOMP_H
|
||||
|
||||
#include <stdarg.h>
|
||||
#include <tchar.h>
|
||||
|
||||
#include <windef.h>
|
||||
#include <winbase.h>
|
||||
#include <winuser.h>
|
||||
#include <winuser.h> // For CharPrev
|
||||
#include <sddl.h>
|
||||
#include <tchar.h>
|
||||
|
||||
#include <conutils.h>
|
||||
|
||||
#include "resource.h"
|
||||
|
||||
|
@@ -13,7 +13,7 @@ file(GLOB calc_rc_deps res/*.*)
|
||||
add_rc_deps(resource.rc ${calc_rc_deps})
|
||||
add_executable(calc ${SOURCE} resource.rc)
|
||||
set_module_type(calc win32gui UNICODE)
|
||||
add_importlibs(calc advapi32 user32 shell32 gdi32 msvcrt kernel32)
|
||||
add_importlibs(calc advapi32 comctl32 user32 shell32 gdi32 msvcrt kernel32)
|
||||
|
||||
if(MSVC)
|
||||
add_importlibs(calc ntdll)
|
||||
|
@@ -144,15 +144,17 @@ static const conv_t conv_CURRENCY[] = {
|
||||
DECLARE_CONV_UNIT(CURRENCY, AUSTRIAN_SCHILLING, "$/13,7603", "$*13,7603")
|
||||
DECLARE_CONV_UNIT(CURRENCY, BELGIAN_FRANC, "$/40,3399", "$*40,3399")
|
||||
DECLARE_CONV_UNIT(CURRENCY, CYPRIOT_POUND, "$/0,585274","$*0,585274")
|
||||
DECLARE_CONV_UNIT(CURRENCY, CZECH_KORUNA, "$/27,9766", "$*27,9766")
|
||||
DECLARE_CONV_UNIT(CURRENCY, DEUTSCHE_MARK, "$/1,9558", "$*1,9558")
|
||||
DECLARE_CONV_UNIT(CURRENCY, DEUTSCHE_MARK, "$/1,95583", "$*1,95583")
|
||||
DECLARE_CONV_UNIT(CURRENCY, DUTCH_GUILDER, "$/2,20371", "$*2,20371")
|
||||
DECLARE_CONV_UNIT(CURRENCY, ESTONIAN_KROON, "$/15,6466", "$*15,6466")
|
||||
DECLARE_CONV_UNIT(CURRENCY, EURO, "$", "$")
|
||||
DECLARE_CONV_UNIT(CURRENCY, FINNISH_MARKKA, "$/5,9457", "$*5,9457")
|
||||
DECLARE_CONV_UNIT(CURRENCY, FRENCH_FRANC, "$/6,5596", "$*6,5596")
|
||||
DECLARE_CONV_UNIT(CURRENCY, GREEK_DRACHMA, "$/340,75", "$*340,75")
|
||||
DECLARE_CONV_UNIT(CURRENCY, IRISH_POUND, "$/0,7876", "$*0,7876")
|
||||
DECLARE_CONV_UNIT(CURRENCY, FINNISH_MARKKA, "$/5,94573", "$*5,94573")
|
||||
DECLARE_CONV_UNIT(CURRENCY, FRENCH_FRANC, "$/6,55957", "$*6,55957")
|
||||
DECLARE_CONV_UNIT(CURRENCY, GREEK_DRACHMA, "$/340,751", "$*340,751")
|
||||
DECLARE_CONV_UNIT(CURRENCY, IRISH_POUND, "$/0,787564","$*0,787564")
|
||||
DECLARE_CONV_UNIT(CURRENCY, ITALIAN_LIRA, "$/1936.27", "$*1936.27")
|
||||
DECLARE_CONV_UNIT(CURRENCY, LATVIAN_LATS, "$/0,7028", "$*0,7028")
|
||||
DECLARE_CONV_UNIT(CURRENCY, LITHUANIAN_LITAS, "$/3,45280", "$*3,45280")
|
||||
DECLARE_CONV_UNIT(CURRENCY, LUXEMBOURG_FRANC, "$/40,3399", "$*40,3399")
|
||||
DECLARE_CONV_UNIT(CURRENCY, MALTESE_LIRA, "$/0.42930", "$*0.42930")
|
||||
DECLARE_CONV_UNIT(CURRENCY, PORTOGUESE_ESCUDO, "$/200,482", "$*200,482")
|
||||
|
@@ -331,7 +331,7 @@ It deletes the current calculation and all sub expressions.
|
||||
Shortcut from keyboard: ESC
|
||||
|
||||
F-E
|
||||
It enables or it disables the fixed scietific notation.
|
||||
It enables or it disables the fixed scientific notation.
|
||||
Shortcut from keyboard: V
|
||||
|
||||
0 1 2 3 4 5 6 7 8 9
|
||||
|
@@ -497,12 +497,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Чешка крона"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Германска марка"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Холандски гулден"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "Евро"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Финска марка"
|
||||
IDS_CURRENCY_FRENCH_FRANC "Френски франк"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Гръцка драхма"
|
||||
IDS_CURRENCY_IRISH_POUND "Ирландска лира"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Италианска лира"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Люксембургски франк"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Малтийска лира"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Португалско ескудо"
|
||||
|
@@ -496,12 +496,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Česká koruna"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Německá marka"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Nizozemský gulden"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "Euro"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Finská marka"
|
||||
IDS_CURRENCY_FRENCH_FRANC "Francouzský frank"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Řecká drachma"
|
||||
IDS_CURRENCY_IRISH_POUND "Irská libra"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Italská lira"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Lucemburský frank"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Maltská lira"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portugalské escudo"
|
||||
|
@@ -491,12 +491,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Tschechische Krone"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Deutsche Mark"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Niederländische Guilder"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "Euro"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Finnische Mark"
|
||||
IDS_CURRENCY_FRENCH_FRANC "Französchische Franc"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Griechische Drachme"
|
||||
IDS_CURRENCY_IRISH_POUND "Irische Pfund"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Italienische Lire"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxemburgische Franc"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Maltesische Lire"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portugiesische Escudo"
|
||||
|
@@ -491,12 +491,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Czech koruna"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Γερμανικό μάρκο"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Dutch guilder"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "Ευρώ"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Finnish markka"
|
||||
IDS_CURRENCY_FRENCH_FRANC "Γαλλικό φράγκο"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Δραχμή"
|
||||
IDS_CURRENCY_IRISH_POUND "Irish pound"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Ιταλική λίρα"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxembourg franc"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Μαλτέζικη λίρα"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Πορτογαλικό εσκούδο"
|
||||
|
@@ -331,7 +331,7 @@ BEGIN
|
||||
END
|
||||
POPUP "&Help"
|
||||
BEGIN
|
||||
MENUITEM "&Help topics", IDM_HELP_HELP
|
||||
MENUITEM "&Help Topics", IDM_HELP_HELP
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&About ReactOS Calc", IDM_HELP_ABOUT
|
||||
END
|
||||
@@ -364,7 +364,7 @@ BEGIN
|
||||
END
|
||||
POPUP "&Help"
|
||||
BEGIN
|
||||
MENUITEM "&Help topics", IDM_HELP_HELP
|
||||
MENUITEM "&Help Topics", IDM_HELP_HELP
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&About ReactOS Calc", IDM_HELP_ABOUT
|
||||
END
|
||||
@@ -387,7 +387,7 @@ BEGIN
|
||||
END
|
||||
POPUP "&Help"
|
||||
BEGIN
|
||||
MENUITEM "&Help topics", IDM_HELP_HELP
|
||||
MENUITEM "&Help Topics", IDM_HELP_HELP
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&About ReactOS Calc", IDM_HELP_ABOUT
|
||||
END
|
||||
@@ -491,12 +491,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Czech koruna"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Deutsche Mark"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Dutch guilder"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "Euro"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Finnish markka"
|
||||
IDS_CURRENCY_FRENCH_FRANC "French franc"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Greek Drachma"
|
||||
IDS_CURRENCY_IRISH_POUND "Irish pound"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Italian lira"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxembourg franc"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Maltese lira"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portuguese escudo"
|
||||
|
@@ -497,12 +497,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Corona checa"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Marco alemán"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Florín neerlandés"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "Euro"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Marco finlandés"
|
||||
IDS_CURRENCY_FRENCH_FRANC "Franco frances"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Drachma griego"
|
||||
IDS_CURRENCY_IRISH_POUND "Libra irlandesa"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Lira italiana"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Franco luxemburgués"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Lira maltesa"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Escudo portugués"
|
||||
|
@@ -491,12 +491,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Couronne tchèque"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Mark allemand"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Dutch guilder"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "Euro"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Marks finlandais"
|
||||
IDS_CURRENCY_FRENCH_FRANC "Franc français"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Drachmes grecques"
|
||||
IDS_CURRENCY_IRISH_POUND "Livre irlandaise"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Lire italienne"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Franc luxembourgeois"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Lire maltaise"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Escudo portugaise"
|
||||
|
@@ -493,12 +493,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "קורונה צ'כי"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "מארק גרמני"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "גילדר הולנדי"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "אירו"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "מארקה פינית"
|
||||
IDS_CURRENCY_FRENCH_FRANC "פרנק צרפתי"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "דרכמה יוונית"
|
||||
IDS_CURRENCY_IRISH_POUND "לירה אירית"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "לירה איטלקית"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "פרנק לוקסמבורגי"
|
||||
IDS_CURRENCY_MALTESE_LIRA "לירה מלטזי"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "אסקודו פורטגלי"
|
||||
|
@@ -499,12 +499,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Cseh korona"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Német márka"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Holland gulden"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "Euró"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Finn márka"
|
||||
IDS_CURRENCY_FRENCH_FRANC "Francia frank"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Görög drachma"
|
||||
IDS_CURRENCY_IRISH_POUND "Ír font"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Olasz líra"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxemburgi frank"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Máltai líra"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portugál escudo"
|
||||
|
@@ -491,12 +491,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Corona ceca"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Marco tedesco"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Fiorino olandese"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "Euro"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Markka finlandese"
|
||||
IDS_CURRENCY_FRENCH_FRANC "Franco francese"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Dracma greca"
|
||||
IDS_CURRENCY_IRISH_POUND "Sterlina irlandese"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Lira italiana"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Franco Lussemburghese"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Lira maltese"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Escudo portoghese"
|
||||
|
@@ -491,12 +491,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "チェコ コルナ"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "ドイツ マルク"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "オランダ ギルダー"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "ユーロ"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "フィンランド マルッカ"
|
||||
IDS_CURRENCY_FRENCH_FRANC "フランス フラン"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "ギリシャ ドラクマ"
|
||||
IDS_CURRENCY_IRISH_POUND "アイルランド ポンド"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "イタリア リラ"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "ルクセンブルク フラン"
|
||||
IDS_CURRENCY_MALTESE_LIRA "マルタ リラ"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "ポルトガル エスクード"
|
||||
|
@@ -493,12 +493,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Czech koruna"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Deutsche Mark"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Dutch guilder"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "Euro"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Finnish markka"
|
||||
IDS_CURRENCY_FRENCH_FRANC "French franc"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Greek Drachma"
|
||||
IDS_CURRENCY_IRISH_POUND "Irish pound"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Italian lira"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxembourg franc"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Maltese lira"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portoguese escudo"
|
||||
|
@@ -491,12 +491,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Tsjechische kroon"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Duitse Mark"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Nederlandse gulden"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "Euro"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Finse markka"
|
||||
IDS_CURRENCY_FRENCH_FRANC "Franse franc"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Griekse Drachma"
|
||||
IDS_CURRENCY_IRISH_POUND "Ierse pound"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Italiaanse lira"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxemburgse franc"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Maltese lira"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portugese escudo"
|
||||
|
@@ -491,12 +491,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Tsjekkisk koruna"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Tusk Mark"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Nederlansk guilder"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "Euro"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Finisk markka"
|
||||
IDS_CURRENCY_FRENCH_FRANC "Fransk franc"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Gresk Drachma"
|
||||
IDS_CURRENCY_IRISH_POUND "Irisk pound"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Italiask lira"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxembourg franc"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Maltesisk lira"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portogisisk escudo"
|
||||
|
@@ -500,12 +500,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Czeska korona"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Niemiecka marka"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Holenderki gulden"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "Euro"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Fińska marka"
|
||||
IDS_CURRENCY_FRENCH_FRANC "Francuski frank"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Grecka drachma"
|
||||
IDS_CURRENCY_IRISH_POUND "Irlandzki funt"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Włoskie liry"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Luksemburski frank"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Maltańskie liry"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portugalskie escudo"
|
||||
|
@@ -493,12 +493,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Coroa checa"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Marco alemão"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Florim neerlandês"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "Euro"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Marco finlandês"
|
||||
IDS_CURRENCY_FRENCH_FRANC "Franco francês"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Dracma"
|
||||
IDS_CURRENCY_IRISH_POUND "Libra irlandesa"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Lira italiana"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Franco luxemburguês"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Lira maltesa"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Escudo português"
|
||||
|
@@ -496,12 +496,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Coroană cehă"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Marcă nemțească"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Guilder olandez"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "Euro"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Marcă finlandeză"
|
||||
IDS_CURRENCY_FRENCH_FRANC "Franc framcez"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Drahmă grecească"
|
||||
IDS_CURRENCY_IRISH_POUND "Liră irlandeză"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Liră italiană"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Franc luxemburghez"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Litră malteză"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Escudo portughez"
|
||||
|
@@ -491,12 +491,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Чешская крона"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Немецкая марка"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Голландский гульден"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "Евро"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Финская марка"
|
||||
IDS_CURRENCY_FRENCH_FRANC "Французский франк"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Греческая драхма"
|
||||
IDS_CURRENCY_IRISH_POUND "Ирландский фунт"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Итальянская лира"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Люксембургский франк"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Мальтийская лира"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Португальское эскудо"
|
||||
|
@@ -498,12 +498,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Česká koruna"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Nemecká marka"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Holandský gulden"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "Euro"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Fínska marka"
|
||||
IDS_CURRENCY_FRENCH_FRANC "Francúzsky frank"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Grécka drachma"
|
||||
IDS_CURRENCY_IRISH_POUND "Írska libra"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Talianská líra"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxemburský frank"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Maltská líra"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portugalské escudo"
|
||||
|
@@ -495,12 +495,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Koruna Czech"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Deutsche Mark"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Deutsche Mark"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "Euro"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Finnish marka"
|
||||
IDS_CURRENCY_FRENCH_FRANC "Franga Franceze"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Drachma Greeke"
|
||||
IDS_CURRENCY_IRISH_POUND "Poundi irlandes"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Lira Italiane"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxembourg franc"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Lira Maltese"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Escudo Portugez"
|
||||
|
@@ -498,12 +498,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Tjeckisk koruna"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Tysk Mark"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Nederlänsk guilder"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "Euro"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Finisk mark"
|
||||
IDS_CURRENCY_FRENCH_FRANC "Fransk franc"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Gresk Drachma"
|
||||
IDS_CURRENCY_IRISH_POUND "Irisk pound"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Italiask lire"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxembourg franc"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Maltesisk lire"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portogisisk escudo"
|
||||
|
@@ -491,12 +491,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Czech koruna"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Deutsche Mark"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Dutch guilder"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "ยูโร"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Finnish markka"
|
||||
IDS_CURRENCY_FRENCH_FRANC "French franc"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Greek Drachma"
|
||||
IDS_CURRENCY_IRISH_POUND "Irish pound"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Italian lira"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxembourg franc"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Maltese lira"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portoguese escudo"
|
||||
|
@@ -320,14 +320,14 @@ BEGIN
|
||||
MENUITEM "&Bilimlik", IDM_VIEW_SCIENTIFIC
|
||||
MENUITEM "&Dönüştürme", IDM_VIEW_CONVERSION
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Onaltılık\tİ5", IDM_VIEW_HEX, CHECKED
|
||||
MENUITEM "O&nluk\tİ6", IDM_VIEW_DEC, CHECKED
|
||||
MENUITEM "&Sekizlik\tİ7", IDM_VIEW_OCT, CHECKED
|
||||
MENUITEM "&İkilik\tİ8", IDM_VIEW_BIN, CHECKED
|
||||
MENUITEM "&Onaltılık\tF5", IDM_VIEW_HEX, CHECKED
|
||||
MENUITEM "O&nluk\tF6", IDM_VIEW_DEC, CHECKED
|
||||
MENUITEM "&Sekizlik\tF7", IDM_VIEW_OCT, CHECKED
|
||||
MENUITEM "&İkilik\tF8", IDM_VIEW_BIN, CHECKED
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "D&erece\tİ2", IDM_VIEW_DEG, CHECKED
|
||||
MENUITEM "&Radyan\tİ3", IDM_VIEW_RAD, CHECKED
|
||||
MENUITEM "&Gradyan\tİ4", IDM_VIEW_GRAD, CHECKED
|
||||
MENUITEM "D&erece\tF2", IDM_VIEW_DEG, CHECKED
|
||||
MENUITEM "&Radyan\tF3", IDM_VIEW_RAD, CHECKED
|
||||
MENUITEM "&Gradyan\tF4", IDM_VIEW_GRAD, CHECKED
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "B&asamakları Takımla", IDM_VIEW_GROUP, CHECKED
|
||||
END
|
||||
@@ -352,15 +352,15 @@ BEGIN
|
||||
MENUITEM "&Bilimlik", IDM_VIEW_SCIENTIFIC
|
||||
MENUITEM "&Dönüştürme", IDM_VIEW_CONVERSION
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Onaltılık\tİ5", IDM_VIEW_HEX, CHECKED
|
||||
MENUITEM "O&nluk\tİ6", IDM_VIEW_DEC, CHECKED
|
||||
MENUITEM "&Sekizlik\tİ7", IDM_VIEW_OCT, CHECKED
|
||||
MENUITEM "&İkilik\tİ8", IDM_VIEW_BIN, CHECKED
|
||||
MENUITEM "&Onaltılık\tF5", IDM_VIEW_HEX, CHECKED
|
||||
MENUITEM "O&nluk\tF6", IDM_VIEW_DEC, CHECKED
|
||||
MENUITEM "&Sekizlik\tF7", IDM_VIEW_OCT, CHECKED
|
||||
MENUITEM "&İkilik\tF8", IDM_VIEW_BIN, CHECKED
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Dö&rtlü Sözcük\tİ12", IDM_VIEW_QWORD, CHECKED
|
||||
MENUITEM "İ&kili Sözcük\tİ2", IDM_VIEW_DWORD, CHECKED
|
||||
MENUITEM "Sö&zcük\tİ3", IDM_VIEW_WORD, CHECKED
|
||||
MENUITEM "&Çoklu\tİ4", IDM_VIEW_BYTE, CHECKED
|
||||
MENUITEM "Dö&rtlü Sözcük\tF12", IDM_VIEW_QWORD, CHECKED
|
||||
MENUITEM "İ&kili Sözcük\tF2", IDM_VIEW_DWORD, CHECKED
|
||||
MENUITEM "Sö&zcük\tF3", IDM_VIEW_WORD, CHECKED
|
||||
MENUITEM "&Çoklu\tF4", IDM_VIEW_BYTE, CHECKED
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "B&asamakları Takımla", IDM_VIEW_GROUP, CHECKED
|
||||
END
|
||||
@@ -493,12 +493,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Çek Korunası"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Alman Markı"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Hollanda Guilderi"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "Avro"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Fin Markkası"
|
||||
IDS_CURRENCY_FRENCH_FRANC "Fransız Frangı"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Yunan Drahmisi"
|
||||
IDS_CURRENCY_IRISH_POUND "İrlanda Pondu"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "İtalyan Lirası"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Lüksemburg Frangı"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Malta Lirası"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portekiz Esküdosu"
|
||||
|
@@ -499,12 +499,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Чешська крона"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Немецька марка"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Голандський гульден"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "Євро"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Фінська марка"
|
||||
IDS_CURRENCY_FRENCH_FRANC "Французський франк"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Грецька драхма"
|
||||
IDS_CURRENCY_IRISH_POUND "Ірландський фунт"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Італьянськая ліра"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Люксембургський франк"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Мальтийськая ліра"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Португальське ескудо"
|
||||
|
@@ -493,12 +493,15 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "捷克克朗"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "德国马克"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "荷兰盾"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
|
||||
IDS_CURRENCY_EURO "欧元"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "芬兰马克"
|
||||
IDS_CURRENCY_FRENCH_FRANC "法郎"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "希腊德拉克马"
|
||||
IDS_CURRENCY_IRISH_POUND "爱尔兰镑"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "意大利里拉"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "卢森堡法郎"
|
||||
IDS_CURRENCY_MALTESE_LIRA "马耳他里拉"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "葡萄牙埃斯库多"
|
||||
|
@@ -171,18 +171,21 @@
|
||||
#define IDS_CURRENCY_CZECH_KORUNA 2403
|
||||
#define IDS_CURRENCY_DEUTSCHE_MARK 2404
|
||||
#define IDS_CURRENCY_DUTCH_GUILDER 2405
|
||||
#define IDS_CURRENCY_EURO 2406
|
||||
#define IDS_CURRENCY_FINNISH_MARKKA 2407
|
||||
#define IDS_CURRENCY_FRENCH_FRANC 2408
|
||||
#define IDS_CURRENCY_GREEK_DRACHMA 2409
|
||||
#define IDS_CURRENCY_IRISH_POUND 2410
|
||||
#define IDS_CURRENCY_ITALIAN_LIRA 2411
|
||||
#define IDS_CURRENCY_LUXEMBOURG_FRANC 2412
|
||||
#define IDS_CURRENCY_MALTESE_LIRA 2413
|
||||
#define IDS_CURRENCY_PORTOGUESE_ESCUDO 2414
|
||||
#define IDS_CURRENCY_SLOVAK_KORUNA 2415
|
||||
#define IDS_CURRENCY_SLOVENIAN_TOLAR 2416
|
||||
#define IDS_CURRENCY_SPANISH_PESETA 2417
|
||||
#define IDS_CURRENCY_ESTONIAN_KROON 2406
|
||||
#define IDS_CURRENCY_EURO 2407
|
||||
#define IDS_CURRENCY_FINNISH_MARKKA 2408
|
||||
#define IDS_CURRENCY_FRENCH_FRANC 2409
|
||||
#define IDS_CURRENCY_GREEK_DRACHMA 2410
|
||||
#define IDS_CURRENCY_IRISH_POUND 2411
|
||||
#define IDS_CURRENCY_ITALIAN_LIRA 2412
|
||||
#define IDS_CURRENCY_LATVIAN_LATS 2413
|
||||
#define IDS_CURRENCY_LITHUANIAN_LITAS 2414
|
||||
#define IDS_CURRENCY_LUXEMBOURG_FRANC 2415
|
||||
#define IDS_CURRENCY_MALTESE_LIRA 2416
|
||||
#define IDS_CURRENCY_PORTOGUESE_ESCUDO 2417
|
||||
#define IDS_CURRENCY_SLOVAK_KORUNA 2418
|
||||
#define IDS_CURRENCY_SLOVENIAN_TOLAR 2419
|
||||
#define IDS_CURRENCY_SPANISH_PESETA 2420
|
||||
|
||||
/* TYPES OF ENERGIES */
|
||||
#define IDS_ENERGY_15_C_CALORIES 2500
|
||||
|
@@ -314,7 +314,7 @@ void run_operator(calc_node_t *result,
|
||||
calc.is_nan = TRUE;
|
||||
} else {
|
||||
operator_list[operation].op_i(&dc, &da, &db);
|
||||
/* apply final limitator to result */
|
||||
/* apply final limiter to result */
|
||||
apply_int_mask(&dc);
|
||||
}
|
||||
|
||||
|
@@ -300,7 +300,7 @@ void run_operator(calc_node_t *result,
|
||||
operator_list[operation].op_f(&result->number, &a->number, &b->number);
|
||||
} else {
|
||||
operator_list[operation].op_i(&result->number, &a->number, &b->number);
|
||||
/* apply final limitator to result */
|
||||
/* apply final limiter to result */
|
||||
apply_int_mask(&result->number);
|
||||
}
|
||||
}
|
||||
|
@@ -11,7 +11,7 @@ void prepare_rpn_result_2(calc_number_t *rpn, TCHAR *buffer, int size, int base)
|
||||
break;
|
||||
case IDC_RADIO_DEC:
|
||||
/*
|
||||
* Modifed from 17 to 16 for fixing this bug:
|
||||
* Modified from 17 to 16 for fixing this bug:
|
||||
* 14+14+6.3+6.3= 40.5999999 instead of 40.6
|
||||
* So, it's probably better to leave the least
|
||||
* significant digit out of the display.
|
||||
@@ -25,7 +25,7 @@ void prepare_rpn_result_2(calc_number_t *rpn, TCHAR *buffer, int size, int base)
|
||||
TCHAR *ptr, *dst;
|
||||
|
||||
ptr = buffer + _stprintf(buffer, TEXT("%#*.*f"), width, ((MAX_LD_WIDTH-width-1)>=0) ? MAX_LD_WIDTH-width-1 : 0, rpn->f);
|
||||
/* format sring ensures there is a '.': */
|
||||
/* format string ensures there is a '.': */
|
||||
dst = _tcschr(buffer, TEXT('.'));
|
||||
while (--ptr > dst)
|
||||
if (*ptr != TEXT('0'))
|
||||
|
@@ -34,7 +34,7 @@
|
||||
* Corrected precision underflow/overflow when working with trigonometric functions.
|
||||
* cbrt() function is not used if compiling into ReactOS build system.
|
||||
* Resources are moved into /res directory.
|
||||
* Added new (partial) support for other languages: bulgarian, spanish, german, dutch, polish, russian, slovak, ukraianian.
|
||||
* Added new (partial) support for other languages: bulgarian, spanish, german, dutch, polish, russian, slovak, ukrainian.
|
||||
* Decimal precision of number with standard layout has been limited to 16 digits because the output display is smaller here (GMP version only).
|
||||
* Fixed buffer overflow with function update_lcd_display().
|
||||
* The decimal point is now preserved when switching to temporary scientific notation.
|
||||
|
@@ -4,6 +4,7 @@
|
||||
#include <wingdi.h>
|
||||
#include <winreg.h>
|
||||
#include <shellapi.h>
|
||||
#include <commctrl.h>
|
||||
|
||||
#define HTMLHELP_PATH(_pt) TEXT("%systemroot%\\Help\\calc.chm::") TEXT(_pt)
|
||||
|
||||
@@ -212,8 +213,8 @@ static const function_table_t function_table[] = {
|
||||
{ IDC_BUTTON_DMS, MODIFIER_INV, 1, rpn_dec2dms, rpn_dms2dec, NULL, NULL },
|
||||
{ IDC_BUTTON_FE, 0, 1, run_fe, NULL, NULL, NULL },
|
||||
{ IDC_BUTTON_DAT, 0, 1, run_dat_sta, NULL, NULL, NULL, },
|
||||
{ IDC_BUTTON_MP, MODIFIER_INV, 1, run_mp, run_mm, NULL, NULL, },
|
||||
{ IDC_BUTTON_MS, MODIFIER_INV, 1, run_ms, run_mw, NULL, NULL, },
|
||||
{ IDC_BUTTON_MP, MODIFIER_INV|NO_CHAIN, 1, run_mp, run_mm, NULL, NULL, },
|
||||
{ IDC_BUTTON_MS, MODIFIER_INV|NO_CHAIN, 1, run_ms, run_mw, NULL, NULL, },
|
||||
{ IDC_BUTTON_CANC, NO_CHAIN, 0, run_canc, NULL, NULL, NULL, },
|
||||
{ IDC_BUTTON_RIGHTPAR, NO_CHAIN, 1, run_rpar, NULL, NULL, NULL, },
|
||||
{ IDC_BUTTON_LEFTPAR, NO_CHAIN, 0, run_lpar, NULL, NULL, NULL, },
|
||||
@@ -435,7 +436,7 @@ KeyboardHookProc(int nCode, WPARAM wParam, LPARAM lParam)
|
||||
static void update_lcd_display(HWND hwnd)
|
||||
{
|
||||
/*
|
||||
* muliply size of calc.buffer by 2 because it may
|
||||
* multiply size of calc.buffer by 2 because it may
|
||||
* happen that separator is used between each digit.
|
||||
* Also added little additional space for dot and '\0'.
|
||||
*/
|
||||
@@ -933,15 +934,18 @@ static INT_PTR CALLBACK DlgStatProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static WPARAM idm_2_idc(int idm)
|
||||
static BOOL idm_2_idc(int idm, WPARAM *pIdc)
|
||||
{
|
||||
int x;
|
||||
|
||||
for (x=0; x<SIZEOF(upd); x++) {
|
||||
if (upd[x].idm == idm)
|
||||
break;
|
||||
{
|
||||
*pIdc = (WPARAM)(upd[x].idc);
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
return (WPARAM)(upd[x].idc);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static void CopyMemToClipboard(void *ptr)
|
||||
@@ -1408,8 +1412,15 @@ static INT_PTR CALLBACK DlgMainProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp)
|
||||
case IDM_VIEW_DWORD:
|
||||
case IDM_VIEW_WORD:
|
||||
case IDM_VIEW_BYTE:
|
||||
SendMessage(hWnd, WM_COMMAND, idm_2_idc(LOWORD(wp)), 0);
|
||||
return TRUE;
|
||||
{
|
||||
WPARAM idc;
|
||||
if(idm_2_idc(LOWORD(wp), &idc))
|
||||
{
|
||||
SendMessage(hWnd, WM_COMMAND, idc, 0);
|
||||
return TRUE;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
case IDM_EDIT_COPY:
|
||||
handle_copy_command(hWnd);
|
||||
return TRUE;
|
||||
@@ -1775,6 +1786,8 @@ int WINAPI _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdL
|
||||
MSG msg;
|
||||
DWORD dwLayout;
|
||||
|
||||
InitCommonControls();
|
||||
|
||||
calc.hInstance = hInstance;
|
||||
|
||||
calc.x_coord = -1;
|
||||
|
@@ -58,7 +58,7 @@ extern void LoadSettings(void)
|
||||
if (RegOpenKeyEx(HKEY_CURRENT_USER, g_szGeneralRegKey, 0, KEY_READ, &hKey) == ERROR_SUCCESS)
|
||||
{
|
||||
TCHAR szBuffer[MAX_PATH];
|
||||
DWORD dwAdvanChecked;
|
||||
DWORD dwAdvancedChecked;
|
||||
unsigned long type = REG_DWORD, size = 1024;
|
||||
|
||||
/* Restore last selected font */
|
||||
@@ -89,9 +89,9 @@ extern void LoadSettings(void)
|
||||
}
|
||||
}
|
||||
|
||||
RegQueryValueEx(hKey, _T("Advanced"), NULL, &type, (LPBYTE)&dwAdvanChecked, &size);
|
||||
RegQueryValueEx(hKey, _T("Advanced"), NULL, &type, (LPBYTE)&dwAdvancedChecked, &size);
|
||||
|
||||
if(dwAdvanChecked == TRUE)
|
||||
if(dwAdvancedChecked == TRUE)
|
||||
SendDlgItemMessage(hCharmapDlg, IDC_CHECK_ADVANCED, BM_CLICK, MF_CHECKED, 0);
|
||||
|
||||
RegCloseKey(hKey);
|
||||
|
@@ -69,7 +69,7 @@ CGridView::SetFont(
|
||||
)
|
||||
{
|
||||
|
||||
// Create a temperary container for the new font
|
||||
// Create a temporary container for the new font
|
||||
CurrentFont NewFont = { 0 };
|
||||
NewFont.FontName = FontName;
|
||||
|
||||
@@ -224,7 +224,7 @@ CGridView::OnSize(
|
||||
SWP_NOZORDER | SWP_SHOWWINDOW);
|
||||
|
||||
// Get the client area we can draw on. The position we set above includes
|
||||
// a scrollbar which we obvioulsy can't draw on. GetClientRect gives us
|
||||
// a scrollbar which we obviously can't draw on. GetClientRect gives us
|
||||
// the size without the scroll, and it's more efficient than getting the
|
||||
// scroll metrics and calculating the size from that
|
||||
RECT ClientRect;
|
||||
|
@@ -1,8 +1,7 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Device Managment
|
||||
* PROJECT: ReactOS Character Map
|
||||
* LICENSE: GPL - See COPYING in the top level directory
|
||||
* FILE: base/applications/mscutils/devmgmt/devmgmt.c
|
||||
* PURPOSE: Bootstrap for the device manager
|
||||
* FILE: base/applications/charmap/charmap.cpp
|
||||
* COPYRIGHT: Copyright 2006 Ged Murphy <gedmurphy@gmail.com>
|
||||
*/
|
||||
|
||||
|
@@ -16,6 +16,9 @@ CLPFILE_ICON ICON "res/clpfile.ico"
|
||||
/* UTF-8 */
|
||||
#pragma code_page(65001)
|
||||
|
||||
#ifdef LANGUAGE_CS_CZ
|
||||
#include "lang/cs-CZ.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_DE_DE
|
||||
#include "lang/de-DE.rc"
|
||||
#endif
|
||||
|
65
reactos/base/applications/clipbrd/lang/cs-CZ.rc
Normal file
65
reactos/base/applications/clipbrd/lang/cs-CZ.rc
Normal file
@@ -0,0 +1,65 @@
|
||||
LANGUAGE LANG_CZECH, SUBLANG_DEFAULT
|
||||
|
||||
ID_ACCEL ACCELERATORS
|
||||
BEGIN
|
||||
VK_DELETE, CMD_DELETE, VIRTKEY
|
||||
END
|
||||
|
||||
MAIN_MENU MENU
|
||||
BEGIN
|
||||
POPUP "&Soubor"
|
||||
BEGIN
|
||||
MENUITEM "&Otevřít...", CMD_OPEN
|
||||
MENUITEM "&Uložit jako...", CMD_SAVE_AS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Konec", CMD_EXIT
|
||||
END
|
||||
POPUP "&Upravit"
|
||||
BEGIN
|
||||
MENUITEM "&Smazat\tDel", CMD_DELETE
|
||||
END
|
||||
POPUP "&Zobrazení"
|
||||
BEGIN
|
||||
MENUITEM "&Automaticky", CMD_AUTOMATIC
|
||||
END
|
||||
POPUP "&Nápověda"
|
||||
BEGIN
|
||||
MENUITEM "&Zobrazit nápovědu", CMD_HELP
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&O programu", CMD_ABOUT
|
||||
END
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
STRING_CLIPBOARD "Prohlížeč schránky"
|
||||
STRING_CLIPFILE "Prvek schránky"
|
||||
STRING_DELETE_MSG "Vymazat obsah stránky?"
|
||||
STRING_DELETE_TITLE "Vymazat schránku"
|
||||
STRING_FORMAT_NT "Soubory schránky systému ReactOS (*.clp)"
|
||||
STRING_FORMAT_GEN "Soubory schránky (*.clp)"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
STRING_CF_UNKNOWN "Neznámý formát"
|
||||
STRING_CF_TEXT "Text"
|
||||
STRING_CF_BITMAP "Bitmapa"
|
||||
STRING_CF_OEMTEXT "Text OEM"
|
||||
STRING_CF_UNICODETEXT "Text Unicode"
|
||||
STRING_CF_DIB "DIB bitmapa"
|
||||
STRING_CF_LOCALE "Data znakové sady"
|
||||
STRING_CF_ENHMETAFILE "Rožířený soubor Metafile"
|
||||
STRING_CF_METAFILEPICT "Metafile"
|
||||
STRING_CF_PALETTE "Barevná paleta"
|
||||
STRING_CF_DIBV5 "DIB bitmapa (Verze 5)"
|
||||
STRING_CF_SYLK "Symbolický odkaz"
|
||||
STRING_CF_DIF "Formát výměny dat"
|
||||
STRING_CF_HDROP "Data přetažení"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
ERROR_UNSUPPORTED_FORMAT "Schránka obsahuje data ve formátu, který není možné zobrazit."
|
||||
ERROR_INVALID_FILE_FORMAT "Vybraný soubor není platný soubor schránky."
|
||||
END
|
@@ -10,7 +10,7 @@ BEGIN
|
||||
POPUP "&File"
|
||||
BEGIN
|
||||
MENUITEM "&Open...", CMD_OPEN
|
||||
MENUITEM "Save &as...", CMD_SAVE_AS
|
||||
MENUITEM "Save &As...", CMD_SAVE_AS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "E&xit", CMD_EXIT
|
||||
END
|
||||
|
@@ -45,17 +45,17 @@ BEGIN
|
||||
STRING_CF_UNKNOWN "Неизвестный формат"
|
||||
STRING_CF_TEXT "Текст"
|
||||
STRING_CF_BITMAP "Точечный рисунок"
|
||||
STRING_CF_OEMTEXT "OEM текст"
|
||||
STRING_CF_UNICODETEXT "Юникод текст"
|
||||
STRING_CF_DIB "DIB точечный рисунок"
|
||||
STRING_CF_LOCALE "Locale Data"
|
||||
STRING_CF_ENHMETAFILE "Enhanced Metafile"
|
||||
STRING_CF_METAFILEPICT "Metafile"
|
||||
STRING_CF_OEMTEXT "Текст в кодировке OEM"
|
||||
STRING_CF_UNICODETEXT "Текст в кодировке Юникод"
|
||||
STRING_CF_DIB "Аппаратно-независимый точечный рисунок (DIB)"
|
||||
STRING_CF_LOCALE "Языковые данные"
|
||||
STRING_CF_ENHMETAFILE "Расширенный метафайл"
|
||||
STRING_CF_METAFILEPICT "Метафайл"
|
||||
STRING_CF_PALETTE "Цветовая палитра"
|
||||
STRING_CF_DIBV5 "DIB точечный рисунок (Версия 5)"
|
||||
STRING_CF_SYLK "Symbolic Link Format"
|
||||
STRING_CF_DIF "Data Interchange Format"
|
||||
STRING_CF_HDROP "Drop Data"
|
||||
STRING_CF_DIBV5 "Аппаратно-независимый точечный рисунок (DIB) (Версия 5)"
|
||||
STRING_CF_SYLK "Формат символических ссылок"
|
||||
STRING_CF_DIF "Формат обмена данными"
|
||||
STRING_CF_HDROP "Очистить данные"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
|
@@ -2,7 +2,7 @@
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS Clipboard Viewer
|
||||
* FILE: base/applications/clipbrd/scrollutils.c
|
||||
* PURPOSE: Scrolling releated helper functions.
|
||||
* PURPOSE: Scrolling related helper functions.
|
||||
* PROGRAMMERS: Ricardo Hanke
|
||||
*/
|
||||
|
||||
|
@@ -2,7 +2,7 @@
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS Clipboard Viewer
|
||||
* FILE: base/applications/clipbrd/scrollutils.h
|
||||
* PURPOSE: Scrolling releated helper functions.
|
||||
* PURPOSE: Scrolling related helper functions.
|
||||
* PROGRAMMERS: Ricardo Hanke
|
||||
*/
|
||||
|
||||
|
@@ -14,9 +14,21 @@ void ShowLastWin32Error(HWND hwndParent)
|
||||
LPWSTR lpMsgBuf = NULL;
|
||||
|
||||
dwError = GetLastError();
|
||||
if (dwError == ERROR_SUCCESS)
|
||||
return;
|
||||
|
||||
if (!FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER |
|
||||
FORMAT_MESSAGE_FROM_SYSTEM |
|
||||
FORMAT_MESSAGE_IGNORE_INSERTS,
|
||||
NULL,
|
||||
dwError,
|
||||
LANG_USER_DEFAULT,
|
||||
(LPWSTR)&lpMsgBuf,
|
||||
0, NULL))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
|
||||
NULL, dwError, 0, (LPWSTR)&lpMsgBuf, 0, NULL);
|
||||
MessageBoxW(hwndParent, lpMsgBuf, NULL, MB_OK | MB_ICONERROR);
|
||||
LocalFree(lpMsgBuf);
|
||||
}
|
||||
|
@@ -1,13 +1,16 @@
|
||||
add_subdirectory(at)
|
||||
add_subdirectory(clip)
|
||||
add_subdirectory(comp)
|
||||
add_subdirectory(cscript)
|
||||
add_subdirectory(dbgprint)
|
||||
add_subdirectory(doskey)
|
||||
add_subdirectory(eventcreate)
|
||||
add_subdirectory(find)
|
||||
add_subdirectory(help)
|
||||
add_subdirectory(hostname)
|
||||
add_subdirectory(lodctr)
|
||||
add_subdirectory(mode)
|
||||
add_subdirectory(mofcomp)
|
||||
add_subdirectory(more)
|
||||
add_subdirectory(reg)
|
||||
add_subdirectory(schtasks)
|
||||
|
8
reactos/base/applications/cmdutils/at/CMakeLists.txt
Normal file
8
reactos/base/applications/cmdutils/at/CMakeLists.txt
Normal file
@@ -0,0 +1,8 @@
|
||||
|
||||
include_directories(${REACTOS_SOURCE_DIR}/sdk/lib/conutils)
|
||||
|
||||
add_executable(at at.c at.rc)
|
||||
set_module_type(at win32cui UNICODE)
|
||||
target_link_libraries(at conutils ${PSEH_LIB})
|
||||
add_importlibs(at msvcrt kernel32 user32 netapi32)
|
||||
add_cd_file(TARGET at DESTINATION reactos/system32 FOR all)
|
936
reactos/base/applications/cmdutils/at/at.c
Normal file
936
reactos/base/applications/cmdutils/at/at.c
Normal file
@@ -0,0 +1,936 @@
|
||||
/*
|
||||
* PROJECT: ReactOS AT utility
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* FILE: base/applications/cmdutils/at/at.c
|
||||
* PURPOSE: ReactOS AT utility
|
||||
* PROGRAMMERS: Eric Kohl <eric.kohl@reactos.org>
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#include <windef.h>
|
||||
#include <winbase.h>
|
||||
#include <winuser.h>
|
||||
#include <wincon.h>
|
||||
#include <winnls.h>
|
||||
#include <lm.h>
|
||||
|
||||
#include <conutils.h>
|
||||
|
||||
#include "resource.h"
|
||||
|
||||
|
||||
PWSTR pszDaysOfWeekArray[7] = {NULL, NULL, NULL, NULL, NULL, NULL, NULL};
|
||||
|
||||
|
||||
static
|
||||
VOID
|
||||
FreeDaysOfWeekArray(VOID)
|
||||
{
|
||||
INT i;
|
||||
|
||||
for (i = 0; i < 7; i++)
|
||||
{
|
||||
if (pszDaysOfWeekArray[i] != NULL)
|
||||
HeapFree(GetProcessHeap(), 0, pszDaysOfWeekArray[i]);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static
|
||||
BOOL
|
||||
InitDaysOfWeekArray(VOID)
|
||||
{
|
||||
INT i, nLength;
|
||||
|
||||
for (i = 0; i < 7; i++)
|
||||
{
|
||||
nLength = GetLocaleInfo(LOCALE_USER_DEFAULT,
|
||||
LOCALE_SABBREVDAYNAME1 + i,
|
||||
NULL,
|
||||
0);
|
||||
|
||||
pszDaysOfWeekArray[i] = HeapAlloc(GetProcessHeap(),
|
||||
HEAP_ZERO_MEMORY,
|
||||
nLength * sizeof(WCHAR));
|
||||
if (pszDaysOfWeekArray[i] == NULL)
|
||||
{
|
||||
FreeDaysOfWeekArray();
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
GetLocaleInfo(LOCALE_USER_DEFAULT,
|
||||
LOCALE_SABBREVDAYNAME1 + i,
|
||||
pszDaysOfWeekArray[i],
|
||||
nLength);
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
static
|
||||
BOOL
|
||||
ParseTime(
|
||||
PWSTR pszTime,
|
||||
PULONG pulJobHour,
|
||||
PULONG pulJobMinute)
|
||||
{
|
||||
WCHAR szHour[3], szMinute[3], szAmPm[5];
|
||||
PWSTR startPtr, endPtr;
|
||||
ULONG ulHour = 0, ulMinute = 0;
|
||||
INT nLength;
|
||||
|
||||
if (pszTime == NULL)
|
||||
return FALSE;
|
||||
|
||||
startPtr = pszTime;
|
||||
|
||||
/* Extract the hour string */
|
||||
nLength = 0;
|
||||
while (*startPtr != L'\0' && iswdigit(*startPtr))
|
||||
{
|
||||
if (nLength >= 2)
|
||||
return FALSE;
|
||||
|
||||
szHour[nLength] = *startPtr;
|
||||
nLength++;
|
||||
|
||||
startPtr++;
|
||||
}
|
||||
szHour[nLength] = L'\0';
|
||||
|
||||
/* Check for a valid time separator */
|
||||
if (*startPtr != L':')
|
||||
return FALSE;
|
||||
|
||||
/* Skip the time separator */
|
||||
startPtr++;
|
||||
|
||||
/* Extract the minute string */
|
||||
nLength = 0;
|
||||
while (*startPtr != L'\0' && iswdigit(*startPtr))
|
||||
{
|
||||
if (nLength >= 2)
|
||||
return FALSE;
|
||||
|
||||
szMinute[nLength] = *startPtr;
|
||||
nLength++;
|
||||
|
||||
startPtr++;
|
||||
}
|
||||
szMinute[nLength] = L'\0';
|
||||
|
||||
/* Extract the optional AM/PM indicator string */
|
||||
nLength = 0;
|
||||
while (*startPtr != L'\0')
|
||||
{
|
||||
if (nLength >= 4)
|
||||
return FALSE;
|
||||
|
||||
if (!iswspace(*startPtr))
|
||||
{
|
||||
szAmPm[nLength] = *startPtr;
|
||||
nLength++;
|
||||
}
|
||||
|
||||
startPtr++;
|
||||
}
|
||||
szAmPm[nLength] = L'\0';
|
||||
|
||||
/* Convert the hour string */
|
||||
ulHour = wcstoul(szHour, &endPtr, 10);
|
||||
if (ulHour == 0 && *endPtr != UNICODE_NULL)
|
||||
return FALSE;
|
||||
|
||||
/* Convert the minute string */
|
||||
ulMinute = wcstoul(szMinute, &endPtr, 10);
|
||||
if (ulMinute == 0 && *endPtr != UNICODE_NULL)
|
||||
return FALSE;
|
||||
|
||||
/* Check for valid AM/PM indicator */
|
||||
if (wcslen(szAmPm) > 0 &&
|
||||
_wcsicmp(szAmPm, L"a") != 0 &&
|
||||
_wcsicmp(szAmPm, L"am") != 0 &&
|
||||
_wcsicmp(szAmPm, L"p") != 0 &&
|
||||
_wcsicmp(szAmPm, L"pm") != 0)
|
||||
return FALSE;
|
||||
|
||||
/* Check for the valid minute range [0-59] */
|
||||
if (ulMinute > 59)
|
||||
return FALSE;
|
||||
|
||||
if (wcslen(szAmPm) > 0)
|
||||
{
|
||||
/* 12 hour time format */
|
||||
|
||||
/* Check for the valid hour range [1-12] */
|
||||
if (ulHour == 0 || ulHour > 12)
|
||||
return FALSE;
|
||||
|
||||
/* Convert 12 hour format to 24 hour format */
|
||||
if (_wcsicmp(szAmPm, L"a") == 0 ||
|
||||
_wcsicmp(szAmPm, L"am") == 0)
|
||||
{
|
||||
if (ulHour == 12)
|
||||
ulHour = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (ulHour >= 1 && ulHour <= 11)
|
||||
ulHour += 12;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
/* 24 hour time format */
|
||||
|
||||
/* Check for the valid hour range [0-23] */
|
||||
if (ulHour > 23)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
if (pulJobHour != NULL)
|
||||
*pulJobHour = ulHour;
|
||||
|
||||
if (pulJobMinute != NULL)
|
||||
*pulJobMinute = ulMinute;
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
static
|
||||
BOOL
|
||||
ParseId(
|
||||
PWSTR pszId,
|
||||
PULONG pulId)
|
||||
{
|
||||
PWSTR startPtr, endPtr;
|
||||
ULONG ulId = 0;
|
||||
BOOL bResult = FALSE;
|
||||
|
||||
startPtr = pszId;
|
||||
endPtr = NULL;
|
||||
ulId = wcstoul(startPtr, &endPtr, 10);
|
||||
if (endPtr != NULL && *endPtr == UNICODE_NULL)
|
||||
{
|
||||
bResult = TRUE;
|
||||
|
||||
if (pulId != NULL)
|
||||
*pulId = ulId;
|
||||
}
|
||||
|
||||
return bResult;
|
||||
}
|
||||
|
||||
|
||||
static
|
||||
BOOL
|
||||
ParseDaysOfMonth(
|
||||
PWSTR pszBuffer,
|
||||
PULONG pulDaysOfMonth)
|
||||
{
|
||||
PWSTR startPtr, endPtr;
|
||||
ULONG ulValue;
|
||||
|
||||
if (wcslen(pszBuffer) == 0)
|
||||
return FALSE;
|
||||
|
||||
startPtr = pszBuffer;
|
||||
endPtr = NULL;
|
||||
for (;;)
|
||||
{
|
||||
ulValue = wcstoul(startPtr, &endPtr, 10);
|
||||
if (ulValue == 0)
|
||||
return FALSE;
|
||||
|
||||
if (ulValue > 0 && ulValue <= 31)
|
||||
*pulDaysOfMonth |= (1 << (ulValue - 1));
|
||||
|
||||
if (endPtr != NULL && *endPtr == UNICODE_NULL)
|
||||
return TRUE;
|
||||
|
||||
startPtr = endPtr + 1;
|
||||
endPtr = NULL;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
||||
static
|
||||
BOOL
|
||||
ParseDaysOfWeek(
|
||||
PWSTR pszBuffer,
|
||||
PUCHAR pucDaysOfWeek)
|
||||
{
|
||||
PWSTR startPtr, endPtr;
|
||||
INT nLength, i;
|
||||
|
||||
if (wcslen(pszBuffer) == 0)
|
||||
return FALSE;
|
||||
|
||||
startPtr = pszBuffer;
|
||||
endPtr = NULL;
|
||||
for (;;)
|
||||
{
|
||||
endPtr = wcschr(startPtr, L',');
|
||||
if (endPtr == NULL)
|
||||
nLength = wcslen(startPtr);
|
||||
else
|
||||
nLength = (INT)((ULONG_PTR)endPtr - (ULONG_PTR)startPtr) / sizeof(WCHAR);
|
||||
|
||||
for (i = 0; i < 7; i++)
|
||||
{
|
||||
if (nLength == wcslen(pszDaysOfWeekArray[i]) &&
|
||||
_wcsnicmp(startPtr, pszDaysOfWeekArray[i], nLength) == 0)
|
||||
{
|
||||
*pucDaysOfWeek |= (1 << i);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (endPtr == NULL)
|
||||
return TRUE;
|
||||
|
||||
startPtr = endPtr + 1;
|
||||
endPtr = NULL;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
||||
static
|
||||
VOID
|
||||
PrintErrorMessage(
|
||||
DWORD dwError)
|
||||
{
|
||||
PWSTR pszBuffer = NULL;
|
||||
|
||||
FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
|
||||
NULL,
|
||||
dwError,
|
||||
0,
|
||||
(PWSTR)&pszBuffer,
|
||||
0,
|
||||
NULL);
|
||||
|
||||
ConPrintf(StdErr, L"%s\n", pszBuffer);
|
||||
LocalFree(pszBuffer);
|
||||
}
|
||||
|
||||
|
||||
static
|
||||
VOID
|
||||
PrintHorizontalLine(VOID)
|
||||
{
|
||||
WCHAR szBuffer[80];
|
||||
INT i;
|
||||
|
||||
for (i = 0; i < 79; i++)
|
||||
szBuffer[i] = L'-';
|
||||
szBuffer[79] = UNICODE_NULL;
|
||||
|
||||
ConPrintf(StdOut, L"%s\n", szBuffer);
|
||||
}
|
||||
|
||||
|
||||
static
|
||||
BOOL
|
||||
Confirm(VOID)
|
||||
{
|
||||
HINSTANCE hInstance;
|
||||
WCHAR szYesBuffer[8];
|
||||
WCHAR szNoBuffer[8];
|
||||
WCHAR szInput[80];
|
||||
DWORD dwOldMode;
|
||||
DWORD dwRead = 0;
|
||||
BOOL ret = FALSE;
|
||||
HANDLE hFile;
|
||||
|
||||
hInstance = GetModuleHandleW(NULL);
|
||||
LoadStringW(hInstance, IDS_CONFIRM_YES, szYesBuffer, _countof(szYesBuffer));
|
||||
LoadStringW(hInstance, IDS_CONFIRM_NO, szNoBuffer, _countof(szNoBuffer));
|
||||
|
||||
ZeroMemory(szInput, sizeof(szInput));
|
||||
|
||||
hFile = GetStdHandle(STD_INPUT_HANDLE);
|
||||
GetConsoleMode(hFile, &dwOldMode);
|
||||
|
||||
SetConsoleMode(hFile, ENABLE_LINE_INPUT | ENABLE_ECHO_INPUT);
|
||||
|
||||
for (;;)
|
||||
{
|
||||
ConResPrintf(StdOut, IDS_CONFIRM_QUESTION);
|
||||
|
||||
ReadConsoleW(hFile, szInput, _countof(szInput), &dwRead, NULL);
|
||||
|
||||
szInput[0] = towupper(szInput[0]);
|
||||
if (szInput[0] == szYesBuffer[0])
|
||||
{
|
||||
ret = TRUE;
|
||||
break;
|
||||
}
|
||||
else if (szInput[0] == 13 || szInput[0] == szNoBuffer[0])
|
||||
{
|
||||
ret = FALSE;
|
||||
break;
|
||||
}
|
||||
|
||||
ConResPrintf(StdOut, IDS_CONFIRM_INVALID);
|
||||
}
|
||||
|
||||
SetConsoleMode(hFile, dwOldMode);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
static
|
||||
DWORD_PTR
|
||||
GetTimeAsJobTime(VOID)
|
||||
{
|
||||
SYSTEMTIME Time;
|
||||
DWORD_PTR JobTime;
|
||||
|
||||
GetLocalTime(&Time);
|
||||
|
||||
JobTime = (DWORD_PTR)Time.wHour * 3600000 +
|
||||
(DWORD_PTR)Time.wMinute * 60000;
|
||||
|
||||
return JobTime;
|
||||
}
|
||||
|
||||
|
||||
static
|
||||
ULONG
|
||||
GetCurrentDayOfMonth(VOID)
|
||||
{
|
||||
SYSTEMTIME Time;
|
||||
|
||||
GetLocalTime(&Time);
|
||||
|
||||
return 1UL << (Time.wDay - 1);
|
||||
}
|
||||
|
||||
|
||||
static
|
||||
VOID
|
||||
JobTimeToTimeString(
|
||||
PWSTR pszBuffer,
|
||||
INT cchBuffer,
|
||||
WORD wHour,
|
||||
WORD wMinute)
|
||||
{
|
||||
SYSTEMTIME Time = {0, 0, 0, 0, 0, 0, 0, 0};
|
||||
|
||||
Time.wHour = wHour;
|
||||
Time.wMinute = wMinute;
|
||||
|
||||
GetTimeFormat(LOCALE_USER_DEFAULT,
|
||||
TIME_NOSECONDS,
|
||||
&Time,
|
||||
NULL,
|
||||
pszBuffer,
|
||||
cchBuffer);
|
||||
}
|
||||
|
||||
|
||||
static
|
||||
INT
|
||||
PrintJobDetails(
|
||||
PWSTR pszComputerName,
|
||||
ULONG ulJobId)
|
||||
{
|
||||
PAT_INFO pBuffer = NULL;
|
||||
DWORD_PTR CurrentTime;
|
||||
WCHAR szStatusBuffer[16];
|
||||
WCHAR szScheduleBuffer[60];
|
||||
WCHAR szTimeBuffer[16];
|
||||
WCHAR szInteractiveBuffer[16];
|
||||
WCHAR szDateBuffer[8];
|
||||
INT i, nDateLength, nScheduleLength;
|
||||
HINSTANCE hInstance;
|
||||
NET_API_STATUS Status;
|
||||
|
||||
Status = NetScheduleJobGetInfo(pszComputerName,
|
||||
ulJobId,
|
||||
(PBYTE *)&pBuffer);
|
||||
if (Status != NERR_Success)
|
||||
{
|
||||
PrintErrorMessage(Status);
|
||||
return 1;
|
||||
}
|
||||
|
||||
hInstance = GetModuleHandle(NULL);
|
||||
|
||||
if (pBuffer->Flags & JOB_EXEC_ERROR)
|
||||
LoadStringW(hInstance, IDS_ERROR, szStatusBuffer, _countof(szStatusBuffer));
|
||||
else
|
||||
LoadStringW(hInstance, IDS_OK, szStatusBuffer, _countof(szStatusBuffer));
|
||||
|
||||
if (pBuffer->DaysOfMonth != 0)
|
||||
{
|
||||
if (pBuffer->Flags & JOB_RUN_PERIODICALLY)
|
||||
LoadStringW(hInstance, IDS_EVERY, szScheduleBuffer, _countof(szScheduleBuffer));
|
||||
else
|
||||
LoadStringW(hInstance, IDS_NEXT, szScheduleBuffer, _countof(szScheduleBuffer));
|
||||
|
||||
nScheduleLength = wcslen(szScheduleBuffer);
|
||||
for (i = 0; i < 31; i++)
|
||||
{
|
||||
if (pBuffer->DaysOfMonth & (1 << i))
|
||||
{
|
||||
swprintf(szDateBuffer, L" %d", i + 1);
|
||||
nDateLength = wcslen(szDateBuffer);
|
||||
if (nScheduleLength + nDateLength <= 55)
|
||||
{
|
||||
wcscat(szScheduleBuffer, szDateBuffer);
|
||||
nScheduleLength += nDateLength;
|
||||
}
|
||||
else
|
||||
{
|
||||
wcscat(szScheduleBuffer, L"...");
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (pBuffer->DaysOfWeek != 0)
|
||||
{
|
||||
if (pBuffer->Flags & JOB_RUN_PERIODICALLY)
|
||||
LoadStringW(hInstance, IDS_EVERY, szScheduleBuffer, _countof(szScheduleBuffer));
|
||||
else
|
||||
LoadStringW(hInstance, IDS_NEXT, szScheduleBuffer, _countof(szScheduleBuffer));
|
||||
|
||||
nScheduleLength = wcslen(szScheduleBuffer);
|
||||
for (i = 0; i < 7; i++)
|
||||
{
|
||||
if (pBuffer->DaysOfWeek & (1 << i))
|
||||
{
|
||||
swprintf(szDateBuffer, L" %s", pszDaysOfWeekArray[i]);
|
||||
nDateLength = wcslen(szDateBuffer);
|
||||
if (nScheduleLength + nDateLength <= 55)
|
||||
{
|
||||
wcscat(szScheduleBuffer, szDateBuffer);
|
||||
nScheduleLength += nDateLength;
|
||||
}
|
||||
else
|
||||
{
|
||||
wcscat(szScheduleBuffer, L"...");
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
CurrentTime = GetTimeAsJobTime();
|
||||
if (CurrentTime > pBuffer->JobTime)
|
||||
LoadStringW(hInstance, IDS_TOMORROW, szScheduleBuffer, _countof(szScheduleBuffer));
|
||||
else
|
||||
LoadStringW(hInstance, IDS_TODAY, szScheduleBuffer, _countof(szScheduleBuffer));
|
||||
}
|
||||
|
||||
JobTimeToTimeString(szTimeBuffer,
|
||||
_countof(szTimeBuffer),
|
||||
(WORD)(pBuffer->JobTime / 3600000),
|
||||
(WORD)((pBuffer->JobTime % 3600000) / 60000));
|
||||
|
||||
if (pBuffer->Flags & JOB_NONINTERACTIVE)
|
||||
LoadStringW(hInstance, IDS_NO, szInteractiveBuffer, _countof(szInteractiveBuffer));
|
||||
else
|
||||
LoadStringW(hInstance, IDS_YES, szInteractiveBuffer, _countof(szInteractiveBuffer));
|
||||
|
||||
ConResPrintf(StdOut, IDS_TASKID, ulJobId);
|
||||
ConResPrintf(StdOut, IDS_STATUS, szStatusBuffer);
|
||||
ConResPrintf(StdOut, IDS_SCHEDULE, szScheduleBuffer);
|
||||
ConResPrintf(StdOut, IDS_TIME, szTimeBuffer);
|
||||
ConResPrintf(StdOut, IDS_INTERACTIVE, szInteractiveBuffer);
|
||||
ConResPrintf(StdOut, IDS_COMMAND, pBuffer->Command);
|
||||
|
||||
NetApiBufferFree(pBuffer);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static
|
||||
INT
|
||||
PrintAllJobs(
|
||||
PWSTR pszComputerName)
|
||||
{
|
||||
PAT_ENUM pBuffer = NULL;
|
||||
DWORD dwRead = 0, dwTotal = 0;
|
||||
DWORD dwResume = 0, i;
|
||||
DWORD_PTR CurrentTime;
|
||||
NET_API_STATUS Status;
|
||||
|
||||
WCHAR szScheduleBuffer[32];
|
||||
WCHAR szTimeBuffer[16];
|
||||
WCHAR szDateBuffer[8];
|
||||
HINSTANCE hInstance;
|
||||
INT j, nDateLength, nScheduleLength;
|
||||
|
||||
Status = NetScheduleJobEnum(pszComputerName,
|
||||
(PBYTE *)&pBuffer,
|
||||
MAX_PREFERRED_LENGTH,
|
||||
&dwRead,
|
||||
&dwTotal,
|
||||
&dwResume);
|
||||
if (Status != NERR_Success)
|
||||
{
|
||||
PrintErrorMessage(Status);
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (dwTotal == 0)
|
||||
{
|
||||
ConResPrintf(StdOut, IDS_NO_ENTRIES);
|
||||
return 0;
|
||||
}
|
||||
|
||||
ConResPrintf(StdOut, IDS_JOBS_LIST);
|
||||
PrintHorizontalLine();
|
||||
|
||||
hInstance = GetModuleHandle(NULL);
|
||||
|
||||
for (i = 0; i < dwRead; i++)
|
||||
{
|
||||
if (pBuffer[i].DaysOfMonth != 0)
|
||||
{
|
||||
if (pBuffer[i].Flags & JOB_RUN_PERIODICALLY)
|
||||
LoadStringW(hInstance, IDS_EVERY, szScheduleBuffer, _countof(szScheduleBuffer));
|
||||
else
|
||||
LoadStringW(hInstance, IDS_NEXT, szScheduleBuffer, _countof(szScheduleBuffer));
|
||||
|
||||
nScheduleLength = wcslen(szScheduleBuffer);
|
||||
for (j = 0; j < 31; j++)
|
||||
{
|
||||
if (pBuffer[i].DaysOfMonth & (1 << j))
|
||||
{
|
||||
swprintf(szDateBuffer, L" %d", j + 1);
|
||||
nDateLength = wcslen(szDateBuffer);
|
||||
if (nScheduleLength + nDateLength <= 19)
|
||||
{
|
||||
wcscat(szScheduleBuffer, szDateBuffer);
|
||||
nScheduleLength += nDateLength;
|
||||
}
|
||||
else
|
||||
{
|
||||
wcscat(szScheduleBuffer, L"...");
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (pBuffer[i].DaysOfWeek != 0)
|
||||
{
|
||||
if (pBuffer[i].Flags & JOB_RUN_PERIODICALLY)
|
||||
LoadStringW(hInstance, IDS_EVERY, szScheduleBuffer, _countof(szScheduleBuffer));
|
||||
else
|
||||
LoadStringW(hInstance, IDS_NEXT, szScheduleBuffer, _countof(szScheduleBuffer));
|
||||
|
||||
nScheduleLength = wcslen(szScheduleBuffer);
|
||||
for (j = 0; j < 7; j++)
|
||||
{
|
||||
if (pBuffer[i].DaysOfWeek & (1 << j))
|
||||
{
|
||||
swprintf(szDateBuffer, L" %s", pszDaysOfWeekArray[j]);
|
||||
nDateLength = wcslen(szDateBuffer);
|
||||
if (nScheduleLength + nDateLength <= 55)
|
||||
{
|
||||
wcscat(szScheduleBuffer, szDateBuffer);
|
||||
nScheduleLength += nDateLength;
|
||||
}
|
||||
else
|
||||
{
|
||||
wcscat(szScheduleBuffer, L"...");
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
CurrentTime = GetTimeAsJobTime();
|
||||
if (CurrentTime > pBuffer[i].JobTime)
|
||||
LoadStringW(hInstance, IDS_TOMORROW, szScheduleBuffer, _countof(szScheduleBuffer));
|
||||
else
|
||||
LoadStringW(hInstance, IDS_TODAY, szScheduleBuffer, _countof(szScheduleBuffer));
|
||||
}
|
||||
|
||||
JobTimeToTimeString(szTimeBuffer,
|
||||
_countof(szTimeBuffer),
|
||||
(WORD)(pBuffer[i].JobTime / 3600000),
|
||||
(WORD)((pBuffer[i].JobTime % 3600000) / 60000));
|
||||
|
||||
ConPrintf(StdOut,
|
||||
L" %6lu %-21s %-11s %s\n",
|
||||
pBuffer[i].JobId,
|
||||
szScheduleBuffer,
|
||||
szTimeBuffer,
|
||||
pBuffer[i].Command);
|
||||
}
|
||||
|
||||
NetApiBufferFree(pBuffer);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static
|
||||
INT
|
||||
AddJob(
|
||||
PWSTR pszComputerName,
|
||||
ULONG ulJobHour,
|
||||
ULONG ulJobMinute,
|
||||
ULONG ulDaysOfMonth,
|
||||
UCHAR ucDaysOfWeek,
|
||||
BOOL bInteractiveJob,
|
||||
BOOL bPeriodicJob,
|
||||
PWSTR pszCommand)
|
||||
{
|
||||
AT_INFO InfoBuffer;
|
||||
ULONG ulJobId = 0;
|
||||
NET_API_STATUS Status;
|
||||
|
||||
InfoBuffer.JobTime = (DWORD_PTR)ulJobHour * 3600000 +
|
||||
(DWORD_PTR)ulJobMinute * 60000;
|
||||
InfoBuffer.DaysOfMonth = ulDaysOfMonth;
|
||||
InfoBuffer.DaysOfWeek = ucDaysOfWeek;
|
||||
InfoBuffer.Flags = (bInteractiveJob ? 0 : JOB_NONINTERACTIVE) |
|
||||
(bPeriodicJob ? JOB_RUN_PERIODICALLY : 0);
|
||||
InfoBuffer.Command = pszCommand;
|
||||
|
||||
Status = NetScheduleJobAdd(pszComputerName,
|
||||
(PBYTE)&InfoBuffer,
|
||||
&ulJobId);
|
||||
if (Status != NERR_Success)
|
||||
{
|
||||
PrintErrorMessage(Status);
|
||||
return 1;
|
||||
}
|
||||
|
||||
ConResPrintf(StdOut, IDS_NEW_JOB, ulJobId);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static
|
||||
INT
|
||||
DeleteJob(
|
||||
PWSTR pszComputerName,
|
||||
ULONG ulJobId,
|
||||
BOOL bForceDelete)
|
||||
{
|
||||
NET_API_STATUS Status;
|
||||
|
||||
if (ulJobId == (ULONG)-1 && bForceDelete == FALSE)
|
||||
{
|
||||
ConResPrintf(StdOut, IDS_DELETE_ALL);
|
||||
if (!Confirm())
|
||||
return 0;
|
||||
}
|
||||
|
||||
Status = NetScheduleJobDel(pszComputerName,
|
||||
(ulJobId == (ULONG)-1) ? 0 : ulJobId,
|
||||
(ulJobId == (ULONG)-1) ? -1 : ulJobId);
|
||||
if (Status != NERR_Success)
|
||||
{
|
||||
PrintErrorMessage(Status);
|
||||
return 1;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
int wmain(int argc, WCHAR **argv)
|
||||
{
|
||||
PWSTR pszComputerName = NULL;
|
||||
PWSTR pszCommand = NULL;
|
||||
ULONG ulJobId = (ULONG)-1;
|
||||
ULONG ulJobHour = (ULONG)-1;
|
||||
ULONG ulJobMinute = (ULONG)-1;
|
||||
BOOL bDeleteJob = FALSE, bForceDelete = FALSE;
|
||||
BOOL bInteractiveJob = FALSE, bPeriodicJob = FALSE;
|
||||
BOOL bPrintUsage = FALSE;
|
||||
ULONG ulDaysOfMonth = 0;
|
||||
UCHAR ucDaysOfWeek = 0;
|
||||
INT nResult = 0;
|
||||
INT i, minIdx;
|
||||
|
||||
/* Initialize the Console Standard Streams */
|
||||
ConInitStdStreams();
|
||||
|
||||
if (!InitDaysOfWeekArray())
|
||||
return 1;
|
||||
|
||||
/* Parse the computer name */
|
||||
i = 1;
|
||||
minIdx = 1;
|
||||
if (i < argc &&
|
||||
argv[i][0] == L'\\' &&
|
||||
argv[i][1] == L'\\')
|
||||
{
|
||||
pszComputerName = argv[i];
|
||||
i++;
|
||||
minIdx++;
|
||||
}
|
||||
|
||||
/* Parse the time or job id */
|
||||
if (i < argc && argv[i][0] != L'/')
|
||||
{
|
||||
if (ParseTime(argv[i], &ulJobHour, &ulJobMinute))
|
||||
{
|
||||
i++;
|
||||
minIdx++;
|
||||
}
|
||||
else if (ParseId(argv[i], &ulJobId))
|
||||
{
|
||||
i++;
|
||||
minIdx++;
|
||||
}
|
||||
}
|
||||
|
||||
/* Parse the options */
|
||||
for (; i < argc; i++)
|
||||
{
|
||||
if (argv[i][0] == L'/')
|
||||
{
|
||||
if (_wcsicmp(argv[i], L"/?") == 0)
|
||||
{
|
||||
bPrintUsage = TRUE;
|
||||
goto done;
|
||||
}
|
||||
else if (_wcsicmp(argv[i], L"/delete") == 0)
|
||||
{
|
||||
bDeleteJob = TRUE;
|
||||
}
|
||||
else if (_wcsicmp(argv[i], L"/yes") == 0)
|
||||
{
|
||||
bForceDelete = TRUE;
|
||||
}
|
||||
else if (_wcsicmp(argv[i], L"/interactive") == 0)
|
||||
{
|
||||
bInteractiveJob = TRUE;
|
||||
}
|
||||
else if (_wcsnicmp(argv[i], L"/every:", 7) == 0)
|
||||
{
|
||||
bPeriodicJob = TRUE;
|
||||
if (ParseDaysOfMonth(&(argv[i][7]), &ulDaysOfMonth) == FALSE)
|
||||
{
|
||||
if (ParseDaysOfWeek(&(argv[i][7]), &ucDaysOfWeek) == FALSE)
|
||||
{
|
||||
ulDaysOfMonth = GetCurrentDayOfMonth();
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (_wcsnicmp(argv[i], L"/next:", 6) == 0)
|
||||
{
|
||||
bPeriodicJob = FALSE;
|
||||
if (ParseDaysOfMonth(&(argv[i][6]), &ulDaysOfMonth) == FALSE)
|
||||
{
|
||||
if (ParseDaysOfWeek(&(argv[i][6]), &ucDaysOfWeek) == FALSE)
|
||||
{
|
||||
ulDaysOfMonth = GetCurrentDayOfMonth();
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
bPrintUsage = TRUE;
|
||||
nResult = 1;
|
||||
goto done;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Parse the command */
|
||||
if (argc > minIdx && argv[argc - 1][0] != L'/')
|
||||
{
|
||||
pszCommand = argv[argc - 1];
|
||||
}
|
||||
|
||||
if (bDeleteJob == TRUE)
|
||||
{
|
||||
/* Check for invalid options or arguments */
|
||||
if (bInteractiveJob == TRUE ||
|
||||
ulJobHour != (ULONG)-1 ||
|
||||
ulJobMinute != (ULONG)-1 ||
|
||||
ulDaysOfMonth != 0 ||
|
||||
ucDaysOfWeek != 0 ||
|
||||
pszCommand != NULL)
|
||||
{
|
||||
bPrintUsage = TRUE;
|
||||
nResult = 1;
|
||||
goto done;
|
||||
}
|
||||
|
||||
nResult = DeleteJob(pszComputerName,
|
||||
ulJobId,
|
||||
bForceDelete);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (ulJobHour != (ULONG)-1 && ulJobMinute != (ULONG)-1)
|
||||
{
|
||||
/* Check for invalid options or arguments */
|
||||
if (bForceDelete == TRUE ||
|
||||
pszCommand == NULL)
|
||||
{
|
||||
bPrintUsage = TRUE;
|
||||
nResult = 1;
|
||||
goto done;
|
||||
}
|
||||
|
||||
nResult = AddJob(pszComputerName,
|
||||
ulJobHour,
|
||||
ulJobMinute,
|
||||
ulDaysOfMonth,
|
||||
ucDaysOfWeek,
|
||||
bInteractiveJob,
|
||||
bPeriodicJob,
|
||||
pszCommand);
|
||||
}
|
||||
else
|
||||
{
|
||||
/* Check for invalid options or arguments */
|
||||
if (bForceDelete == TRUE ||
|
||||
bInteractiveJob == TRUE ||
|
||||
ulDaysOfMonth != 0 ||
|
||||
ucDaysOfWeek != 0 ||
|
||||
pszCommand != NULL)
|
||||
{
|
||||
bPrintUsage = TRUE;
|
||||
nResult = 1;
|
||||
goto done;
|
||||
}
|
||||
|
||||
if (ulJobId == (ULONG)-1)
|
||||
{
|
||||
nResult = PrintAllJobs(pszComputerName);
|
||||
}
|
||||
else
|
||||
{
|
||||
nResult = PrintJobDetails(pszComputerName,
|
||||
ulJobId);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
done:
|
||||
FreeDaysOfWeekArray();
|
||||
|
||||
if (bPrintUsage == TRUE)
|
||||
ConResPuts(StdOut, IDS_USAGE);
|
||||
|
||||
return nResult;
|
||||
}
|
||||
|
||||
/* EOF */
|
26
reactos/base/applications/cmdutils/at/at.rc
Normal file
26
reactos/base/applications/cmdutils/at/at.rc
Normal file
@@ -0,0 +1,26 @@
|
||||
#include <windef.h>
|
||||
|
||||
#include "resource.h"
|
||||
|
||||
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS AT Command"
|
||||
#define REACTOS_STR_INTERNAL_NAME "at"
|
||||
#define REACTOS_STR_ORIGINAL_FILENAME "at.exe"
|
||||
#include <reactos/version.rc>
|
||||
|
||||
/* UTF-8 */
|
||||
#pragma code_page(65001)
|
||||
#ifdef LANGUAGE_DE_DE
|
||||
#include "lang/de-DE.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_EN_US
|
||||
#include "lang/en-US.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_RO_RO
|
||||
#include "lang/ro-RO.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_RU_RU
|
||||
#include "lang/ru-RU.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_TR_TR
|
||||
#include "lang/tr-TR.rc"
|
||||
#endif
|
57
reactos/base/applications/cmdutils/at/lang/de-DE.rc
Normal file
57
reactos/base/applications/cmdutils/at/lang/de-DE.rc
Normal file
@@ -0,0 +1,57 @@
|
||||
LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_USAGE "Mit dem AT Befehl können Befehle und Programme zu einem vorbestimmten\n\
|
||||
Termin gestartet werden. Der Zeitplandienst muss gestartet sein, um den\n\
|
||||
Befehl AT zu verwenden.\n\n\
|
||||
AT [\\\\Computername] [ [Kennung] [/DELETE] | /DELETE [/YES]]\n\
|
||||
AT [\\\\Computername] Zeit [/INTERACTIVE]\n\
|
||||
[ /EVERY:Datum[,...] | /NEXT:Datum[,...]] ""Befehl""\n\n\
|
||||
\\\\Computername Gibt einen Remotecomputer an. Ohne diesen Parameter werden\n\
|
||||
die Befehle auf dem lokalen Computer ausgeführt.\n\
|
||||
Kennung Eine Identifikationsnummer, die dem geplanten Befehl\n\
|
||||
zugeteilt wird.\n\
|
||||
/DELETE Löscht geplante Befehle. Ohne Kennung werden alle geplanten\n\
|
||||
Befehle auf dem Computer gelöscht.\n\
|
||||
/YES In Verbindung mit /DELETE werden die geplanten Befehle ohne\n\
|
||||
weitere Bestätiging gelöscht.\n\
|
||||
Zeit Gibt die Zeit an, zu der ein Befehl ausgeführt werden soll.\n\
|
||||
/INTERACTIVE Ermöglicht dem Aufrag, Eingaben von dem Benutzer\n\
|
||||
anzunehmen, der angemeldet ist, wenn der Auftrag ausgeführt\n\
|
||||
wird.\n\
|
||||
/EVERY:Datum[,...] Führt den Befehl zu jedem der angegebenen Tage der Woche\n\
|
||||
oder des Monats aus. Ohne Angabe eines Datums wird der\n\
|
||||
aktuelle Tag des Monats angenommen.\n\
|
||||
/NEXT:Datum[,...] Führt den Befehl am nächsten angegebenen Tage der Woche\n\
|
||||
oder des Monats (z.B. nächsten Montag) aus. Ohne Angabe\n\
|
||||
eines Datums wird der aktuelle Tag des Monats angenommen.\n\
|
||||
""Befehl"" Ist der auszuführende Befehl oder das Stapelprogramm.\n"
|
||||
|
||||
IDS_DELETE_ALL "Dieser Vorgang wird alle geplanten Aufträge löschen.\n"
|
||||
IDS_NEW_JOB "Neuer Auftrag hinzugefügt. Kennung = %lu\n"
|
||||
IDS_JOBS_LIST "Statuskenn. Tag Zeit Befehlszeile\n"
|
||||
IDS_NO_ENTRIES "Es sind keine Einträge in der Liste.\n"
|
||||
|
||||
IDS_CONFIRM_QUESTION "Möchten Sie diesen Vorgang fortsetzen? (J/N) [N]: "
|
||||
IDS_CONFIRM_INVALID "\nDies ist eine ungültige Antwort.\n"
|
||||
IDS_CONFIRM_YES "J"
|
||||
IDS_CONFIRM_NO "N"
|
||||
|
||||
IDS_TODAY "Heute"
|
||||
IDS_TOMORROW "Morgen"
|
||||
IDS_EVERY "Jeden"
|
||||
IDS_NEXT "Kommenden"
|
||||
|
||||
IDS_YES "Ja"
|
||||
IDS_NO "Nein"
|
||||
IDS_ERROR "ERROR"
|
||||
IDS_OK "OK"
|
||||
|
||||
IDS_TASKID "Taskkennung: %lu\n"
|
||||
IDS_STATUS "Status: %s\n"
|
||||
IDS_SCHEDULE "Zeitplan: %s\n"
|
||||
IDS_TIME "Zeit: %s\n"
|
||||
IDS_INTERACTIVE "Interaktiv: %s\n"
|
||||
IDS_COMMAND "Befehl: %s\n"
|
||||
END
|
56
reactos/base/applications/cmdutils/at/lang/en-US.rc
Normal file
56
reactos/base/applications/cmdutils/at/lang/en-US.rc
Normal file
@@ -0,0 +1,56 @@
|
||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_USAGE "The AT command schedules commands and programs to run on a computer at\n\
|
||||
a specified time and date. The Schedule service must be running to use\n\
|
||||
the AT command.\n\n\
|
||||
AT [\\\\computername] [ [id] [/DELETE] | /DELETE [/YES]]\n\
|
||||
AT [\\\\computername] time [/INTERACTIVE]\n\
|
||||
[ /EVERY:date[,...] | /NEXT:date[,...]] ""command""\n\n\
|
||||
\\\\computername Specifies a remote computer. Commands are scheduled on the \n\
|
||||
local computer if this parameter is omitted.\n\
|
||||
id Is an identification number assigned to a scheduled\n\
|
||||
command.\n\
|
||||
/DELETE Cancels a scheduled command. If id is omitted, all the\n\
|
||||
scheduled commands on the computer are canceled.\n\
|
||||
/YES Used with cancel all jobs command when no further\n\
|
||||
confirmation is desired.\n\
|
||||
time Specifies the time when command is to run.\n\
|
||||
/INTERACTIVE Allows the job to interact with the desktop of the user\n\
|
||||
who is logged on at the time the job runs.\n\
|
||||
/EVERY:date[,...] Runs the command on each specified day(s) of the week or\n\
|
||||
month. If date is omitted, the current day of the month\n\
|
||||
is assumed.\n\
|
||||
/NEXT:date[,...] Runs the specified command on the next occurrence of the\n\
|
||||
day (for example, next Thursday). If date is omitted, the \n\
|
||||
current day of the month is assumed.\n\
|
||||
""command"" Is the command or batch program to be run.\n"
|
||||
|
||||
IDS_DELETE_ALL "This operation will delete all scheduled jobs.\n"
|
||||
IDS_NEW_JOB "Added a new job with job ID = %lu\n"
|
||||
IDS_JOBS_LIST "Status ID Day Time Command Line\n"
|
||||
IDS_NO_ENTRIES "There are no entries in the list.\n"
|
||||
|
||||
IDS_CONFIRM_QUESTION "Do you want to continue this operation? (Y/N) [N]: "
|
||||
IDS_CONFIRM_INVALID "\nThis is an invalid response.\n"
|
||||
IDS_CONFIRM_YES "Y"
|
||||
IDS_CONFIRM_NO "N"
|
||||
|
||||
IDS_TODAY "Today"
|
||||
IDS_TOMORROW "Tomorrow"
|
||||
IDS_EVERY "Every"
|
||||
IDS_NEXT "Next"
|
||||
|
||||
IDS_YES "Yes"
|
||||
IDS_NO "No"
|
||||
IDS_ERROR "ERROR"
|
||||
IDS_OK "OK"
|
||||
|
||||
IDS_TASKID "Task ID: %lu\n"
|
||||
IDS_STATUS "Status: %s\n"
|
||||
IDS_SCHEDULE "Schedule: %s\n"
|
||||
IDS_TIME "Time of day: %s\n"
|
||||
IDS_INTERACTIVE "Interactive: %s\n"
|
||||
IDS_COMMAND "Command: %s\n"
|
||||
END
|
56
reactos/base/applications/cmdutils/at/lang/ro-RO.rc
Normal file
56
reactos/base/applications/cmdutils/at/lang/ro-RO.rc
Normal file
@@ -0,0 +1,56 @@
|
||||
/* Ștefan Fulea (stefan dot fulea at mail dot md) */
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_USAGE "Comanda AT planifică comenzi și programe pentru fi executate într-un\n\
|
||||
calculator la o anumită dată și oră. Serviciul «Schedule» trebuie să fie\n\
|
||||
pornit pentru a utiliza această comandă.\n\n\
|
||||
AT [\\\\numecalculator] [ [id] [/DELETE] | /DELETE [/YES]]\n\
|
||||
AT [\\\\numecalculator] timp [/INTERACTIVE]\n\
|
||||
[ /EVERY:dată[,...] | /NEXT:dată[,...]] ""comandă""\n\n\
|
||||
\\\\numecalculator Specifică un calculator la distanță. Fără acest\n\
|
||||
parametru, planificarea va fi pentru calculatorul local.\n\
|
||||
id Un număr de identificare atribuit comenzii planificate.\n\
|
||||
/DELETE Anulează o comandă planificată. Fără acest parametru,\n\
|
||||
vor fi anulate toate comenzile planificate.\n\
|
||||
/YES Utilizat cu opțiunea «DELETE», pentru suprimarea cerințelor\n\
|
||||
de confirmare a eliminărilor de comenzi planificate.\n\
|
||||
timp Specifică timpul de lansare a comenzii.\n\
|
||||
/INTERACTIVE Permite programelor să interacționeze cu utilizatorul\n\
|
||||
autentificat la momentul execuției planificate.\n\
|
||||
/EVERY:dată[,...] Execută comanda la ziua sau zilele specificate din fiecare\n\
|
||||
săptămână sau lună. Dacă data este omisă, este considerată\n\
|
||||
ziua curentă a lunii.\n\
|
||||
/NEXT:dată[,...] Execută comanda în următoarea zi (spre exemplu marțea\n\
|
||||
viitoare). Dacă data este omisă, e considerată ziua\n\
|
||||
curentă a lunii.\n\
|
||||
""comandă"" Numele comenzii sau programului pentru execuție.\n"
|
||||
|
||||
IDS_DELETE_ALL "Această operație va elimina planificarea pentru toate comenzile.\n"
|
||||
IDS_NEW_JOB "A fost planificată o nouă activitate cu ID = %lu\n"
|
||||
IDS_JOBS_LIST "ID stare Zi Oră Comanda\n"
|
||||
IDS_NO_ENTRIES "Nu există comenzi planificate.\n"
|
||||
|
||||
IDS_CONFIRM_QUESTION "Sigur doriți continuarea acestei operații? (D|N) [N]: "
|
||||
IDS_CONFIRM_INVALID "\nAcesta nu este un răspuns valid.\n"
|
||||
IDS_CONFIRM_YES "D"
|
||||
IDS_CONFIRM_NO "N"
|
||||
|
||||
IDS_TODAY "Astăzi"
|
||||
IDS_TOMORROW "Mâine"
|
||||
IDS_EVERY "În fiecare"
|
||||
IDS_NEXT "În următoarea"
|
||||
|
||||
IDS_YES "Da"
|
||||
IDS_NO "Nu"
|
||||
IDS_ERROR "EROARE"
|
||||
IDS_OK "OK"
|
||||
|
||||
IDS_TASKID "ID sarcină: %lu\n"
|
||||
IDS_STATUS "Stare: %s\n"
|
||||
IDS_SCHEDULE "Pentru: %s\n"
|
||||
IDS_TIME "La ora: %s\n"
|
||||
IDS_INTERACTIVE "Interactiv: %s\n"
|
||||
IDS_COMMAND "Comandă: %s\n"
|
||||
END
|
54
reactos/base/applications/cmdutils/at/lang/ru-RU.rc
Normal file
54
reactos/base/applications/cmdutils/at/lang/ru-RU.rc
Normal file
@@ -0,0 +1,54 @@
|
||||
LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_USAGE "Команда AT предназначена для запуска команд и программ\n\
|
||||
в указанное время по определенным дням. Для работы команды необходимо, чтобы\n\
|
||||
была запущена служба планировщика (Schedule service).\n\n\
|
||||
AT [\\\\имя_компьютера] [ [id] [/DELETE] | /DELETE [/YES]]\n\
|
||||
AT [\\\\имя_компьютера] время [/INTERACTIVE]\n\
|
||||
[ /EVERY:день[,...] | /NEXT:день[,...]] ""команда""\n\n\
|
||||
\\\\имя_компьютера Имя удаленного компьютера. Если этот параметр не указан, \n\
|
||||
используется локальный компьютер.\n\
|
||||
id Порядковый номер запланированной задачи.\n\
|
||||
/DELETE Отменяет запланированную команду. Если параметр id не указан, то\n\
|
||||
все команды, запланированные на данном компьютере, будут отменены.\n\
|
||||
/YES Отмена запроса на подтверждение при отмене всех\n\
|
||||
запланированных задач.\n\
|
||||
время Время запуска команды.\n\
|
||||
/INTERACTIVE Разрешает взаимодействие задачи с пользователем,\n\
|
||||
работающим на компьютере во время запуска задачи.\n\
|
||||
/EVERY:день[,...] Задача будет выполняться каждый указанный день (дни) или\n\
|
||||
месяц. Если дата не указана, используется текущий день \n\
|
||||
месяца.\n\
|
||||
/NEXT:день[,...] Задача будет запущена в следующий указанный день недели\n\
|
||||
(например, в следующий четверг). Если дата не указана, то \n\
|
||||
используется текущий день месяца.\n\
|
||||
""команда"" Команда или имя пакетного файла для запуска.\n"
|
||||
|
||||
IDS_CONFIRM_QUESTION "Продолжить выполнение операции? (Y-да/N-нет) [N] "
|
||||
IDS_CONFIRM_INVALID "\nНедопустимый ответ.\n"
|
||||
IDS_CONFIRM_YES "Y"
|
||||
IDS_CONFIRM_NO "N"
|
||||
|
||||
IDS_NEW_JOB "Добавлено новое задание с ID = %lu\n"
|
||||
IDS_JOBS_LIST "Статус ID День Время Команда\n"
|
||||
IDS_NO_ENTRIES "В списке нет запланированных задач.\n"
|
||||
|
||||
IDS_TODAY "Сегодня"
|
||||
IDS_TOMORROW "Завтра"
|
||||
IDS_EVERY "Каждый"
|
||||
IDS_NEXT "Следующий"
|
||||
|
||||
IDS_YES "Да"
|
||||
IDS_NO "Нет"
|
||||
IDS_ERROR "ОШИБКА"
|
||||
IDS_OK "ОК"
|
||||
|
||||
IDS_TASKID "ID задачи: %lu\n"
|
||||
IDS_STATUS "Состояние: %s\n"
|
||||
IDS_SCHEDULE "Расписание: %s\n"
|
||||
IDS_TIME "Время суток: %s\n"
|
||||
IDS_INTERACTIVE "Интерактивный: %s\n"
|
||||
IDS_COMMAND "Команда: %s\n"
|
||||
END
|
56
reactos/base/applications/cmdutils/at/lang/tr-TR.rc
Normal file
56
reactos/base/applications/cmdutils/at/lang/tr-TR.rc
Normal file
@@ -0,0 +1,56 @@
|
||||
/* TRANSLATOR: 2017 Erdem Ersoy (eersoy93) (erdemersoy@live.com) */
|
||||
|
||||
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_USAGE "AT komutu, belirlenen bir zamanda bilgisayarda çalıştırmak için komutları\n\
|
||||
ve izlenceleri zamanlar. AT komutunu çalıştırmak için Zamanlayıcı hizmeti \n\
|
||||
çalıştırılmalıdır.\n\n\
|
||||
AT [\\\\bilgisayar adı] [ [kimlik] [/DELETE] | /DELETE [/YES]]\n\
|
||||
AT [\\\\bilgisayar adı] saat [/INTERACTIVE]\n\
|
||||
[ /EVERY:târih[,...] | /NEXT:târih[,...]] ""komut""\n\n\
|
||||
\\\\bilgisayar adı Bir uzak bilgisayarı belirtir. Bu değişken yazılmazsa\n\
|
||||
komutlar yerli bilgisayarda zamanlanır.\n\
|
||||
kimlik Zamanlanan bir komuta atanan bir kimlik numarasıdır.\n\
|
||||
/DELETE Zamanlanan bir komutu iptâl eder. Kimlik yazılmadığında\n\
|
||||
bilgisayardaki tüm zamanlanan komutlar iptâl edilir.\n\
|
||||
/YES Sonraki onaylamalar istenilmediğinde tüm işleri iptâl etme\n\
|
||||
komutuyla birlikte kullanılır.\n\
|
||||
saat Komutun çalıştırılma saatini belirtir.\n\
|
||||
/INTERACTIVE İşe, çalıştırılacağı saatte oturum açmış kullanıcının\n\
|
||||
masaüstüyle etkileşmesine izin verir.\n\
|
||||
/EVERY:târih[,...] Haftanın ya da ayın belirtilen tüm günlerinde komutu çalıştırır.\n\
|
||||
month. Târih yazılmadığında ayın şimdiki gününü varsayar.\n\
|
||||
/NEXT:târih[,...] Günün bir sonraki oluşunda (örneğin bir sonraki perşembede)\n\
|
||||
belirtilen komutu çalıştırır. Târih yazılmadığında ayın\n\
|
||||
şimdiki gününü varsayar.\n\
|
||||
""komut"" Çalıştırılacak komut ya da toplu iş kütüğü.\n"
|
||||
|
||||
IDS_DELETE_ALL "Bu işlem tüm zamanlanan işleri silecek.\n"
|
||||
IDS_NEW_JOB "%lu iş kimliğiyle yeni bir iş eklendi.\n"
|
||||
IDS_JOBS_LIST "Durum Km. Gün Saat Komut Yatacı\n"
|
||||
IDS_NO_ENTRIES "Dizelgede bir giriş yok.\n"
|
||||
|
||||
IDS_CONFIRM_QUESTION "Bu işlemi sürdürmek ister misiniz? (E/H) [H]: "
|
||||
IDS_CONFIRM_INVALID "\nBu geçersiz bir yanıttır.\n"
|
||||
IDS_CONFIRM_YES "E"
|
||||
IDS_CONFIRM_NO "H"
|
||||
|
||||
IDS_TODAY "Bugün"
|
||||
IDS_TOMORROW "Yarın"
|
||||
IDS_EVERY "Her"
|
||||
IDS_NEXT "Bir sonraki"
|
||||
|
||||
IDS_YES "Evet"
|
||||
IDS_NO "Hayır"
|
||||
IDS_ERROR "YANLIŞLIK"
|
||||
IDS_OK "Tamam"
|
||||
|
||||
IDS_TASKID "Görev kimliği: %lu\n"
|
||||
IDS_STATUS "Durum: %s\n"
|
||||
IDS_SCHEDULE "Zamanlama: %s\n"
|
||||
IDS_TIME "Günün saati: %s\n"
|
||||
IDS_INTERACTIVE "Etkileşme: %s\n"
|
||||
IDS_COMMAND "Komut: %s\n"
|
||||
END
|
31
reactos/base/applications/cmdutils/at/resource.h
Normal file
31
reactos/base/applications/cmdutils/at/resource.h
Normal file
@@ -0,0 +1,31 @@
|
||||
#pragma once
|
||||
|
||||
#define IDS_USAGE 100
|
||||
|
||||
#define IDS_DELETE_ALL 105
|
||||
#define IDS_NEW_JOB 106
|
||||
#define IDS_JOBS_LIST 107
|
||||
#define IDS_NO_ENTRIES 108
|
||||
|
||||
#define IDS_TODAY 109
|
||||
#define IDS_TOMORROW 110
|
||||
#define IDS_EVERY 111
|
||||
#define IDS_NEXT 112
|
||||
|
||||
|
||||
#define IDS_YES 101
|
||||
#define IDS_NO 102
|
||||
#define IDS_ERROR 103
|
||||
#define IDS_OK 104
|
||||
|
||||
#define IDS_TASKID 122
|
||||
#define IDS_STATUS 123
|
||||
#define IDS_SCHEDULE 124
|
||||
#define IDS_TIME 125
|
||||
#define IDS_INTERACTIVE 126
|
||||
#define IDS_COMMAND 127
|
||||
|
||||
#define IDS_CONFIRM_QUESTION 130
|
||||
#define IDS_CONFIRM_INVALID 131
|
||||
#define IDS_CONFIRM_YES 132
|
||||
#define IDS_CONFIRM_NO 133
|
@@ -1,5 +1,8 @@
|
||||
|
||||
include_directories(${REACTOS_SOURCE_DIR}/sdk/lib/conutils)
|
||||
|
||||
add_executable(clip clip.c clip.rc)
|
||||
set_module_type(clip win32cui UNICODE)
|
||||
add_importlibs(clip user32 msvcrt kernel32 advapi32)
|
||||
target_link_libraries(clip conutils ${PSEH_LIB})
|
||||
add_importlibs(clip advapi32 user32 msvcrt kernel32)
|
||||
add_cd_file(TARGET clip DESTINATION reactos/system32 FOR all)
|
||||
|
@@ -12,31 +12,17 @@
|
||||
#include <winbase.h>
|
||||
#include <winuser.h>
|
||||
|
||||
#include <conutils.h>
|
||||
|
||||
#include "resource.h"
|
||||
|
||||
static void PrintError(void)
|
||||
VOID PrintError(DWORD dwError)
|
||||
{
|
||||
DWORD dwError;
|
||||
LPWSTR lpMsgBuf = NULL;
|
||||
|
||||
dwError = GetLastError();
|
||||
if (dwError == NO_ERROR)
|
||||
if (dwError == ERROR_SUCCESS)
|
||||
return;
|
||||
|
||||
FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
|
||||
NULL, dwError, 0, (LPWSTR)&lpMsgBuf, 0, NULL);
|
||||
wprintf(L"%s", lpMsgBuf);
|
||||
LocalFree(lpMsgBuf);
|
||||
}
|
||||
|
||||
static void PrintResourceString(UINT uID)
|
||||
{
|
||||
WCHAR buff[500];
|
||||
|
||||
if (LoadStringW(GetModuleHandle(NULL), uID, buff, ARRAYSIZE(buff)))
|
||||
{
|
||||
wprintf(L"%s", buff);
|
||||
}
|
||||
ConMsgPuts(StdErr, FORMAT_MESSAGE_FROM_SYSTEM,
|
||||
NULL, dwError, LANG_USER_DEFAULT);
|
||||
}
|
||||
|
||||
static BOOL IsDataUnicode(HGLOBAL hGlobal)
|
||||
@@ -61,28 +47,27 @@ int wmain(int argc, wchar_t** argv)
|
||||
LPBYTE lpBuffer;
|
||||
SIZE_T dwSize = 0;
|
||||
|
||||
/* Initialize the Console Standard Streams */
|
||||
hInput = GetStdHandle(STD_INPUT_HANDLE);
|
||||
ConInitStdStreams();
|
||||
|
||||
/* Check for usage */
|
||||
if (argc > 1 && wcsncmp(argv[1], L"/?", 2) == 0)
|
||||
{
|
||||
PrintResourceString(IDS_HELP);
|
||||
ConResPuts(StdOut, IDS_HELP);
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (GetFileType(hInput) == FILE_TYPE_CHAR)
|
||||
{
|
||||
PrintResourceString(IDS_USAGE);
|
||||
ConResPuts(StdOut, IDS_USAGE);
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Initialize a growable buffer for holding clipboard data */
|
||||
hBuffer = GlobalAlloc(GMEM_MOVEABLE | GMEM_ZEROINIT, 4096);
|
||||
if (!hBuffer)
|
||||
{
|
||||
PrintError();
|
||||
return -1;
|
||||
}
|
||||
goto Failure;
|
||||
|
||||
/*
|
||||
* Read data from the input stream by chunks of 4096 bytes
|
||||
@@ -92,7 +77,7 @@ int wmain(int argc, wchar_t** argv)
|
||||
{
|
||||
lpBuffer = GlobalLock(hBuffer);
|
||||
if (!lpBuffer)
|
||||
goto cleanup;
|
||||
goto Failure;
|
||||
|
||||
bStatus = ReadFile(hInput, lpBuffer + dwSize, 4096, &dwBytesRead, NULL);
|
||||
dwSize += dwBytesRead;
|
||||
@@ -100,11 +85,11 @@ int wmain(int argc, wchar_t** argv)
|
||||
|
||||
hTemp = GlobalReAlloc(hBuffer, GlobalSize(hBuffer) + 4096, GMEM_ZEROINIT);
|
||||
if (!hTemp)
|
||||
goto cleanup;
|
||||
goto Failure;
|
||||
|
||||
hBuffer = hTemp;
|
||||
}
|
||||
while (dwBytesRead > 0 && bStatus);
|
||||
while (bStatus && dwBytesRead > 0);
|
||||
|
||||
/*
|
||||
* Resize the buffer to the total size of data read.
|
||||
@@ -118,7 +103,7 @@ int wmain(int argc, wchar_t** argv)
|
||||
|
||||
/* Attempt to open the clipboard */
|
||||
if (!OpenClipboard(NULL))
|
||||
goto cleanup;
|
||||
goto Failure;
|
||||
|
||||
/* Empty it, copy our data, then close it */
|
||||
|
||||
@@ -138,8 +123,8 @@ int wmain(int argc, wchar_t** argv)
|
||||
CloseClipboard();
|
||||
return 0;
|
||||
|
||||
cleanup:
|
||||
GlobalFree(hBuffer);
|
||||
PrintError();
|
||||
Failure:
|
||||
if (hBuffer) GlobalFree(hBuffer);
|
||||
PrintError(GetLastError());
|
||||
return -1;
|
||||
}
|
||||
|
@@ -2,9 +2,11 @@
|
||||
|
||||
#include "resource.h"
|
||||
|
||||
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS Clip Command"
|
||||
#define REACTOS_STR_INTERNAL_NAME "clip"
|
||||
#define REACTOS_STR_ORIGINAL_FILENAME "clip.exe"
|
||||
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
||||
|
||||
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS Clip Command"
|
||||
#define REACTOS_STR_INTERNAL_NAME "clip"
|
||||
#define REACTOS_STR_ORIGINAL_FILENAME "clip.exe"
|
||||
#include <reactos/version.rc>
|
||||
|
||||
/* UTF-8 */
|
||||
|
@@ -1,5 +1,8 @@
|
||||
|
||||
include_directories(${REACTOS_SOURCE_DIR}/sdk/lib/conutils)
|
||||
|
||||
add_executable(comp comp.c comp.rc)
|
||||
set_module_type(comp win32cui UNICODE)
|
||||
add_importlibs(comp user32 msvcrt kernel32)
|
||||
target_link_libraries(comp conutils ${PSEH_LIB})
|
||||
add_importlibs(comp msvcrt kernel32)
|
||||
add_cd_file(TARGET comp DESTINATION reactos/system32 FOR all)
|
||||
|
@@ -1,273 +1,245 @@
|
||||
/*
|
||||
* ReactOS Win32 Applications
|
||||
* Copyright (C) 2005 ReactOS Team
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*/
|
||||
/*
|
||||
* PROJECT: ReactOS Comp utility
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* FILE: base/applications/cmdutils/comp/comp.c
|
||||
* PURPOSE: Compares the contents of two files
|
||||
* PROGRAMMERS: Ged Murphy (gedmurphy@gmail.com)
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
// #include <string.h>
|
||||
// #include <wchar.h>
|
||||
#include <assert.h>
|
||||
|
||||
#define WIN32_NO_STATUS
|
||||
#include <windef.h>
|
||||
#include <winbase.h>
|
||||
#include <winuser.h>
|
||||
|
||||
#include "resource.h"
|
||||
|
||||
#define STRBUF 1024
|
||||
|
||||
VOID PrintResourceString(INT resID, ...)
|
||||
{
|
||||
WCHAR bufSrc[RC_STRING_MAX_SIZE];
|
||||
WCHAR bufFormatted[RC_STRING_MAX_SIZE];
|
||||
CHAR bufFormattedOem[RC_STRING_MAX_SIZE];
|
||||
|
||||
va_list args;
|
||||
va_start(args, resID);
|
||||
|
||||
if (LoadStringW(GetModuleHandleW(NULL), resID, bufSrc, ARRAYSIZE(bufSrc)))
|
||||
vswprintf(bufFormatted, bufSrc, args);
|
||||
else
|
||||
swprintf(bufFormatted, L"Resource loading error!");
|
||||
|
||||
CharToOemW(bufFormatted, bufFormattedOem);
|
||||
fputs(bufFormattedOem, stdout);
|
||||
|
||||
va_end(args);
|
||||
}
|
||||
|
||||
/* getline: read a line, return length */
|
||||
INT GetBuff(PBYTE buff, FILE* in)
|
||||
{
|
||||
return fread(buff, sizeof(BYTE), STRBUF, in);
|
||||
}
|
||||
|
||||
INT FileSize(FILE* fd)
|
||||
{
|
||||
INT result = -1;
|
||||
if (fseek(fd, 0, SEEK_END) == 0 && (result = ftell(fd)) != -1)
|
||||
{
|
||||
/* Restoring file pointer */
|
||||
rewind(fd);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/* Print program usage */
|
||||
VOID Usage(VOID)
|
||||
{
|
||||
PrintResourceString(IDS_HELP);
|
||||
}
|
||||
|
||||
|
||||
int wmain (int argc, WCHAR* argv[])
|
||||
{
|
||||
INT i;
|
||||
|
||||
/* File pointers */
|
||||
FILE *fp1 = NULL;
|
||||
FILE *fp2 = NULL;
|
||||
|
||||
INT BufLen1, BufLen2;
|
||||
PBYTE Buff1 = NULL;
|
||||
PBYTE Buff2 = NULL;
|
||||
WCHAR File1[_MAX_PATH + 1], // File paths
|
||||
File2[_MAX_PATH + 1];
|
||||
BOOL bAscii = FALSE, // /A switch
|
||||
bLineNos = FALSE; // /L switch
|
||||
UINT LineNumber;
|
||||
UINT Offset;
|
||||
INT FileSizeFile1;
|
||||
INT FileSizeFile2;
|
||||
INT NumberOfOptions = 0;
|
||||
INT FilesOK = 1;
|
||||
INT Status = EXIT_SUCCESS;
|
||||
|
||||
/* Parse command line for options */
|
||||
for (i = 1; i < argc; i++)
|
||||
{
|
||||
if (argv[i][0] == L'/')
|
||||
{
|
||||
switch (argv[i][1])
|
||||
{
|
||||
case L'A':
|
||||
bAscii = TRUE;
|
||||
NumberOfOptions++;
|
||||
break;
|
||||
|
||||
case L'L':
|
||||
bLineNos = TRUE;
|
||||
NumberOfOptions++;
|
||||
break;
|
||||
|
||||
case L'?':
|
||||
Usage();
|
||||
return EXIT_SUCCESS;
|
||||
|
||||
default:
|
||||
PrintResourceString(IDS_INVALIDSWITCH, argv[i][1]);
|
||||
Usage();
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (argc - NumberOfOptions == 3)
|
||||
{
|
||||
wcsncpy(File1, argv[1 + NumberOfOptions], _MAX_PATH);
|
||||
wcsncpy(File2, argv[2 + NumberOfOptions], _MAX_PATH);
|
||||
}
|
||||
else
|
||||
{
|
||||
PrintResourceString(IDS_BADSYNTAX);
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
|
||||
Buff1 = (PBYTE)malloc(STRBUF);
|
||||
if (Buff1 == NULL)
|
||||
{
|
||||
wprintf(L"Can't get free memory for Buff1\n");
|
||||
Status = EXIT_FAILURE;
|
||||
goto Cleanup;
|
||||
}
|
||||
|
||||
Buff2 = (PBYTE)malloc(STRBUF);
|
||||
if (Buff2 == NULL)
|
||||
{
|
||||
wprintf(L"Can't get free memory for Buff2\n");
|
||||
Status = EXIT_FAILURE;
|
||||
goto Cleanup;
|
||||
}
|
||||
|
||||
if ((fp1 = _wfopen(File1, L"rb")) == NULL)
|
||||
{
|
||||
PrintResourceString(IDS_FILEERROR, File1);
|
||||
Status = EXIT_FAILURE;
|
||||
goto Cleanup;
|
||||
}
|
||||
if ((fp2 = _wfopen(File2, L"rb")) == NULL)
|
||||
{
|
||||
PrintResourceString(IDS_FILEERROR, File2);
|
||||
Status = EXIT_FAILURE;
|
||||
goto Cleanup;
|
||||
}
|
||||
|
||||
PrintResourceString(IDS_COMPARING, File1, File2);
|
||||
|
||||
FileSizeFile1 = FileSize(fp1);
|
||||
if (FileSizeFile1 == -1)
|
||||
{
|
||||
PrintResourceString(IDS_FILESIZEERROR, File1);
|
||||
Status = EXIT_FAILURE;
|
||||
goto Cleanup;
|
||||
}
|
||||
|
||||
FileSizeFile2 = FileSize(fp2);
|
||||
if (FileSizeFile2 == -1)
|
||||
{
|
||||
PrintResourceString(IDS_FILESIZEERROR, File2);
|
||||
Status = EXIT_FAILURE;
|
||||
goto Cleanup;
|
||||
}
|
||||
|
||||
if (FileSizeFile1 != FileSizeFile2)
|
||||
{
|
||||
PrintResourceString(IDS_SIZEDIFFERS);
|
||||
Status = EXIT_FAILURE;
|
||||
goto Cleanup;
|
||||
}
|
||||
|
||||
LineNumber = 1;
|
||||
Offset = 0;
|
||||
while (1)
|
||||
{
|
||||
BufLen1 = GetBuff(Buff1, fp1);
|
||||
BufLen2 = GetBuff(Buff2, fp2);
|
||||
|
||||
if (ferror(fp1) || ferror(fp2))
|
||||
{
|
||||
PrintResourceString(IDS_READERROR);
|
||||
Status = EXIT_FAILURE;
|
||||
goto Cleanup;
|
||||
}
|
||||
|
||||
if (!BufLen1 && !BufLen2)
|
||||
break;
|
||||
|
||||
assert(BufLen1 == BufLen2);
|
||||
for (i = 0; i < BufLen1; i++)
|
||||
{
|
||||
if (Buff1[i] != Buff2[i])
|
||||
{
|
||||
FilesOK = 0;
|
||||
|
||||
/* Reporting here a mismatch */
|
||||
if (bLineNos)
|
||||
{
|
||||
PrintResourceString(IDS_MISMATCHLINE, LineNumber);
|
||||
}
|
||||
else
|
||||
{
|
||||
PrintResourceString(IDS_MISMATCHOFFSET, Offset);
|
||||
}
|
||||
|
||||
if (bAscii)
|
||||
{
|
||||
PrintResourceString(IDS_ASCIIDIFF, 1, Buff1[i]);
|
||||
PrintResourceString(IDS_ASCIIDIFF, 2, Buff2[i]);
|
||||
}
|
||||
else
|
||||
{
|
||||
PrintResourceString(IDS_HEXADECIMALDIFF, 1, Buff1[i]);
|
||||
PrintResourceString(IDS_HEXADECIMALDIFF, 2, Buff2[i]);
|
||||
}
|
||||
}
|
||||
|
||||
Offset++;
|
||||
|
||||
if (Buff1[i] == '\n')
|
||||
LineNumber++;
|
||||
}
|
||||
}
|
||||
|
||||
if (FilesOK)
|
||||
PrintResourceString(IDS_MATCH);
|
||||
|
||||
Cleanup:
|
||||
if (fp2)
|
||||
fclose(fp2);
|
||||
if (fp1)
|
||||
fclose(fp1);
|
||||
|
||||
if (Buff2)
|
||||
free(Buff2);
|
||||
if (Buff1)
|
||||
free(Buff1);
|
||||
|
||||
return Status;
|
||||
}
|
||||
|
||||
/* EOF */
|
||||
/*
|
||||
* ReactOS Win32 Applications
|
||||
* Copyright (C) 2005 ReactOS Team
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*/
|
||||
/*
|
||||
* PROJECT: ReactOS Comp utility
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* FILE: base/applications/cmdutils/comp/comp.c
|
||||
* PURPOSE: Compares the contents of two files
|
||||
* PROGRAMMERS: Ged Murphy (gedmurphy@gmail.com)
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <assert.h>
|
||||
|
||||
#define WIN32_NO_STATUS
|
||||
#include <windef.h>
|
||||
#include <winbase.h>
|
||||
|
||||
#include <conutils.h>
|
||||
|
||||
#include "resource.h"
|
||||
|
||||
#define STRBUF 1024
|
||||
|
||||
/* getline: read a line, return length */
|
||||
INT GetBuff(PBYTE buff, FILE* in)
|
||||
{
|
||||
return fread(buff, sizeof(BYTE), STRBUF, in);
|
||||
}
|
||||
|
||||
INT FileSize(FILE* fd)
|
||||
{
|
||||
INT result = -1;
|
||||
if (fseek(fd, 0, SEEK_END) == 0 && (result = ftell(fd)) != -1)
|
||||
{
|
||||
/* Restoring file pointer */
|
||||
rewind(fd);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
int wmain(int argc, WCHAR* argv[])
|
||||
{
|
||||
INT i;
|
||||
|
||||
/* File pointers */
|
||||
FILE *fp1 = NULL;
|
||||
FILE *fp2 = NULL;
|
||||
|
||||
INT BufLen1, BufLen2;
|
||||
PBYTE Buff1 = NULL;
|
||||
PBYTE Buff2 = NULL;
|
||||
WCHAR File1[_MAX_PATH + 1], // File paths
|
||||
File2[_MAX_PATH + 1];
|
||||
BOOL bAscii = FALSE, // /A switch
|
||||
bLineNos = FALSE; // /L switch
|
||||
UINT LineNumber;
|
||||
UINT Offset;
|
||||
INT FileSizeFile1;
|
||||
INT FileSizeFile2;
|
||||
INT NumberOfOptions = 0;
|
||||
INT FilesOK = 1;
|
||||
INT Status = EXIT_SUCCESS;
|
||||
|
||||
/* Initialize the Console Standard Streams */
|
||||
ConInitStdStreams();
|
||||
|
||||
/* Parse command line for options */
|
||||
for (i = 1; i < argc; i++)
|
||||
{
|
||||
if (argv[i][0] == L'/')
|
||||
{
|
||||
switch (towlower(argv[i][1]))
|
||||
{
|
||||
case L'a':
|
||||
bAscii = TRUE;
|
||||
NumberOfOptions++;
|
||||
break;
|
||||
|
||||
case L'l':
|
||||
bLineNos = TRUE;
|
||||
NumberOfOptions++;
|
||||
break;
|
||||
|
||||
case L'?':
|
||||
ConResPuts(StdOut, IDS_HELP);
|
||||
return EXIT_SUCCESS;
|
||||
|
||||
default:
|
||||
ConResPrintf(StdErr, IDS_INVALIDSWITCH, argv[i][1]);
|
||||
ConResPuts(StdOut, IDS_HELP);
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (argc - NumberOfOptions == 3)
|
||||
{
|
||||
wcsncpy(File1, argv[1 + NumberOfOptions], _MAX_PATH);
|
||||
wcsncpy(File2, argv[2 + NumberOfOptions], _MAX_PATH);
|
||||
}
|
||||
else
|
||||
{
|
||||
ConResPuts(StdErr, IDS_BADSYNTAX);
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
|
||||
Buff1 = (PBYTE)malloc(STRBUF);
|
||||
if (Buff1 == NULL)
|
||||
{
|
||||
ConPuts(StdErr, L"Can't get free memory for Buff1\n");
|
||||
Status = EXIT_FAILURE;
|
||||
goto Cleanup;
|
||||
}
|
||||
|
||||
Buff2 = (PBYTE)malloc(STRBUF);
|
||||
if (Buff2 == NULL)
|
||||
{
|
||||
ConPuts(StdErr, L"Can't get free memory for Buff2\n");
|
||||
Status = EXIT_FAILURE;
|
||||
goto Cleanup;
|
||||
}
|
||||
|
||||
if ((fp1 = _wfopen(File1, L"rb")) == NULL)
|
||||
{
|
||||
ConResPrintf(StdErr, IDS_FILEERROR, File1);
|
||||
Status = EXIT_FAILURE;
|
||||
goto Cleanup;
|
||||
}
|
||||
if ((fp2 = _wfopen(File2, L"rb")) == NULL)
|
||||
{
|
||||
ConResPrintf(StdErr, IDS_FILEERROR, File2);
|
||||
Status = EXIT_FAILURE;
|
||||
goto Cleanup;
|
||||
}
|
||||
|
||||
ConResPrintf(StdOut, IDS_COMPARING, File1, File2);
|
||||
|
||||
FileSizeFile1 = FileSize(fp1);
|
||||
if (FileSizeFile1 == -1)
|
||||
{
|
||||
ConResPrintf(StdErr, IDS_FILESIZEERROR, File1);
|
||||
Status = EXIT_FAILURE;
|
||||
goto Cleanup;
|
||||
}
|
||||
|
||||
FileSizeFile2 = FileSize(fp2);
|
||||
if (FileSizeFile2 == -1)
|
||||
{
|
||||
ConResPrintf(StdErr, IDS_FILESIZEERROR, File2);
|
||||
Status = EXIT_FAILURE;
|
||||
goto Cleanup;
|
||||
}
|
||||
|
||||
if (FileSizeFile1 != FileSizeFile2)
|
||||
{
|
||||
ConResPuts(StdOut, IDS_SIZEDIFFERS);
|
||||
Status = EXIT_FAILURE;
|
||||
goto Cleanup;
|
||||
}
|
||||
|
||||
LineNumber = 1;
|
||||
Offset = 0;
|
||||
while (1)
|
||||
{
|
||||
BufLen1 = GetBuff(Buff1, fp1);
|
||||
BufLen2 = GetBuff(Buff2, fp2);
|
||||
|
||||
if (ferror(fp1) || ferror(fp2))
|
||||
{
|
||||
ConResPuts(StdErr, IDS_READERROR);
|
||||
Status = EXIT_FAILURE;
|
||||
goto Cleanup;
|
||||
}
|
||||
|
||||
if (!BufLen1 && !BufLen2)
|
||||
break;
|
||||
|
||||
assert(BufLen1 == BufLen2);
|
||||
for (i = 0; i < BufLen1; i++)
|
||||
{
|
||||
if (Buff1[i] != Buff2[i])
|
||||
{
|
||||
FilesOK = 0;
|
||||
|
||||
/* Reporting here a mismatch */
|
||||
if (bLineNos)
|
||||
ConResPrintf(StdOut, IDS_MISMATCHLINE, LineNumber);
|
||||
else
|
||||
ConResPrintf(StdOut, IDS_MISMATCHOFFSET, Offset);
|
||||
|
||||
if (bAscii)
|
||||
{
|
||||
ConResPrintf(StdOut, IDS_ASCIIDIFF, 1, Buff1[i]);
|
||||
ConResPrintf(StdOut, IDS_ASCIIDIFF, 2, Buff2[i]);
|
||||
}
|
||||
else
|
||||
{
|
||||
ConResPrintf(StdOut, IDS_HEXADECIMALDIFF, 1, Buff1[i]);
|
||||
ConResPrintf(StdOut, IDS_HEXADECIMALDIFF, 2, Buff2[i]);
|
||||
}
|
||||
}
|
||||
|
||||
Offset++;
|
||||
|
||||
if (Buff1[i] == '\n')
|
||||
LineNumber++;
|
||||
}
|
||||
}
|
||||
|
||||
if (FilesOK)
|
||||
ConResPuts(StdOut, IDS_MATCH);
|
||||
|
||||
Cleanup:
|
||||
if (fp2)
|
||||
fclose(fp2);
|
||||
if (fp1)
|
||||
fclose(fp1);
|
||||
|
||||
if (Buff2)
|
||||
free(Buff2);
|
||||
if (Buff1)
|
||||
free(Buff1);
|
||||
|
||||
return Status;
|
||||
}
|
||||
|
||||
/* EOF */
|
||||
|
@@ -1,4 +1,4 @@
|
||||
/* Ștefan Fulea (stefan dot fulea at mail dot md) */
|
||||
/* Translator: Ștefan Fulea (stefan dot fulea at mail dot md) */
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_DEFAULT
|
||||
|
||||
STRINGTABLE
|
||||
@@ -11,9 +11,9 @@ COMP [/L] [/A] [data1] [data2]\n\n\
|
||||
/L Afișează numărul liniei pentru diferențe.\n"
|
||||
IDS_INVALIDSWITCH "Parametru nevalid - /%c\n"
|
||||
IDS_BADSYNTAX "Sintaxă eronată\n"
|
||||
IDS_FILEERROR "Nu se poate găsi/deschide fișierul: %s\n"
|
||||
IDS_COMPARING "Se compară %s și %s...\n"
|
||||
IDS_FILESIZEERROR "Nu se poate determina dimensiunea fișierului: %s\n"
|
||||
IDS_FILEERROR "Nu poate fi găsit/deschis fișierul: %s\n"
|
||||
IDS_COMPARING "%s este comparat cu %s...\n"
|
||||
IDS_FILESIZEERROR "Eroare la determinarea dimensiunii fișierului: %s\n"
|
||||
IDS_SIZEDIFFERS "Fișierele au dimensiuni diferite.\n"
|
||||
IDS_READERROR "Eroare la citirea fișierelor.\n"
|
||||
IDS_MISMATCHLINE "Diferență identificată la linia %d\n"
|
||||
|
@@ -1,7 +1,5 @@
|
||||
#pragma once
|
||||
|
||||
#define RC_STRING_MAX_SIZE 4096
|
||||
|
||||
#define IDS_HELP 100
|
||||
#define IDS_INVALIDSWITCH 101
|
||||
#define IDS_BADSYNTAX 102
|
||||
|
@@ -0,0 +1,12 @@
|
||||
|
||||
include_directories(${REACTOS_SOURCE_DIR}/sdk/lib/conutils)
|
||||
|
||||
## The message string templates are in ANSI to reduce binary size
|
||||
add_message_headers(ANSI evtmsgstr.mc)
|
||||
|
||||
add_executable(eventcreate eventcreate.c eventcreate.rc)
|
||||
set_module_type(eventcreate win32cui UNICODE)
|
||||
add_dependencies(eventcreate evtmsgstr)
|
||||
target_link_libraries(eventcreate conutils ${PSEH_LIB})
|
||||
add_importlibs(eventcreate advapi32 msvcrt kernel32)
|
||||
add_cd_file(TARGET eventcreate DESTINATION reactos/system32 FOR all)
|
1269
reactos/base/applications/cmdutils/eventcreate/eventcreate.c
Normal file
1269
reactos/base/applications/cmdutils/eventcreate/eventcreate.c
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,32 @@
|
||||
#include <windef.h>
|
||||
|
||||
#include "resource.h"
|
||||
|
||||
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
||||
|
||||
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS EventCreate Command"
|
||||
#define REACTOS_STR_INTERNAL_NAME "eventcreate"
|
||||
#define REACTOS_STR_ORIGINAL_FILENAME "eventcreate.exe"
|
||||
#include <reactos/version.rc>
|
||||
|
||||
/* Message Table resource for the message string templates */
|
||||
#include <evtmsgstr.rc>
|
||||
|
||||
/* UTF-8 */
|
||||
#pragma code_page(65001)
|
||||
|
||||
#ifdef LANGUAGE_EN_US
|
||||
#include "lang/en-US.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_FR_FR
|
||||
#include "lang/fr-FR.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_RO_RO
|
||||
#include "lang/ro-RO.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_RU_RU
|
||||
#include "lang/ru-RU.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_TR_TR
|
||||
#include "lang/tr-TR.rc"
|
||||
#endif
|
105
reactos/base/applications/cmdutils/eventcreate/evtmsggen.c
Normal file
105
reactos/base/applications/cmdutils/eventcreate/evtmsggen.c
Normal file
@@ -0,0 +1,105 @@
|
||||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS EventCreate Command
|
||||
* FILE: base/applications/cmdutils/eventcreate/evtmsggen.c
|
||||
* PURPOSE: Generator for the event message string templates file.
|
||||
* Creates the message string file in the current directory.
|
||||
* PROGRAMMER: Hermes Belusca-Maito
|
||||
*
|
||||
* You can compile this generator:
|
||||
* with GCC : $ gcc -o evtmsggen.exe evtmsggen.c
|
||||
* with MSVC: $ cl evtmsggen.c (or: $ cl /Fe"evtmsggen.exe" evtmsggen.c)
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
/*
|
||||
* Enable/disable this option to use "English" for the message table language.
|
||||
* The default behaviour when the option is disabled selects "Neutral" language.
|
||||
*/
|
||||
// #define ENGLISH
|
||||
|
||||
/* The default End-Of-Line control for the message file */
|
||||
#define EOL "\r\n"
|
||||
|
||||
|
||||
static void usage(char* name)
|
||||
{
|
||||
fprintf(stdout, "Usage: %s ID_min ID_max outfile.mc\n", name);
|
||||
}
|
||||
|
||||
int main(int argc, char* argv[])
|
||||
{
|
||||
FILE* outFile;
|
||||
unsigned int id_min, id_max;
|
||||
unsigned int i;
|
||||
|
||||
/* Validate the arguments */
|
||||
if (argc != 4)
|
||||
{
|
||||
usage(argv[0]);
|
||||
return -1;
|
||||
}
|
||||
|
||||
id_min = (unsigned int)atoi(argv[1]);
|
||||
id_max = (unsigned int)atoi(argv[2]);
|
||||
if (id_min > id_max)
|
||||
{
|
||||
fprintf(stderr, "ERROR: Min ID %u cannot be strictly greater than Max ID %u !\n", id_min, id_max);
|
||||
return -1;
|
||||
}
|
||||
|
||||
/* Open the file */
|
||||
outFile = fopen(argv[3], "wb");
|
||||
if (!outFile)
|
||||
{
|
||||
fprintf(stderr, "ERROR: Could not create output file '%s'.\n", argv[3]);
|
||||
return -1;
|
||||
}
|
||||
|
||||
/* Generate the file */
|
||||
|
||||
/* Write the header */
|
||||
fprintf(outFile,
|
||||
";/*" EOL
|
||||
"; * %s" EOL
|
||||
"; * Contains event message string templates for the EventCreate Command." EOL
|
||||
"; *" EOL
|
||||
"; * This file is autogenerated, do not edit." EOL
|
||||
"; * Generated with:" EOL
|
||||
"; * %s %u %u %s" EOL
|
||||
"; */" EOL
|
||||
EOL
|
||||
#ifdef ENGLISH
|
||||
"LanguageNames=(English=0x409:MSG00409)" EOL
|
||||
#else
|
||||
"LanguageNames=(Neutral=0x0000:MSG00000)" EOL
|
||||
#endif
|
||||
"MessageIdTypedef=DWORD" EOL
|
||||
EOL,
|
||||
argv[3],
|
||||
argv[0], id_min /* argv[1] */, id_max /* argv[2] */, argv[3]);
|
||||
|
||||
/* Write the message string templates */
|
||||
for (i = id_min; i <= id_max; ++i)
|
||||
{
|
||||
fprintf(outFile,
|
||||
"MessageId=0x%X" EOL
|
||||
#ifdef ENGLISH
|
||||
"Language=English" EOL
|
||||
#else
|
||||
"Language=Neutral" EOL
|
||||
#endif
|
||||
"%%1" EOL
|
||||
"." EOL
|
||||
EOL,
|
||||
i);
|
||||
}
|
||||
|
||||
/* Close the file */
|
||||
fclose(outFile);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* EOF */
|
327692
reactos/base/applications/cmdutils/eventcreate/evtmsgstr.mc
Normal file
327692
reactos/base/applications/cmdutils/eventcreate/evtmsgstr.mc
Normal file
File diff suppressed because it is too large
Load Diff
69
reactos/base/applications/cmdutils/eventcreate/lang/en-US.rc
Normal file
69
reactos/base/applications/cmdutils/eventcreate/lang/en-US.rc
Normal file
@@ -0,0 +1,69 @@
|
||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_USAGE "Type ""EVENTCREATE /?"" for usage information.\n"
|
||||
IDS_HELP "\n\
|
||||
EVENTCREATE [/S computer [/U [domain\\]user [/P password]]] /ID EventID\n\
|
||||
{[/L logname] | [/SO source]} /T type /C category /D description\n\
|
||||
\n\
|
||||
Description:\n\
|
||||
This tool enables an administrator to create a custom event in\n\
|
||||
a specified event log.\n\
|
||||
\n\
|
||||
Parameters:\n\
|
||||
/S computer Specifies the remote computer where to connect.\n\
|
||||
\n\
|
||||
/U [domain\\]user Specifies the user account under which the command\n\
|
||||
should execute.\n\
|
||||
\n\
|
||||
/P [password] Specifies the password of the user account.\n\
|
||||
Prompts for input if omitted.\n\
|
||||
\n\
|
||||
/L logname Specifies the name of the log where the event will be\n\
|
||||
created. The valid names are:\n\
|
||||
Application, System, Security\n\
|
||||
(the latter is reserved only for the SYSTEM account).\n\
|
||||
\n\
|
||||
/SO source Specifies the source name to use for the event\n\
|
||||
(if not specified, the default source name\n\
|
||||
will be 'eventcreate').\n\
|
||||
A valid source can be any string and should represent\n\
|
||||
the application or the component that is generating\n\
|
||||
the event.\n\
|
||||
\n\
|
||||
/T type Specifies the type of event to create.\n\
|
||||
The valid types are: SUCCESS, ERROR, WARNING,\n\
|
||||
INFORMATION.\n\
|
||||
\n\
|
||||
/C category Specifies the event category (integer) for the event.\n\
|
||||
\n\
|
||||
/ID EventID Specifies the event ID for the event. This must be\n\
|
||||
an integer between 0 and 65535.\n\
|
||||
\n\
|
||||
/D description Specifies the description to use for the newly\n\
|
||||
created event.\n\
|
||||
\n\
|
||||
/? Displays this help screen.\n\
|
||||
"
|
||||
IDS_INVALIDSWITCH "Invalid switch - '%s'.\n"
|
||||
IDS_BADSYNTAX_0 "Bad command line syntax.\n"
|
||||
IDS_BADSYNTAX_1 "Bad command line syntax. The option '%s' requires a value.\n"
|
||||
IDS_BADSYNTAX_2 "Bad command line syntax. The value for the option '%s' cannot be empty.\n"
|
||||
IDS_BADSYNTAX_3 "Bad command line syntax. The value '%s' is not allowed for the option '%s'.\n"
|
||||
IDS_BADSYNTAX_4 "Bad command line syntax. The value cannot be specified for the option '%s'.\n"
|
||||
IDS_BADSYNTAX_5 "Bad command line syntax. The option '%s' is not allowed more than %lu times.\n"
|
||||
IDS_BADSYNTAX_6 "Bad command line syntax. The mandatory option '%s' is absent.\n"
|
||||
// IDS_BADSYNTAX_7 "Bad command line syntax. The value for the option '%s' is outside the allowed range.\n"
|
||||
IDS_BADSYNTAX_7 "Bad command line syntax. The value for the option '%s' must be between %d and %d.\n"
|
||||
|
||||
IDS_LOG_NOT_FOUND "The log '%s' does not exist. Cannot create the event.\n"
|
||||
IDS_SOURCE_NOCREATE "The new source cannot be created because the log name is not specified.\nPlease use the /L switch to specify the log name.\n"
|
||||
IDS_SOURCE_EXISTS "The source already exists in the log '%s' and cannot be duplicated.\n"
|
||||
IDS_SOURCE_NOT_CUSTOM "The Source parameter is used to identify the custom scripts/applications\n(not the installed applications).\n"
|
||||
|
||||
IDS_SUCCESS_1 "Operation successful: an event of type '%s' has been created in the log '%s'.\n"
|
||||
IDS_SUCCESS_2 "Operation successful: an event of type '%s' has been created with the source '%s'.\n"
|
||||
IDS_SUCCESS_3 "Operation successful: an event of type '%s' has been created\nin the log '%s' with the source '%s'.\n"
|
||||
IDS_SWITCH_UNIMPLEMENTED "The option '%s' is not currently supported, sorry for the inconvenience!\n"
|
||||
END
|
70
reactos/base/applications/cmdutils/eventcreate/lang/fr-FR.rc
Normal file
70
reactos/base/applications/cmdutils/eventcreate/lang/fr-FR.rc
Normal file
@@ -0,0 +1,70 @@
|
||||
LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_USAGE "Entrez ""EVENTCREATE /?"" pour afficher la syntaxe.\n"
|
||||
IDS_HELP "\n\
|
||||
EVENTCREATE [/S système [/U utilisateur [/P mot_de_passe]]] /ID id_événement\n\
|
||||
{[/L journal] | [/SO source]} /T type /C catégorie /D description\n\
|
||||
\n\
|
||||
Description :\n\
|
||||
Cet outil permet à un administrateur de créer un événement ayant un\n\
|
||||
message et un identificateur personnalisés dans un journal d'événements\n\
|
||||
spécifié.\n\
|
||||
\n\
|
||||
Liste de paramètres :\n\
|
||||
/S système Spécifie le système distant auquel se connecter.\n\
|
||||
\n\
|
||||
/U [domaine\\]utili. Spécifie le contexte de l'utilisateur\n\
|
||||
sous lequel la commande doit s'exécuter.\n\
|
||||
\n\
|
||||
/P [mot_de_passe] Spécifie le mot de passe du contexte\n\
|
||||
utilisateur donné. Il est demandé s'il est omis.\n\
|
||||
\n\
|
||||
/L journal Spécifie le journal d'événement dans lequel\n\
|
||||
l'événementest créé. Les noms valides sont :\n\
|
||||
Application, System, Security\n\
|
||||
(le dernier est réservé seulement pour le compte\n\
|
||||
SYSTEM).\n\
|
||||
\n\
|
||||
/SO source Spécifie la source devant être utilisée pour\n\
|
||||
l'événement (s'il n'est pas spécifié, la valeur\n\
|
||||
par défaut de la source sera 'eventcreate').\n\
|
||||
Une source valide peut être une chaîne et doit\n\
|
||||
représenter l'application ou le composant qui génère\n\
|
||||
l'événement.\n\
|
||||
\n\
|
||||
/T type Spécifie le type d'événement à créer.\n\
|
||||
Les types autorisés sont : SUCCESS, ERROR, WARNING,\n\
|
||||
INFORMATION.\n\
|
||||
\n\
|
||||
/C catégorie Spécifie la catégorie de l'événement (nombre entier).\n\
|
||||
\n\
|
||||
/ID identificateur Spécifie l'ID de l'événement. Un identificateur\n\
|
||||
peut être un nombre entier compris entre 0 et 65535.\n\
|
||||
\n\
|
||||
/D description Spécifie la description du nouvel événement.\n\
|
||||
\n\
|
||||
/? Affiche cet écran d'aide.\n\
|
||||
"
|
||||
IDS_INVALIDSWITCH "Option invalide - '%s'.\n"
|
||||
IDS_BADSYNTAX_0 "Syntaxe incorrecte.\n"
|
||||
IDS_BADSYNTAX_1 "Syntaxe incorrecte. L'option '%s' requiert une valeur.\n"
|
||||
IDS_BADSYNTAX_2 "Syntaxe incorrecte. La valeur pour l'option '%s' ne peut pas être vide.\n"
|
||||
IDS_BADSYNTAX_3 "Syntaxe incorrecte. La valeur '%s' n'est pas autorisée pour l'option '%s'.\n"
|
||||
IDS_BADSYNTAX_4 "Syntaxe incorrecte. La valeur ne peut pas être spécifiée pour l'option '%s'.\n"
|
||||
IDS_BADSYNTAX_5 "Syntaxe incorrecte. L'option '%s' n'est pas autorisée plus de %lu fois.\n"
|
||||
IDS_BADSYNTAX_6 "Syntaxe incorrecte. L'option obligatoire '%s' est absente.\n"
|
||||
// IDS_BADSYNTAX_7 "Syntaxe incorrecte. La valeur pour l'option '%s' est en dehors de la plage autorisée.\n"
|
||||
IDS_BADSYNTAX_7 "Syntaxe incorrecte. La valeur pour l'option '%s' doit être comprise entre %d et %d.\n"
|
||||
|
||||
IDS_LOG_NOT_FOUND "Le journal '%s' n'existe pas. Impossible de créer l'événement.\n"
|
||||
IDS_SOURCE_NOCREATE "La nouvelle source ne peut être créée car le nom du journal n'est pas spécifié.\nUtilisez le commutateur /L pour spécifier le nom du journal.\n"
|
||||
IDS_SOURCE_EXISTS "La source existe déjà dans le journal '%s' et ne peut pas être dupliquée.\n"
|
||||
IDS_SOURCE_NOT_CUSTOM "Le paramètre Source est utilisé pour identifier les scripts/applications\npersonnalisées (pas les applications installées).\n"
|
||||
|
||||
IDS_SUCCESS_1 "Opération réussie : un événement de type '%s' a été créé dans le journal '%s'.\n"
|
||||
IDS_SUCCESS_2 "Opération réussie : un événement de type '%s' a été créé avec la source '%s'.\n"
|
||||
IDS_SUCCESS_3 "Opération réussie : un événement de type '%s' a été créé\ndans le journal '%s' avec la source '%s'.\n"
|
||||
IDS_SWITCH_UNIMPLEMENTED "L'option '%s' n'est pas supporté pour le moment, désolé pour le désagrément!\n"
|
||||
END
|
71
reactos/base/applications/cmdutils/eventcreate/lang/ro-RO.rc
Normal file
71
reactos/base/applications/cmdutils/eventcreate/lang/ro-RO.rc
Normal file
@@ -0,0 +1,71 @@
|
||||
/* Translator: Ștefan Fulea (stefan dot fulea at mail dot md) */
|
||||
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_USAGE "Tastați «EVENTCREATE /?» pentru informații de utilizare.\n"
|
||||
IDS_HELP "\n\
|
||||
EVENTCREATE [/S calculator [/U [domeniu\\]nume [/P parolă]]]\n\
|
||||
/ID id_eveniment {[/L nume_jurnal] | [/SO sursă]}\n\
|
||||
/T tip /C categorie /D descriere\n\
|
||||
\n\
|
||||
Descriere:\n\
|
||||
Acest instrument oferă unui administrator crearea unui eveniment\n\
|
||||
particular într-un jurnal de evenimente specificat.\n\
|
||||
\n\
|
||||
Parametri:\n\
|
||||
/S calculator Specifică sistemul la care se face conectarea.\n\
|
||||
\n\
|
||||
/U [domeniu\\]nume Numele contului de utilizator sub care va fi\n\
|
||||
executată comanda.\n\
|
||||
\n\
|
||||
/P [parolă] Specifică parola contului de utilizator.\n\
|
||||
Va fi cerută la prompt în cazul omiterii.\n\
|
||||
\n\
|
||||
/L nume_jurnal Specifică numele jurnalului în care evenimentul va fi\n\
|
||||
creat. Numele valide sunt:\n\
|
||||
Application, System, Security\n\
|
||||
(ultimul este rezervat doar pentru contul SYSTEM).\n\
|
||||
\n\
|
||||
/SO sursă Specifică numele sursei utilizate pentru eveniment.\n\
|
||||
(Dacă nu e specificat, numele implicit al sursei va\n\
|
||||
fi «eventcreate».)\n\
|
||||
O sursă validă poate fi orice șir de caractere și ar\n\
|
||||
trebui să reprezinte aplicația sau evenimentul care\n\
|
||||
generează evenimentul.\n\
|
||||
\n\
|
||||
/T tip Specifică tipul de eveniment creat.\n\
|
||||
Tipurile valide sunt: SUCCESS, ERROR, WARNING,\n\
|
||||
INFORMATION.\n\
|
||||
\n\
|
||||
/C categorie Specifică categoria de eveniment (ca număr întreg).\n\
|
||||
\n\
|
||||
/ID id_eveniment Specifică numărul de identificare pentru eveniment.\n\
|
||||
Acesta trebuie să fie un număr între 0 și 65535.\n\
|
||||
\n\
|
||||
/D descriere Specifică o descriere pentru evenimentul nou creat.\n\
|
||||
\n\
|
||||
/? Afișează acest manual de utilizare.\n\
|
||||
"
|
||||
IDS_INVALIDSWITCH "Parametru eronat - «%s».\n"
|
||||
IDS_BADSYNTAX_0 "Comandă cu sintaxă eronată.\n"
|
||||
IDS_BADSYNTAX_1 "Comandă cu sintaxă eronată. Opțiunea «%s» necesită o valoare.\n"
|
||||
IDS_BADSYNTAX_2 "Comandă cu sintaxă eronată. Valoarea pentru opțiunea «%s» nu poate fi omisă.\n"
|
||||
IDS_BADSYNTAX_3 "Comandă cu sintaxă eronată. Valoarea «%s» nu este permisă pentru opțiunea «%s».\n"
|
||||
IDS_BADSYNTAX_4 "Comandă cu sintaxă eronată. Valoarea dată nu poate fi specificată pentru opțiunea «%s».\n"
|
||||
IDS_BADSYNTAX_5 "Comandă cu sintaxă eronată. Opțiunea «%s» nu este permisă mai mult de %lu ori.\n"
|
||||
IDS_BADSYNTAX_6 "Comandă cu sintaxă eronată. Opțiunea obligatorie «%s» a fost omisă.\n"
|
||||
// IDS_BADSYNTAX_7 "Comandă cu sintaxă eronată. Valoarea pentru opțiunea «%s» este în afara domeniului permis.\n"
|
||||
IDS_BADSYNTAX_7 "Comandă cu sintaxă eronată. Valoarea pentru opțiunea «%s» trebuie să fie între %d și %d.\n"
|
||||
|
||||
IDS_LOG_NOT_FOUND "Jurnalul «%s» nu există. Evenimentul nu poate fi creat.\n"
|
||||
IDS_SOURCE_NOCREATE "Sursa nu poate fi creată deoarece numele de jurnal nu este specificat.\nUtilizați parametrul /L pentru a specifica un nume de jurnal.\n"
|
||||
IDS_SOURCE_EXISTS "Sursa deja există în jurnalul «%s» și nu poate fi duplicată.\n"
|
||||
IDS_SOURCE_NOT_CUSTOM "Parametrul de sursă este utilizat pentru a identifica scripturi/aplicații particularizate (nicidecum aplicații instalate).\n"
|
||||
|
||||
IDS_SUCCESS_1 "Operație realizată: un eveniment de tip «%s» a fost creat în jurnalul «%s».\n"
|
||||
IDS_SUCCESS_2 "Operație realizată: un eveniment de tip «%s» a fost creat cu sursa «%s».\n"
|
||||
IDS_SUCCESS_3 "Operație realizată: un eveniment de tip «%s» a fost creat în jurnalul «%s» cu sursa «%s».\n"
|
||||
IDS_SWITCH_UNIMPLEMENTED "Opțiunea «%s» nu este acceptată deocamdată!\n"
|
||||
END
|
68
reactos/base/applications/cmdutils/eventcreate/lang/ru-RU.rc
Normal file
68
reactos/base/applications/cmdutils/eventcreate/lang/ru-RU.rc
Normal file
@@ -0,0 +1,68 @@
|
||||
LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_USAGE "Введите ""EVENTCREATE /?"" для получения справки по использованию.\n"
|
||||
IDS_HELP "\n\
|
||||
EVENTCREATE [/S система [/U [домен\\]пользователь [/P пароль]]] /ID код_события\n\
|
||||
{[/L имя_журнала] | [/SO источник]} /T тип /C категория /D описание\n\
|
||||
\n\
|
||||
Описание:\n\
|
||||
Эта команда позволяет администратору создать запись об особом событии \n\
|
||||
в указанном журнале событий.\n\
|
||||
\n\
|
||||
Список параметров:\n\
|
||||
/S система Определяет удаленную систему для подключения.\n\
|
||||
\n\
|
||||
/U [домен\\]польз. Определяет контекст пользователя, под которым\n\
|
||||
выполняется данная команда.\n\
|
||||
\n\
|
||||
/P [пароль] Задает пароль для данного контекста пользователя.\n\
|
||||
Запрашивает ввод пароля, если он не был задан.\n\
|
||||
\n\
|
||||
/L журнал Журнал в котором будет создано событие.\n\
|
||||
Доступными именами являются:\n\
|
||||
Application, System, Security\n\
|
||||
(последний зарезервирован только для учетной записи SYSTEM).\n\
|
||||
\n\
|
||||
/SO источник Задает имя источника, используемого для события\n\
|
||||
(если не указано, то по умолчанию имя источника\n\
|
||||
будет 'eventcreate').\n\
|
||||
Допустимым источником является любая строка, представляющая\n\
|
||||
приложение или компонент, который генерирует\n\
|
||||
событие.\n\
|
||||
\n\
|
||||
/T тип Тип создаваемого события.\n\
|
||||
Допустимыми типами являются: SUCCESS, ERROR, WARNING,\n\
|
||||
INFORMATION.\n\
|
||||
\n\
|
||||
/C категория Определяет категорию события (число) для события.\n\
|
||||
\n\
|
||||
/ID код_события Код события для этого события. Допустимым кодом\n\
|
||||
является число в диапазоне от 0 до 65535.\n\
|
||||
\n\
|
||||
/D описание Описание для создаваемого события.\n\
|
||||
\n\
|
||||
/? Показать эту справку.\n\
|
||||
"
|
||||
IDS_INVALIDSWITCH "Неправильный параметр или аргумент - '%s'.\n"
|
||||
IDS_BADSYNTAX_0 "Синтаксическая ошибка.\n"
|
||||
IDS_BADSYNTAX_1 "Синтаксическая ошибка. Для параметра '%s' должно быть указано значение.\n"
|
||||
IDS_BADSYNTAX_2 "Синтаксическая ошибка. Значение опции '%s' не может быть пустым.\n"
|
||||
IDS_BADSYNTAX_3 "Синтаксическая ошибка. Значение '%s' является недопустимым для опции '%s'.\n"
|
||||
IDS_BADSYNTAX_4 "Синтаксическая ошибка. Для опции '%s' не может быть указано значение.\n"
|
||||
IDS_BADSYNTAX_5 "Синтаксическая ошибка. Опция '%s' не допускается более чем %lu раз.\n"
|
||||
IDS_BADSYNTAX_6 "Синтаксическая ошибка. Отсутствует обязательный параметр '%s'.\n"
|
||||
// IDS_BADSYNTAX_7 "Синтаксическая ошибка. Значение для опции '%s' за пределами разрешенного диапазона.\n"
|
||||
IDS_BADSYNTAX_7 "Синтаксическая ошибка. Значение для опции '%s' должно быть в диапазоне от %d до %d.\n"
|
||||
|
||||
IDS_LOG_NOT_FOUND "Журнал '%s' не существует. Не удалось создать событие.\n"
|
||||
IDS_SOURCE_NOCREATE "Новый источник не может быть создан, поскольку имя журнала не указано.\nИспользуйте параметр /L чтобы указать имя журнала.\n"
|
||||
IDS_SOURCE_EXISTS "Источник уже существует в журнале '%s' и не может быть продублирован.\n"
|
||||
IDS_SOURCE_NOT_CUSTOM "Параметр Источник используется для идентификации сценариев/программ\nпользовательских приложений (не установленных приложений).\n"
|
||||
|
||||
IDS_SUCCESS_1 "Операция выполнена успешно: событие с типом '%s' было успешно создано в журнале '%s'.\n"
|
||||
IDS_SUCCESS_2 "Операция выполнена успешно: событие с типом '%s' было успешно создано с источником '%s'.\n"
|
||||
IDS_SUCCESS_3 "Операция выполнена успешно: событие с типом '%s' было успешно создано\nв журнале '%s' с источником '%s'.\n"
|
||||
IDS_SWITCH_UNIMPLEMENTED "Опция '%s' не поддерживается, приносим извинения за возможное неудобство!\n"
|
||||
END
|
72
reactos/base/applications/cmdutils/eventcreate/lang/tr-TR.rc
Normal file
72
reactos/base/applications/cmdutils/eventcreate/lang/tr-TR.rc
Normal file
@@ -0,0 +1,72 @@
|
||||
/* TRANSLATOR: 2016 Erdem Ersoy (eersoy93) (erdemersoy@live.com) */
|
||||
|
||||
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_USAGE "Kullanım bilgisi için ""EVENTCREATE /?"" yazınız.\n"
|
||||
IDS_HELP "\n\
|
||||
EVENTCREATE [/S bilgisayar [/U [etki alanı\\]kullanıcı [/P şifre]]] \n\
|
||||
/ID olay kimliği {[/L kayıt adı] | [/SO kaynak]} /T tür /C ulam\n\
|
||||
/D tanım\n\
|
||||
\n\
|
||||
Tanım:\n\
|
||||
Bu araç, bir yöneticiye belirli bir olay kaydı içinde husûsî bir olay\n\
|
||||
oluşturmayı sağlar.\n\
|
||||
\n\
|
||||
Değişkenler:\n\
|
||||
/S bilgisayar Bağlanacak uzak bilgisayarı belirtir.\n\
|
||||
\n\
|
||||
/U [etki alanı\\]kullanıcı Altında komutun çalışacağı kullanıcı hesâbını\n\
|
||||
belirtir.\n\
|
||||
\n\
|
||||
/P [şifre] Kullanıcı hesâbının şifresini belirtir.\n\
|
||||
Kullanılmazsa girdi için sorar.\n\
|
||||
\n\
|
||||
/L kayıt adı Oluşturulacak olayın kayıt adını belirtir.\n\
|
||||
Geçerli adlar şunlardır:\n\
|
||||
Application, System, Security\n\
|
||||
(İkincisi yalnızca DİZGE hesâbına ayrılmıştır.)\n\
|
||||
\n\
|
||||
/SO kaynak Olay için kullanılacak kaynak adını belirtir.\n\
|
||||
(Belirtilmezse ön tanımlı kaynak adı\n\
|
||||
'eventcreate' olacaktır.)\n\
|
||||
Geçerli bir kaynak, rastgele bir dizgi olabilir ve olayı\n\
|
||||
oluşturan uygulamayı veyâ bileşeni belirtmelidir.\n\
|
||||
\n\
|
||||
/T tür Oluşturulacak olayın türünü belirtir.\n\
|
||||
Geçerli türler: SUCCESS, ERROR, WARNING,\n\
|
||||
INFORMATION.\n\
|
||||
\n\
|
||||
/C ulam Olaya göre olay ulamını (tamsayı) belirtir.\n\
|
||||
\n\
|
||||
/ID olay kimliği Olaya göre olay kimliğini belirtir. Bu\n\
|
||||
0 ile 65535 arasında bir tamsayı olmalıdır.\n\
|
||||
\n\
|
||||
/D tanım Yeni oluşturulan olay için kullanılacak\n\
|
||||
tanımı belirtir.\n\
|
||||
\n\
|
||||
/? Bu yardım görüntülüğünü görüntüler.\n\
|
||||
"
|
||||
IDS_INVALIDSWITCH "Geçersiz değişken - ""%s"".\n"
|
||||
IDS_BADSYNTAX_0 "Geçersiz komut yatacı yazımı.\n"
|
||||
IDS_BADSYNTAX_1 "Geçersiz komut yatacı yazımı. ""%s"" seçeneği bir değer gerektirir.\n"
|
||||
IDS_BADSYNTAX_2 "Geçersiz komut yatacı yazımı. ""%s"" seçeneği için değer boş olamaz.\n"
|
||||
IDS_BADSYNTAX_3 "Geçersiz komut yatacı yazımı. Değer ""%s"", ""%s"" seçeneği için izin verilmedi.\n"
|
||||
IDS_BADSYNTAX_4 "Geçersiz komut yatacı yazımı. ""%s"" seçeneği için değer belirtilemiyor.\n"
|
||||
IDS_BADSYNTAX_5 "Geçersiz komut yatacı yazımı. ""%s"" seçeneğine %lu kezden çok izin verilmiyor.\n"
|
||||
IDS_BADSYNTAX_6 "Geçersiz komut yatacı yazımı. Zorunlu ""%s"" seçeneği yok.\n"
|
||||
// IDS_BADSYNTAX_7 "Geçersiz komut yatacı yazımı. ""%s"" seçeneği için değer izin verilen aralığın dışında.\n"
|
||||
IDS_BADSYNTAX_7 "Geçersiz komut yatacı yazımı. ""%s"" seçeneği için değer %d ile %d arasında olmalı.\n"
|
||||
|
||||
IDS_LOG_NOT_FOUND """%s"" kaydı yok. Olay oluşturulamıyor.\n"
|
||||
IDS_SOURCE_NOCREATE "Kayıt adı belirtilmediğinden yeni kaynak oluşturulamıyor.\nKayıt adını belirtmek için lütfen /L seçeneğini kullanınız.\n"
|
||||
IDS_SOURCE_EXISTS "Kaynak ""%s"" kaydında önceden var ve çoğaltılamaz.\n"
|
||||
IDS_SOURCE_NOT_CUSTOM "Kaynak değişkeni, husûsî betikleri veyâ husûsî uygulamaları\n(kurulu uygulamaları değil) belirlemek için kullanılıyor.\n"
|
||||
|
||||
IDS_SUCCESS_1 "İşlem başarılı: ""%s"" türünde bir olay ""%s"" kaydında oluşturuldu.\n"
|
||||
IDS_SUCCESS_2 "İşlem başarılı: ""%s"" türünde bir olay ""%s"" kaynağıyla oluşturuldu.\n"
|
||||
IDS_SUCCESS_3 "İşlem başarılı: ""%s"" türünde bir olay ""%s"" kaydında ""%s"" kaynağıyla oluşturuldu.\n"
|
||||
IDS_SWITCH_UNIMPLEMENTED """%s"" seçeneği şimdilik desteklenmiyor, sıkıntı için üzgünüm!\n"
|
||||
END
|
||||
|
24
reactos/base/applications/cmdutils/eventcreate/resource.h
Normal file
24
reactos/base/applications/cmdutils/eventcreate/resource.h
Normal file
@@ -0,0 +1,24 @@
|
||||
#pragma once
|
||||
|
||||
#define IDS_USAGE 100
|
||||
#define IDS_HELP 101
|
||||
#define IDS_INVALIDSWITCH 102
|
||||
#define IDS_BADSYNTAX_0 103
|
||||
#define IDS_BADSYNTAX_1 104
|
||||
#define IDS_BADSYNTAX_2 105
|
||||
#define IDS_BADSYNTAX_3 106
|
||||
#define IDS_BADSYNTAX_4 107
|
||||
#define IDS_BADSYNTAX_5 108
|
||||
#define IDS_BADSYNTAX_6 109
|
||||
#define IDS_BADSYNTAX_7 110
|
||||
|
||||
#define IDS_LOG_NOT_FOUND 120
|
||||
#define IDS_SOURCE_NOCREATE 121
|
||||
#define IDS_SOURCE_EXISTS 122
|
||||
#define IDS_SOURCE_NOT_CUSTOM 123
|
||||
|
||||
#define IDS_SUCCESS_1 130
|
||||
#define IDS_SUCCESS_2 131
|
||||
#define IDS_SUCCESS_3 132
|
||||
|
||||
#define IDS_SWITCH_UNIMPLEMENTED 135
|
@@ -1,6 +1,9 @@
|
||||
|
||||
include_directories(${REACTOS_SOURCE_DIR}/sdk/lib/conutils)
|
||||
|
||||
add_executable(cmd_help help.c help.rc)
|
||||
set_module_type(cmd_help win32cui UNICODE)
|
||||
add_importlibs(cmd_help user32 msvcrt kernel32)
|
||||
target_link_libraries(cmd_help conutils ${PSEH_LIB})
|
||||
add_importlibs(cmd_help msvcrt kernel32)
|
||||
set_target_properties(cmd_help PROPERTIES OUTPUT_NAME "help")
|
||||
add_cd_file(TARGET cmd_help DESTINATION reactos/system32 FOR all)
|
||||
|
@@ -7,38 +7,21 @@
|
||||
* Hermes Belusca-Maito (hermes.belusca@sfr.fr)
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <wchar.h>
|
||||
|
||||
#define WIN32_NO_STATUS
|
||||
#include <windef.h>
|
||||
#include <winbase.h>
|
||||
#include <winuser.h>
|
||||
#include <wincon.h>
|
||||
|
||||
#include <strsafe.h>
|
||||
|
||||
#include <conutils.h>
|
||||
|
||||
#include "help.h"
|
||||
#include "resource.h"
|
||||
|
||||
VOID PrintResourceString(INT resID, ...)
|
||||
{
|
||||
WCHAR bufSrc[RC_STRING_MAX_SIZE];
|
||||
WCHAR bufFormatted[RC_STRING_MAX_SIZE];
|
||||
CHAR bufFormattedOem[RC_STRING_MAX_SIZE];
|
||||
|
||||
va_list args;
|
||||
va_start(args, resID);
|
||||
|
||||
LoadStringW(GetModuleHandleW(NULL), resID, bufSrc, ARRAYSIZE(bufSrc));
|
||||
vswprintf(bufFormatted, bufSrc, args);
|
||||
CharToOemW(bufFormatted, bufFormattedOem);
|
||||
fputs(bufFormattedOem, stdout);
|
||||
|
||||
va_end(args);
|
||||
}
|
||||
|
||||
BOOL IsInternalCommand(LPCWSTR Cmd)
|
||||
static BOOL
|
||||
IsInternalCommand(PCWSTR Cmd)
|
||||
{
|
||||
size_t i;
|
||||
int res;
|
||||
@@ -73,24 +56,27 @@ int wmain(int argc, WCHAR* argv[])
|
||||
{
|
||||
WCHAR CmdLine[CMDLINE_LENGTH];
|
||||
|
||||
/* Initialize the Console Standard Streams */
|
||||
ConInitStdStreams();
|
||||
|
||||
/*
|
||||
* If the user hasn't asked for specific help,
|
||||
* then print out the list of available commands.
|
||||
*/
|
||||
if (argc <= 1)
|
||||
{
|
||||
PrintResourceString(IDS_HELP1);
|
||||
PrintResourceString(IDS_HELP2);
|
||||
ConResPuts(StdOut, IDS_HELP1);
|
||||
ConResPuts(StdOut, IDS_HELP2);
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Bad usage (too much options) or we use the /? switch.
|
||||
* Display help for the help command.
|
||||
* Display help for the HELP command.
|
||||
*/
|
||||
if ((argc > 2) || (wcscmp(argv[1], L"/?") == 0))
|
||||
{
|
||||
PrintResourceString(IDS_USAGE);
|
||||
ConResPuts(StdOut, IDS_USAGE);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -100,7 +86,7 @@ int wmain(int argc, WCHAR* argv[])
|
||||
*/
|
||||
if (!IsInternalCommand(argv[1]))
|
||||
{
|
||||
PrintResourceString(IDS_NO_ENTRY, argv[1]);
|
||||
ConResPrintf(StdOut, IDS_NO_ENTRY, argv[1]);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -108,7 +94,7 @@ int wmain(int argc, WCHAR* argv[])
|
||||
* Run "<command> /?" in the current command processor.
|
||||
*/
|
||||
StringCbPrintfW(CmdLine, sizeof(CmdLine), L"%ls /?", argv[1]);
|
||||
|
||||
|
||||
_flushall();
|
||||
return _wsystem(CmdLine);
|
||||
}
|
||||
|
@@ -5,9 +5,9 @@
|
||||
|
||||
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
||||
|
||||
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS Command Line Help Utility"
|
||||
#define REACTOS_STR_INTERNAL_NAME "help"
|
||||
#define REACTOS_STR_ORIGINAL_FILENAME "help.exe"
|
||||
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS Command Line Help Utility"
|
||||
#define REACTOS_STR_INTERNAL_NAME "help"
|
||||
#define REACTOS_STR_ORIGINAL_FILENAME "help.exe"
|
||||
#include <reactos/version.rc>
|
||||
|
||||
/* UTF-8 */
|
||||
|
73
reactos/base/applications/cmdutils/help/lang/cs-CZ.rc
Normal file
73
reactos/base/applications/cmdutils/help/lang/cs-CZ.rc
Normal file
@@ -0,0 +1,73 @@
|
||||
|
||||
LANGUAGE LANG_CZECH, SUBLANG_DEFAULT
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_NO_ENTRY "This command is not supported by the help utility.\nTry ""%s /?""\n."
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_USAGE "Provides Help information for ReactOS commands.\n\n\
|
||||
HELP [command]\n\n\
|
||||
command - Display help information for this command.\n"
|
||||
IDS_HELP1 "List of all available commands (+ description)\n\n\
|
||||
help command\n\
|
||||
command /? For more information on a specific command\n\n\
|
||||
? List all available commands (without description).\n\
|
||||
ALIAS Sets, removes or shows aliases.\n\
|
||||
ATTRIB Displays or changes file attributes.\n\
|
||||
BEEP Beep the speaker.\n\
|
||||
CALL Calls one batch program from another.\n\
|
||||
CD Displays the name of or changes the current directory.\n\
|
||||
CHCP Displays or sets the active code page number.\n\
|
||||
CHOICE Waits for the user to choose one of a set of choices.\n\
|
||||
CLS Clears the screen.\n\
|
||||
CMD Starts a new instance of the ReactOS command interpreter.\n\
|
||||
COLOR Sets the default console foreground and background colors.\n\
|
||||
COPY Copies one or more files to another location.\n\
|
||||
DATE Displays or sets the date.\n\
|
||||
DELETE Deletes one or more files.\n\
|
||||
DIR Displays a list of files and subdirectories in a directory.\n\
|
||||
ECHO Displays messages, or turns command echoing on or off.\n\
|
||||
ERASE Deletes one or more files.\n\
|
||||
EXIT Quits the CMD.EXE program (command interpreter).\n\
|
||||
FOR Runs a specified command for each file in a set of files.\n\
|
||||
FREE (free) disc space.\n\
|
||||
GOTO Directs the ReactOS command interpreter to a labeled line in\n\
|
||||
a batch program.\n\
|
||||
HELP Provides Help information for ReactOS commands.\n\
|
||||
HISTORY List all commands which has been used\n\
|
||||
IF Performs conditional processing in batch programs.\n\
|
||||
LABEL Creates, changes, or deletes the volume label of a disk.\n\
|
||||
MD Creates a directory.\n\
|
||||
MKDIR Creates a directory.\n\
|
||||
MKLINK Creates a filesystem link object.\n\
|
||||
MOVE Moves one or more files from one directory to another\n\
|
||||
directory.\n\
|
||||
PATH Displays or sets a search path for executable files.\n\
|
||||
PAUSE Suspends processing of a batch file and displays a message.\n\
|
||||
POPD Restores the previous value of the current directory saved by\n\
|
||||
PUSHD.\n\
|
||||
PROMPT Changes the command prompt.\n\
|
||||
PUSHD Saves the current directory then changes it.\n\
|
||||
RD Removes a directory.\n\
|
||||
REM Records comments (remarks) in batch files.\n\
|
||||
REN Renames a file or files.\n\
|
||||
RENAME Renames a file or files.\n\
|
||||
REPLACE Replaces files.\n\
|
||||
RMDIR Removes a directory.\n\
|
||||
SCREEN Move cursor and optionally print text.\n\
|
||||
SET Displays, sets, or removes ReactOS environment variables.\n\
|
||||
SHIFT Shifts the position of replaceable parameters in batch files.\n"
|
||||
IDS_HELP2 "START Starts a separate window to run a specified program or command.\n\
|
||||
Executes command.\n\
|
||||
TIME Displays or sets the system time.\n\
|
||||
TIMER Allow the use of ten stopwatches.\n\
|
||||
TITLE Sets the window title for a CMD.EXE session.\n\
|
||||
TYPE Displays the contents of a text file.\n\
|
||||
VER Displays the ReactOS version.\n\
|
||||
VERIFY Tells ReactOS whether to verify that your files are written\n\
|
||||
correctly to a disk.\n\
|
||||
VOL Displays a disk volume label and serial number.\n"
|
||||
END
|
@@ -38,7 +38,7 @@ FREE (free) disc space.\n\
|
||||
GOTO Directs the ReactOS command interpreter to a labeled line in\n\
|
||||
a batch program.\n\
|
||||
HELP Provides Help information for ReactOS commands.\n\
|
||||
HISTORY List all commands which has been used\n\
|
||||
HISTORY Lists all commands which have been used.\n\
|
||||
IF Performs conditional processing in batch programs.\n\
|
||||
LABEL Creates, changes, or deletes the volume label of a disk.\n\
|
||||
MD Creates a directory.\n\
|
||||
|
@@ -18,7 +18,7 @@ HELP [komut]\n\n\
|
||||
? Tüm kullanılabilir komutları dizelgele (tanımlar olmadan).\n\
|
||||
ALIAS Başka adları ayarlar, siler ya da gösterir.\n\
|
||||
ATTRIB Kütük öz niteliklerini görüntüler ya da değiştirir.\n\
|
||||
BEEP Hoparlörden ""biip"" sesi çıkart.\n\
|
||||
BEEP Hoparlörden ""bip"" sesi çıkart.\n\
|
||||
CALL Bir toplu iş izlencesini bir başkasından çağırır.\n\
|
||||
CD Şimdiki dizinin adını görüntüler ya da şimdiki dizini değiştirir.\n\
|
||||
CHCP Etkin kod sayfası numarasını görüntüler ya da ayarlar.\n\
|
||||
|
@@ -1,7 +1,5 @@
|
||||
#pragma once
|
||||
|
||||
#define RC_STRING_MAX_SIZE 4096
|
||||
|
||||
#define IDS_USAGE 100
|
||||
#define IDS_HELP1 101
|
||||
#define IDS_HELP2 102
|
||||
|
@@ -1,6 +1,9 @@
|
||||
|
||||
include_directories(${REACTOS_SOURCE_DIR}/sdk/lib/conutils)
|
||||
|
||||
add_executable(mode mode.c mode.rc)
|
||||
set_module_type(mode win32cui UNICODE)
|
||||
set_target_properties(mode PROPERTIES SUFFIX ".com")
|
||||
target_link_libraries(mode conutils ${PSEH_LIB})
|
||||
add_importlibs(mode user32 msvcrt kernel32)
|
||||
set_target_properties(mode PROPERTIES SUFFIX ".com")
|
||||
add_cd_file(TARGET mode DESTINATION reactos/system32 FOR all)
|
||||
|
68
reactos/base/applications/cmdutils/mode/lang/de-DE.rc
Normal file
68
reactos/base/applications/cmdutils/mode/lang/de-DE.rc
Normal file
@@ -0,0 +1,68 @@
|
||||
LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_USAGE "Konfiguriert Geräte im System.\n\n\
|
||||
Gerätestatus: MODE [Gerät] [/STATUS]\n\
|
||||
Serieller Anschluss: MODE COMm[:] [BAUD=b] [PARITY=p] [DATA=d] [STOP=s]\n\
|
||||
[to=on|off] [xon=on|off] [odsr=on|off]\n\
|
||||
[octs=on|off] [dtr=on|off|hs]\n\
|
||||
[rts=on|off|hs|tg] [idsr=on|off]\n\
|
||||
Druckausgabe umleiten: MODE LPTn[:]=COMm[:]\n\
|
||||
Codepage auswählen: MODE CON[:] CP SELECT=yyy\n\
|
||||
Codepagestatus: MODE CON[:] CP [/STATUS]\n\
|
||||
Anzeigemodus: MODE CON[:] [COLS=c] [LINES=n]\n\
|
||||
Tastaturwiederholrate: MODE CON[:] [RATE=r DELAY=d]\n"
|
||||
|
||||
IDS_QUERY_SERIAL_FOUND " Serieller Anschluss gefunden - %s\n"
|
||||
IDS_QUERY_PRINTER_FOUND " Drucker gefunden - %s\n"
|
||||
IDS_QUERY_PARALLEL_FOUND " Paralleler Anschluss gefunden - %s\n"
|
||||
IDS_QUERY_DOSDEV_FOUND " Found DOS device - %s\n"
|
||||
// IDS_QUERY_MISC_FOUND " Found other device - %s\n"
|
||||
|
||||
// IDS_QUERY_DEVICE_FOUND " Found %s device - %s\n"
|
||||
// IDS_SERIAL "serial"
|
||||
// IDS_PRINTER "parallel"
|
||||
// IDS_OTHER "other"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_DEVICE_STATUS_HEADER "Status von Gerät %s:"
|
||||
|
||||
IDS_COM_STATUS_BAUD " Baud: %ld\n"
|
||||
IDS_COM_STATUS_PARITY " Parität: %s\n"
|
||||
IDS_COM_STATUS_DATA_BITS " Datenbits: %d\n"
|
||||
IDS_COM_STATUS_STOP_BITS " Stopbits: %s\n"
|
||||
IDS_COM_STATUS_TIMEOUT " Timeout: %s\n"
|
||||
IDS_COM_STATUS_XON_XOFF " XON/XOFF: %s\n"
|
||||
IDS_COM_STATUS_CTS_HANDSHAKING " CTS handshaking: %s\n"
|
||||
IDS_COM_STATUS_DSR_HANDSHAKING " DSR handshaking: %s\n"
|
||||
IDS_COM_STATUS_DSR_SENSITIVITY " DSR sensitivity: %s\n"
|
||||
IDS_COM_STATUS_DTR_CIRCUIT " DTR circuit: %s\n"
|
||||
IDS_COM_STATUS_RTS_CIRCUIT " RTS circuit: %s\n"
|
||||
|
||||
IDS_CONSOLE_STATUS_LINES " Zeilen: %d\n"
|
||||
IDS_CONSOLE_STATUS_COLS " Spalten: %d\n"
|
||||
IDS_CONSOLE_KBD_RATE " Wiederholrate: %ld\n"
|
||||
IDS_CONSOLE_KBD_DELAY " Verzögerungszeit: %ld\n"
|
||||
IDS_CONSOLE_CODEPAGE " Codepage: %d\n"
|
||||
|
||||
IDS_PRINTER_OUTPUT_NOT_REROUTED " Druckausgabe wird nicht umgeleitet.\n"
|
||||
IDS_PRINTER_OUTPUT_REROUTED_SERIAL " Druckausgabe wird an seriellen Anschluss %s umgeleitet.\n"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_ERROR_QUERY_DEVICES "ERROR: Unable to query DOS devices (0x%lx).\n"
|
||||
IDS_ERROR_QUERY_DEVICES_FORM " QueryDosDeviceW(%s) returned unrecognised form %s.\n"
|
||||
IDS_ERROR_SET_PARALLEL_STATE "SetParallelState(%d) - DefineDosDevice(%s) (0x%lx)\n"
|
||||
IDS_ERROR_INVALID_PARAMETER "ERROR: Unzulässiger Parameter - %s\n"
|
||||
IDS_ERROR_ILLEGAL_DEVICE_NAME "ERROR: Unzulässiger Gerätename - %s (0x%lx)\n"
|
||||
IDS_ERROR_STATUS_GET_DEVICE "ERROR: Failed to get the status for device COM%d:\n"
|
||||
IDS_ERROR_STATUS_SET_DEVICE "ERROR: Failed to set the status for device COM%d:\n"
|
||||
IDS_ERROR_INVALID_PARITY_BITS "ERROR: Invalid value for Parity Bits %d:\n"
|
||||
IDS_ERROR_INVALID_STOP_BITS "ERROR: Invalid value for Stop Bits %d:\n"
|
||||
IDS_ERROR_NO_MEMORY "ERROR: Not enough memory.\n"
|
||||
IDS_ERROR_SCREEN_LINES_COL "ERROR: The screen cannot be set to the number of lines and columns specified.\n"
|
||||
END
|
68
reactos/base/applications/cmdutils/mode/lang/en-US.rc
Normal file
68
reactos/base/applications/cmdutils/mode/lang/en-US.rc
Normal file
@@ -0,0 +1,68 @@
|
||||
LANGUAGE LANG_ENGLISH, SUBLANG_DEFAULT
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_USAGE "Configure System Devices.\n\n\
|
||||
Device Status: MODE [device] [/STATUS]\n\
|
||||
Serial port: MODE COMm[:] [BAUD=b] [PARITY=p] [DATA=d] [STOP=s]\n\
|
||||
[to=on|off] [xon=on|off] [odsr=on|off]\n\
|
||||
[octs=on|off] [dtr=on|off|hs]\n\
|
||||
[rts=on|off|hs|tg] [idsr=on|off]\n\
|
||||
Redirect printing: MODE LPTn[:]=COMm[:]\n\
|
||||
Select code page: MODE CON[:] CP SELECT=yyy\n\
|
||||
Code page status: MODE CON[:] CP [/STATUS]\n\
|
||||
Display mode: MODE CON[:] [COLS=c] [LINES=n]\n\
|
||||
Typematic rate: MODE CON[:] [RATE=r DELAY=d]\n"
|
||||
|
||||
IDS_QUERY_SERIAL_FOUND " Found serial device - %s\n"
|
||||
IDS_QUERY_PRINTER_FOUND " Found printer device - %s\n"
|
||||
IDS_QUERY_PARALLEL_FOUND " Found parallel device - %s\n"
|
||||
IDS_QUERY_DOSDEV_FOUND " Found DOS device - %s\n"
|
||||
// IDS_QUERY_MISC_FOUND " Found other device - %s\n"
|
||||
|
||||
// IDS_QUERY_DEVICE_FOUND " Found %s device - %s\n"
|
||||
// IDS_SERIAL "serial"
|
||||
// IDS_PRINTER "parallel"
|
||||
// IDS_OTHER "other"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_DEVICE_STATUS_HEADER "Status for device %s:"
|
||||
|
||||
IDS_COM_STATUS_BAUD " Baud: %ld\n"
|
||||
IDS_COM_STATUS_PARITY " Parity: %s\n"
|
||||
IDS_COM_STATUS_DATA_BITS " Data Bits: %d\n"
|
||||
IDS_COM_STATUS_STOP_BITS " Stop Bits: %s\n"
|
||||
IDS_COM_STATUS_TIMEOUT " Timeout: %s\n"
|
||||
IDS_COM_STATUS_XON_XOFF " XON/XOFF: %s\n"
|
||||
IDS_COM_STATUS_CTS_HANDSHAKING " CTS handshaking: %s\n"
|
||||
IDS_COM_STATUS_DSR_HANDSHAKING " DSR handshaking: %s\n"
|
||||
IDS_COM_STATUS_DSR_SENSITIVITY " DSR sensitivity: %s\n"
|
||||
IDS_COM_STATUS_DTR_CIRCUIT " DTR circuit: %s\n"
|
||||
IDS_COM_STATUS_RTS_CIRCUIT " RTS circuit: %s\n"
|
||||
|
||||
IDS_CONSOLE_STATUS_LINES " Lines: %d\n"
|
||||
IDS_CONSOLE_STATUS_COLS " Columns: %d\n"
|
||||
IDS_CONSOLE_KBD_RATE " Keyboard rate: %ld\n"
|
||||
IDS_CONSOLE_KBD_DELAY " Keyboard delay: %ld\n"
|
||||
IDS_CONSOLE_CODEPAGE " Code page: %d\n"
|
||||
|
||||
IDS_PRINTER_OUTPUT_NOT_REROUTED " Printer output is not being rerouted.\n"
|
||||
IDS_PRINTER_OUTPUT_REROUTED_SERIAL " Printer output is being rerouted to serial port %s.\n"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_ERROR_QUERY_DEVICES "ERROR: Unable to query DOS devices (0x%lx).\n"
|
||||
IDS_ERROR_QUERY_DEVICES_FORM " QueryDosDeviceW(%s) returned unrecognised form %s.\n"
|
||||
IDS_ERROR_SET_PARALLEL_STATE "SetParallelState(%d) - DefineDosDevice(%s) (0x%lx)\n"
|
||||
IDS_ERROR_INVALID_PARAMETER "ERROR: Invalid parameter - %s\n"
|
||||
IDS_ERROR_ILLEGAL_DEVICE_NAME "ERROR: Illegal device name - %s (0x%lx)\n"
|
||||
IDS_ERROR_STATUS_GET_DEVICE "ERROR: Failed to get the status for device COM%d:\n"
|
||||
IDS_ERROR_STATUS_SET_DEVICE "ERROR: Failed to set the status for device COM%d:\n"
|
||||
IDS_ERROR_INVALID_PARITY_BITS "ERROR: Invalid value for Parity Bits %d:\n"
|
||||
IDS_ERROR_INVALID_STOP_BITS "ERROR: Invalid value for Stop Bits %d:\n"
|
||||
IDS_ERROR_NO_MEMORY "ERROR: Not enough memory.\n"
|
||||
IDS_ERROR_SCREEN_LINES_COL "ERROR: The screen cannot be set to the number of lines and columns specified.\n"
|
||||
END
|
75
reactos/base/applications/cmdutils/mode/lang/ro-RO.rc
Normal file
75
reactos/base/applications/cmdutils/mode/lang/ro-RO.rc
Normal file
@@ -0,0 +1,75 @@
|
||||
/* Ștefan Fulea (stefan dot fulea at mail dot md) */
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_USAGE "Configurează dispozitive de sistem.\n\n\
|
||||
Interogarea stării unui dispozitiv:\n\
|
||||
MODE [dispozitiv] [/STATUS]\n\n\
|
||||
Configurarea portului serial:\n\
|
||||
MODE COMm[:] [BAUD=b] [PARITY=p] [DATA=d] [STOP=s]\n\
|
||||
[to=on|off] [xon=on|off] [odsr=on|off]\n\
|
||||
[octs=on|off] [dtr=on|off|hs]\n\
|
||||
[rts=on|off|hs|tg] [idsr=on|off]\n\n\
|
||||
Redirecția portului paralel:\n\
|
||||
MODE LPTn[:]=COMm[:]\n\n\
|
||||
Selecția unui cod de pagină:\n\
|
||||
MODE CON[:] CP SELECT=yyy\n\n\
|
||||
Starea codului de pagină:\n\
|
||||
MODE CON[:] CP [/STATUS]\n\n\
|
||||
Modul de afișare:\n\
|
||||
MODE CON[:] [COLS=c] [LINES=n]\n\n\
|
||||
Rata de repetiție la menținerea unei taste apăsate:\n\
|
||||
MODE CON[:] [RATE=r DELAY=d]\n"
|
||||
|
||||
IDS_QUERY_SERIAL_FOUND " Depistat dispozitiv la portul serial - %s\n"
|
||||
IDS_QUERY_PRINTER_FOUND " Depistat dispozitiv de imprimare - %s\n"
|
||||
IDS_QUERY_PARALLEL_FOUND " Depistat dispozitiv la portul paralel - %s\n"
|
||||
IDS_QUERY_DOSDEV_FOUND " Depistat dispozitiv de tip DOS - %s\n"
|
||||
// IDS_QUERY_MISC_FOUND " Found other device - %s\n"
|
||||
|
||||
// IDS_QUERY_DEVICE_FOUND " Found %s device - %s\n"
|
||||
// IDS_SERIAL "serial"
|
||||
// IDS_PRINTER "parallel"
|
||||
// IDS_OTHER "other"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_DEVICE_STATUS_HEADER "Starea pentru dispozitivul %s:"
|
||||
|
||||
IDS_COM_STATUS_BAUD " Rata de modulare: %ld\n"
|
||||
IDS_COM_STATUS_PARITY " Paritate: %s\n"
|
||||
IDS_COM_STATUS_DATA_BITS " Biți de date: %d\n"
|
||||
IDS_COM_STATUS_STOP_BITS " Biți delimitori: %s\n"
|
||||
IDS_COM_STATUS_TIMEOUT " Timp de expirare: %s\n"
|
||||
IDS_COM_STATUS_XON_XOFF " XON/XOFF: %s\n"
|
||||
IDS_COM_STATUS_CTS_HANDSHAKING " Inițiere CTS: %s\n"
|
||||
IDS_COM_STATUS_DSR_HANDSHAKING " Inițiere DSR: %s\n"
|
||||
IDS_COM_STATUS_DSR_SENSITIVITY " Senzitivitate DSR: %s\n"
|
||||
IDS_COM_STATUS_DTR_CIRCUIT " Circuit DTR: %s\n"
|
||||
IDS_COM_STATUS_RTS_CIRCUIT " Circuit RTS: %s\n"
|
||||
|
||||
IDS_CONSOLE_STATUS_LINES " Linii: %d\n"
|
||||
IDS_CONSOLE_STATUS_COLS " Coloane: %d\n"
|
||||
IDS_CONSOLE_KBD_DELAY " Întârziere taste: %ld\n"
|
||||
IDS_CONSOLE_KBD_RATE " Rată taste: %ld\n"
|
||||
IDS_CONSOLE_CODEPAGE " Cod de pagină: %d\n"
|
||||
|
||||
IDS_PRINTER_OUTPUT_NOT_REROUTED " Ieșirea de imprimantă nu este redirecționată.\n"
|
||||
IDS_PRINTER_OUTPUT_REROUTED_SERIAL " Ieșirea de imprimantă este redirecționată către portul %s.\n"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_ERROR_QUERY_DEVICES "EROARE: Dispozitivul DOS (0x%lx) nu poate fi interogat.\n"
|
||||
IDS_ERROR_QUERY_DEVICES_FORM " QueryDosDeviceW(%s) a returnat un formular nerecunoscut %s.\n"
|
||||
IDS_ERROR_SET_PARALLEL_STATE "SetParallelState(%d) - DefineDosDevice(%s) (0x%lx)\n"
|
||||
IDS_ERROR_INVALID_PARAMETER "EROARE: Parametru nevalid - %s\n"
|
||||
IDS_ERROR_ILLEGAL_DEVICE_NAME "EROARE: Nume eronat de dispozitiv - %s (0x%lx)\n"
|
||||
IDS_ERROR_STATUS_GET_DEVICE "EROARE: Nu poate fi determinată starea dispozitivului COM%d:\n"
|
||||
IDS_ERROR_STATUS_SET_DEVICE "EROARE: Nu poate fi schimbată starea pentru dispozitivul COM%d:\n"
|
||||
IDS_ERROR_INVALID_PARITY_BITS "EROARE: Valoare eronată pentru biții de paritate %d:\n"
|
||||
IDS_ERROR_INVALID_STOP_BITS "EROARE: Valoare eronată pentru biții delimitori %d:\n"
|
||||
IDS_ERROR_NO_MEMORY "ERAORE: Nu există suficientă memorie.\n"
|
||||
END
|
67
reactos/base/applications/cmdutils/mode/lang/ru-RU.rc
Normal file
67
reactos/base/applications/cmdutils/mode/lang/ru-RU.rc
Normal file
@@ -0,0 +1,67 @@
|
||||
LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_USAGE "Настройка системных устройств.\n\n\
|
||||
Состояние устройства: MODE [device] [/STATUS]\n\
|
||||
Последовательный порт: MODE COMm[:] [BAUD=b] [PARITY=p] [DATA=d] [STOP=s]\n\
|
||||
[to=on|off] [xon=on|off] [odsr=on|off]\n\
|
||||
[octs=on|off] [dtr=on|off|hs]\n\
|
||||
[rts=on|off|hs|tg] [idsr=on|off]\n\
|
||||
Переадресация печати: MODE LPTn[:]=COMm[:]\n\
|
||||
Выбор кодовой страницы: MODE CON[:] CP SELECT=yyy\n\
|
||||
Вывод кодовой страницы: MODE CON[:] CP [/STATUS]\n\
|
||||
Режим работы экрана: MODE CON[:] [COLS=c] [LINES=n]\n\
|
||||
Ввод с клавиатуры: MODE CON[:] [RATE=r DELAY=d]\n"
|
||||
|
||||
IDS_QUERY_SERIAL_FOUND " Найдено последовательное устройство - %s\n"
|
||||
IDS_QUERY_PRINTER_FOUND " Найдено устройство печати - %s\n"
|
||||
IDS_QUERY_PARALLEL_FOUND " Найдено параллельное устройство - %s\n"
|
||||
IDS_QUERY_DOSDEV_FOUND " Найдено устройство DOS - %s\n"
|
||||
// IDS_QUERY_MISC_FOUND " Найдено другое устройство - %s\n"
|
||||
|
||||
// IDS_QUERY_DEVICE_FOUND " Найдено %s устройство - %s\n"
|
||||
// IDS_SERIAL "последовательное"
|
||||
// IDS_PRINTER "параллельное"
|
||||
// IDS_OTHER "другое"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_DEVICE_STATUS_HEADER "Состояние устройства %s:"
|
||||
|
||||
IDS_COM_STATUS_BAUD " Скорость: %ld\n"
|
||||
IDS_COM_STATUS_PARITY " Четность: %s\n"
|
||||
IDS_COM_STATUS_DATA_BITS " Биты данных: %d\n"
|
||||
IDS_COM_STATUS_STOP_BITS " Стоповые биты: %s\n"
|
||||
IDS_COM_STATUS_TIMEOUT " Таймаут: %s\n"
|
||||
IDS_COM_STATUS_XON_XOFF " XON/XOFF: %s\n"
|
||||
IDS_COM_STATUS_CTS_HANDSHAKING " Синхронизация CTS: %s\n"
|
||||
IDS_COM_STATUS_DSR_HANDSHAKING " Синхронизация DSR: %s\n"
|
||||
IDS_COM_STATUS_DSR_SENSITIVITY " Чувствительность DSR: %s\n"
|
||||
IDS_COM_STATUS_DTR_CIRCUIT " Цепь DTR: %s\n"
|
||||
IDS_COM_STATUS_RTS_CIRCUIT " Цепь RTS: %s\n"
|
||||
|
||||
IDS_CONSOLE_STATUS_LINES " Строки: %d\n"
|
||||
IDS_CONSOLE_STATUS_COLS " Столбцы: %d\n"
|
||||
IDS_CONSOLE_KBD_DELAY " Скорость клавиатуры: %ld\n"
|
||||
IDS_CONSOLE_KBD_RATE " Задержка клавиатуры: %ld\n"
|
||||
IDS_CONSOLE_CODEPAGE " Кодовая страница: %d\n"
|
||||
|
||||
IDS_PRINTER_OUTPUT_NOT_REROUTED " Вывод принтера не переадресован.\n"
|
||||
IDS_PRINTER_OUTPUT_REROUTED_SERIAL " Вывод принтера переадресован на последовательный порт %s.\n"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_ERROR_QUERY_DEVICES "ОШИБКА: Не удалось опросить DOS устройства (0x%lx).\n"
|
||||
IDS_ERROR_QUERY_DEVICES_FORM " QueryDosDeviceW(%s) возвратила не опознанное состояние %s.\n"
|
||||
IDS_ERROR_SET_PARALLEL_STATE "SetParallelState(%d) - DefineDosDevice(%s) (0x%lx)\n"
|
||||
IDS_ERROR_INVALID_PARAMETER "ОШИБКА: Неверный параметр - %s\n"
|
||||
IDS_ERROR_ILLEGAL_DEVICE_NAME "ОШИБКА: Недопустимое имя устройства - %s (0x%lx)\n"
|
||||
IDS_ERROR_STATUS_GET_DEVICE "ОШИБКА: Не удалось получить состояние устройства COM%d:\n"
|
||||
IDS_ERROR_STATUS_SET_DEVICE "ОШИБКА: Не удалось установить состояние устройства COM%d:\n"
|
||||
IDS_ERROR_INVALID_PARITY_BITS "ОШИБКА: Неверное значение битов четности %d:\n"
|
||||
IDS_ERROR_INVALID_STOP_BITS "ОШИБКА: Неверное значение стоповых битов %d:\n"
|
||||
IDS_ERROR_NO_MEMORY "ОШИБКА: Недостаточно памяти.\n"
|
||||
END
|
70
reactos/base/applications/cmdutils/mode/lang/tr-TR.rc
Normal file
70
reactos/base/applications/cmdutils/mode/lang/tr-TR.rc
Normal file
@@ -0,0 +1,70 @@
|
||||
/* TRANSLATOR: 2016 Erdem Ersoy (eersoy93) (erdemersoy@live.com) */
|
||||
|
||||
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_USAGE "Dizge aygıtlarını yapılandırır.\n\n\
|
||||
Aygıt durumu: MODE [aygıt] [/STATUS]\n\
|
||||
Dizilik giriş: MODE COMm[:] [BAUD=b] [PARITY=p] [DATA=d] [STOP=s]\n\
|
||||
[to=on|off] [xon=on|off] [odsr=on|off]\n\
|
||||
[octs=on|off] [dtr=on|off|hs]\n\
|
||||
[rts=on|off|hs|tg] [idsr=on|off]\n\
|
||||
Yazdırma yönlendirme: MODE LPTn[:]=COMm[:]\n\
|
||||
Kod sayfası seçme: MODE CON[:] CP SELECT=yyy\n\
|
||||
Kod sayfası durumu: MODE CON[:] CP [/STATUS]\n\
|
||||
Görüntü kipi: MODE CON[:] [COLS=c] [LINES=n]\n\
|
||||
Yineleme hızı: MODE CON[:] [RATE=r DELAY=d]\n"
|
||||
|
||||
IDS_QUERY_SERIAL_FOUND " Dizilik aygıt bulundu - %s\n"
|
||||
IDS_QUERY_PRINTER_FOUND " Yazıcı aygıtı bulundu - %s\n"
|
||||
IDS_QUERY_PARALLEL_FOUND " Koşut aygıt bulundu - %s\n"
|
||||
IDS_QUERY_DOSDEV_FOUND " DOS aygıtı bulundu - %s\n"
|
||||
// IDS_QUERY_MISC_FOUND " Başka aygıt bulundu - %s\n"
|
||||
|
||||
// IDS_QUERY_DEVICE_FOUND " %s aygıtı bulundu - %s\n"
|
||||
// IDS_SERIAL "dizilik"
|
||||
// IDS_PRINTER "koşut"
|
||||
// IDS_OTHER "başka"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_DEVICE_STATUS_HEADER "%s aygıtı durumu:"
|
||||
|
||||
IDS_COM_STATUS_BAUD " Baud: %ld\n"
|
||||
IDS_COM_STATUS_PARITY " Eşlik: %s\n"
|
||||
IDS_COM_STATUS_DATA_BITS " Veri İkilleri: %d\n"
|
||||
IDS_COM_STATUS_STOP_BITS " Durma İkilleri: %s\n"
|
||||
IDS_COM_STATUS_TIMEOUT " Süre aşımı: %s\n"
|
||||
IDS_COM_STATUS_XON_XOFF " XON/XOFF: %s\n"
|
||||
IDS_COM_STATUS_CTS_HANDSHAKING " CTS uyuşması: %s\n"
|
||||
IDS_COM_STATUS_DSR_HANDSHAKING " DSR uyuşması: %s\n"
|
||||
IDS_COM_STATUS_DSR_SENSITIVITY " DSR duyarlılığı: %s\n"
|
||||
IDS_COM_STATUS_DTR_CIRCUIT " DTR çevrimi: %s\n"
|
||||
IDS_COM_STATUS_RTS_CIRCUIT " RTS çevrimi: %s\n"
|
||||
|
||||
IDS_CONSOLE_STATUS_LINES " Yataç: %d\n"
|
||||
IDS_CONSOLE_STATUS_COLS " Dikeç: %d\n"
|
||||
IDS_CONSOLE_KBD_RATE " Düğme takımı hızı: %ld\n"
|
||||
IDS_CONSOLE_KBD_DELAY " Düğme takımı gecikmesi: %ld\n"
|
||||
IDS_CONSOLE_CODEPAGE " Kod sayfası: %d\n"
|
||||
|
||||
IDS_PRINTER_OUTPUT_NOT_REROUTED " Yazıcı çıktısı yeniden yönlendirilmiyor.\n"
|
||||
IDS_PRINTER_OUTPUT_REROUTED_SERIAL " Yazıcı çıktısı %s dizilik girişine yönlendiriliyor.\n"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_ERROR_QUERY_DEVICES "YANLIŞLIK: (0x%lx) DOS aygıtı sorgulanamaz.\n"
|
||||
IDS_ERROR_QUERY_DEVICES_FORM " QueryDosDeviceW(%s), %s tanınmamış biçim döndürdü.\n"
|
||||
IDS_ERROR_SET_PARALLEL_STATE "SetParallelState(%d) - DefineDosDevice(%s) (0x%lx)\n"
|
||||
IDS_ERROR_INVALID_PARAMETER "YANLIŞLIK: Geçersiz değişken - %s\n"
|
||||
IDS_ERROR_ILLEGAL_DEVICE_NAME "YANLIŞLIK: Geçersiz aygıt adı - %s (0x%lx)\n"
|
||||
IDS_ERROR_STATUS_GET_DEVICE "YANLIŞLIK: COM%d aygıtının durumu alınamıyor:\n"
|
||||
IDS_ERROR_STATUS_SET_DEVICE "YANLIŞLIK: COM%d aygıtının durumu ayarlanamıyor:\n"
|
||||
IDS_ERROR_INVALID_PARITY_BITS "YANLIŞLIK: %d Eşlik İkilleri için geçersiz değer:\n"
|
||||
IDS_ERROR_INVALID_STOP_BITS "YANLIŞLIK: %d Durma İkilleri için geçersiz değer:\n"
|
||||
IDS_ERROR_NO_MEMORY "YANLIŞLIK: Yeterli bellek yok.\n"
|
||||
IDS_ERROR_SCREEN_LINES_COL "YANLIŞLIK: Görüntülük, belirtilen yataç ve dikeç sayısına ayarlanamıyor.\n"
|
||||
END
|
File diff suppressed because it is too large
Load Diff
@@ -1,5 +1,30 @@
|
||||
#include <windef.h>
|
||||
|
||||
#include "resource.h"
|
||||
|
||||
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
||||
|
||||
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS Mode Utility"
|
||||
#define REACTOS_STR_INTERNAL_NAME "mode"
|
||||
#define REACTOS_STR_ORIGINAL_FILENAME "mode.com"
|
||||
#include <reactos/version.rc>
|
||||
|
||||
/* UTF-8 */
|
||||
#pragma code_page(65001)
|
||||
|
||||
#ifdef LANGUAGE_DE_DE
|
||||
#include "lang/de-DE.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_EN_US
|
||||
#include "lang/en-US.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_RO_RO
|
||||
#include "lang/ro-RO.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_RU_RU
|
||||
#include "lang/ru-RU.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_TR_TR
|
||||
#include "lang/tr-TR.rc"
|
||||
#endif
|
||||
|
||||
|
48
reactos/base/applications/cmdutils/mode/resource.h
Normal file
48
reactos/base/applications/cmdutils/mode/resource.h
Normal file
@@ -0,0 +1,48 @@
|
||||
#ifndef RESOURCE_H
|
||||
#define RESOURCE_H
|
||||
|
||||
#define IDS_USAGE 0
|
||||
|
||||
#define IDS_QUERY_SERIAL_FOUND 1
|
||||
#define IDS_QUERY_PRINTER_FOUND 2
|
||||
#define IDS_QUERY_PARALLEL_FOUND 3
|
||||
// #define IDS_QUERY_MISC_FOUND 4
|
||||
#define IDS_QUERY_DOSDEV_FOUND 4
|
||||
// #define IDS_QUERY_DEVICE_FOUND 1
|
||||
// #define IDS_SERIAL 2
|
||||
// #define IDS_PRINTER 3
|
||||
// #define IDS_OTHER 4
|
||||
|
||||
#define IDS_DEVICE_STATUS_HEADER 5
|
||||
#define IDS_COM_STATUS_BAUD 6
|
||||
#define IDS_COM_STATUS_PARITY 7
|
||||
#define IDS_COM_STATUS_DATA_BITS 8
|
||||
#define IDS_COM_STATUS_STOP_BITS 9
|
||||
#define IDS_COM_STATUS_TIMEOUT 10
|
||||
#define IDS_COM_STATUS_XON_XOFF 11
|
||||
#define IDS_COM_STATUS_CTS_HANDSHAKING 12
|
||||
#define IDS_COM_STATUS_DSR_HANDSHAKING 13
|
||||
#define IDS_COM_STATUS_DSR_SENSITIVITY 14
|
||||
#define IDS_COM_STATUS_DTR_CIRCUIT 15
|
||||
#define IDS_COM_STATUS_RTS_CIRCUIT 16
|
||||
#define IDS_CONSOLE_STATUS_LINES 17
|
||||
#define IDS_CONSOLE_STATUS_COLS 18
|
||||
#define IDS_CONSOLE_KBD_RATE 19
|
||||
#define IDS_CONSOLE_KBD_DELAY 20
|
||||
#define IDS_CONSOLE_CODEPAGE 21
|
||||
#define IDS_PRINTER_OUTPUT_NOT_REROUTED 22
|
||||
#define IDS_PRINTER_OUTPUT_REROUTED_SERIAL 23
|
||||
|
||||
#define IDS_ERROR_QUERY_DEVICES 24
|
||||
#define IDS_ERROR_QUERY_DEVICES_FORM 25
|
||||
#define IDS_ERROR_SET_PARALLEL_STATE 26
|
||||
#define IDS_ERROR_INVALID_PARAMETER 27
|
||||
#define IDS_ERROR_ILLEGAL_DEVICE_NAME 28
|
||||
#define IDS_ERROR_STATUS_GET_DEVICE 29
|
||||
#define IDS_ERROR_STATUS_SET_DEVICE 30
|
||||
#define IDS_ERROR_INVALID_PARITY_BITS 31
|
||||
#define IDS_ERROR_INVALID_STOP_BITS 32
|
||||
#define IDS_ERROR_NO_MEMORY 33
|
||||
#define IDS_ERROR_SCREEN_LINES_COL 34
|
||||
|
||||
#endif /* RESOURCE_H */
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user