mirror of
https://github.com/reactos/reactos
synced 2025-10-08 09:22:51 +02:00
Compare commits
2 Commits
0.4.9-dev
...
usb-experi
Author | SHA1 | Date | |
---|---|---|---|
|
09c26d71b7 | ||
|
0ee830d7a4 |
83
.gitattributes
vendored
83
.gitattributes
vendored
@@ -1,83 +0,0 @@
|
||||
# Set the default behavior, in case people don't have core.autocrlf set.
|
||||
* text=auto
|
||||
|
||||
# Files with these extensions are accepted source files inside the ReactOS
|
||||
# tree. They should have native line endings of the OS.
|
||||
*.acf text
|
||||
*.asm text
|
||||
*.c text
|
||||
*.cc text
|
||||
*.cmake text
|
||||
*.cpp text
|
||||
*.cxx text
|
||||
*.h text
|
||||
*.hpp text
|
||||
*.hxx text
|
||||
*.idl text
|
||||
*.inc text
|
||||
*.inl text
|
||||
*.klc text
|
||||
*.l text
|
||||
*.lds text
|
||||
*.md text
|
||||
*.rc text
|
||||
*.s text
|
||||
*.S text
|
||||
*.sfd text
|
||||
*.spec text
|
||||
*.svg text
|
||||
*.txt text
|
||||
*.TXT text
|
||||
*.y text
|
||||
|
||||
# Files with these extensions end up in the built ReactOS system, so they
|
||||
# need to have CRLF line endings.
|
||||
*.bat text eol=crlf
|
||||
*.cmd text eol=crlf
|
||||
*.exp text eol=crlf
|
||||
*.hhc text eol=crlf
|
||||
*.hhp text eol=crlf
|
||||
*.ini text eol=crlf
|
||||
*.INI text eol=crlf
|
||||
*.inf text eol=crlf
|
||||
*.inf.tpl text eol=crlf
|
||||
*.js text eol=crlf
|
||||
*.manifest text eol=crlf
|
||||
*.mc text eol=crlf
|
||||
*.mof text eol=crlf
|
||||
*.rgs text eol=crlf
|
||||
*.sif text eol=crlf
|
||||
*.vbs text eol=crlf
|
||||
*.vcxproj text eol=crlf
|
||||
*.xml text eol=crlf
|
||||
|
||||
# Files with these extensions are accepted binary files inside the ReactOS
|
||||
# tree. Git must not tamper with them at all!
|
||||
*.avi binary
|
||||
*.bin binary
|
||||
*.bmf binary
|
||||
*.bmp binary
|
||||
*.BMP binary
|
||||
*.chm binary
|
||||
*.cur binary
|
||||
*.dll binary
|
||||
*.emf binary
|
||||
*.gif binary
|
||||
*.ico binary
|
||||
*.jpg binary
|
||||
*.mp3 binary
|
||||
*.nls binary
|
||||
*.otf binary
|
||||
*.pdn binary
|
||||
*.pfb binary
|
||||
*.pfm binary
|
||||
*.png binary
|
||||
*.psd binary
|
||||
*.ttc binary
|
||||
*.ttf binary
|
||||
*.wav binary
|
||||
*.xcf binary
|
||||
|
||||
# All other extensions not explicitly mentioned here are left for Git to
|
||||
# handle automatically.
|
||||
# You must not rely on them having a particular line ending style!
|
19
.github/PULL_REQUEST_TEMPLATE.md
vendored
19
.github/PULL_REQUEST_TEMPLATE.md
vendored
@@ -1,19 +0,0 @@
|
||||
## Purpose
|
||||
|
||||
_Do a quick recap of your work here._
|
||||
|
||||
JIRA issue: [CORE-XXXX](https://jira.reactos.org/browse/CORE-XXXX)
|
||||
|
||||
## Proposed changes
|
||||
|
||||
_Describe what you propose to change/add/fix with this pull request._
|
||||
|
||||
-
|
||||
-
|
||||
|
||||
## TODO
|
||||
|
||||
_Use a TODO when your pull request is Work in Progress._
|
||||
|
||||
- [ ]
|
||||
- [ ]
|
2
.gitignore
vendored
2
.gitignore
vendored
@@ -1,2 +0,0 @@
|
||||
output-*
|
||||
modules/optional
|
20
.gitmessage
20
.gitmessage
@@ -1,20 +0,0 @@
|
||||
# [MODULE] A short but descriptive summary (#pr-num)
|
||||
|
||||
# A comprehensible description of WHY you did this work.
|
||||
|
||||
# CORE-XXXX CIDXXXXX
|
||||
|
||||
# * [MODULE] should usually be the name of the CMake module, written
|
||||
# in all caps.
|
||||
#
|
||||
# * Summary should be imperative (not past tense), and not end with
|
||||
# a period.
|
||||
#
|
||||
# * Description of commit should explain WHY a change was made.
|
||||
#
|
||||
# * JIRA, Coverity ID references should be placed at the bottom and
|
||||
# preceded by the newline.
|
||||
#
|
||||
# * Pull request should always be referenced in the summary in parens
|
||||
# unless it doesn't fit. In this case it should be placed after bug
|
||||
# IDs if any.
|
12
.travis.yml
12
.travis.yml
@@ -1,12 +0,0 @@
|
||||
language: bash
|
||||
|
||||
git:
|
||||
depth: 5
|
||||
|
||||
before_script:
|
||||
- wget https://svn.reactos.org/amine/RosBEBinFull.tar.gz -O RosBE.tar.gz
|
||||
- tar -xzf RosBE.tar.gz
|
||||
- echo 'mkdir ../Build && cd ../Build && $TRAVIS_BUILD_DIR/configure.sh -DENABLE_ROSTESTS=1 && cd reactos && ninja -k 0 && ninja bootcd' > tmp_file
|
||||
|
||||
script:
|
||||
- ./RosBEBinFull/RosBE.sh < tmp_file
|
@@ -16,11 +16,6 @@ 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
|
||||
@@ -40,6 +35,7 @@ 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)
|
||||
@@ -97,10 +93,9 @@ if(NOT CMAKE_CROSSCOMPILING)
|
||||
if(MSVC_VERSION GREATER 1699)
|
||||
add_definitions(/D_ALLOW_KEYWORD_MACROS)
|
||||
endif()
|
||||
if(NOT USE_CLANG_CL)
|
||||
# FIXME: Inspect
|
||||
add_definitions(/Dinline=__inline)
|
||||
endif()
|
||||
add_definitions(/Dinline=__inline)
|
||||
else()
|
||||
add_compile_flags("-fshort-wchar -Wno-multichar")
|
||||
endif()
|
||||
|
||||
include_directories(sdk/include/host)
|
||||
@@ -113,9 +108,9 @@ if(NOT CMAKE_CROSSCOMPILING)
|
||||
|
||||
if(NOT NEW_STYLE_BUILD)
|
||||
if(NOT MSVC)
|
||||
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- )
|
||||
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- )
|
||||
else()
|
||||
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- )
|
||||
export(TARGETS bin2c widl gendib cabman cdmake fatten hpp mkhive obj2bin spec2def geninc mkshelllink utf16le xml2sdb FILE ${CMAKE_BINARY_DIR}/ImportExecutables.cmake NAMESPACE native- )
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@@ -185,10 +180,7 @@ else()
|
||||
|
||||
# Arch Options
|
||||
if(ARCH STREQUAL "i386")
|
||||
if(NOT USE_CLANG_CL)
|
||||
add_definitions(-D_M_IX86)
|
||||
endif()
|
||||
add_definitions(-D_X86_ -D__i386__ -Di386)
|
||||
add_definitions(-D_M_IX86 -D_X86_ -D__i386__ -Di386)
|
||||
elseif(ARCH STREQUAL "amd64")
|
||||
add_definitions(-D_M_AMD64 -D_AMD64_ -D__x86_64__ -D_WIN64)
|
||||
elseif(ARCH STREQUAL "arm")
|
||||
@@ -243,7 +235,6 @@ 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
|
||||
@@ -256,7 +247,6 @@ else()
|
||||
|
||||
add_dependency_header()
|
||||
|
||||
add_subdirectory(sdk/include/ndk/tests)
|
||||
add_subdirectory(sdk/include/xdk)
|
||||
add_subdirectory(sdk/include/psdk)
|
||||
add_subdirectory(sdk/include/dxsdk)
|
||||
|
103
CONTRIBUTING.md
103
CONTRIBUTING.md
@@ -1,103 +0,0 @@
|
||||
# How To Contribute
|
||||
|
||||
There are several ways to contribute to the development of ReactOS. The most often encountered problem is not knowing where to begin or what to do. If you are able to program or understand the technical information that is pertinent to this project, helping the development can be easy.
|
||||
|
||||
- [What To Do?](#what-to-do?)
|
||||
- [How To Contribute?](#how-to-contribute?)
|
||||
- [Where To Start?](#where-to-start?)
|
||||
|
||||
**Legal notice:** If you have seen Microsoft Windows source code, your contribution won't be accepted because of potential copyright violation. Before contributing, you must affirm that the following is true:
|
||||
>I hereby swear that I have not used nor seen the source code to any version of the Windows operating system
|
||||
>nor any Microsoft product that may be related to the proposed project that is under a license incompatible
|
||||
>with contribution to ReactOS, including but not limited to the leaked Windows 2000 source code and the Windows Research Kernel.
|
||||
|
||||
## What To Do?
|
||||
|
||||
### Fix bugs
|
||||
|
||||
You can try to fix a few bugs that are already listed in [JIRA]. Squashing bugs is not a simple task. It requires a lot more skill than simply searching for them, and can be time consuming; however, by doing that you greatly help ReactOS become a stable system.
|
||||
|
||||
_NOTE: patches related to 3rd party code such as Wine or BtrFS should be sent to upstream of the said projects. See [3rd Party Files.txt], [README.WINE] and [README.FSD] in [media/doc](media/doc) for details._
|
||||
|
||||
### Fix tests
|
||||
|
||||
Tests are used to check the functionality and correctness of APIs on ReactOS compared to Windows implementations. There are some unit tests that you could help ReactOS pass, which can be found [in the Web Test Manager][testman] and some that are broken or yet to be written.
|
||||
|
||||
### Fix Coverity scans
|
||||
|
||||
[Coverity] is enhanced static analysis that uncovers leaks, buffer overflows, security issues and other. We do such scans on ReactOS codebase pretty often. You can [request][request-coverity] to see Coverity 'defects' and help to fix them.
|
||||
|
||||
### Test ReactOS
|
||||
|
||||
By localizing bugs, developers can identify what causes the bug and which part it affects. There are a variety of methods to [debug] ReactOS while testing it. After identifying a bug, check if it is already known about by searching on JIRA and adding any additional information to the report. If you think that it is an unidentified bug, consider [filing a bug report].
|
||||
|
||||
### Implement new things
|
||||
|
||||
Considering ReactOS is alpha quality software, there is a lot of [missing functionality] that Windows operating systems have. Before starting a project to implement something, find out whether another person is working on the same thing. If you find that someone is already working on it, ask if any assistance is needed for what specifically is being worked on or a related project. More often than not, someone will start to implement something and move onto something else before it's complete. Make sure you stay committed to what you are going to implement, and do not be afraid to ask for assistance if you need help with something.
|
||||
|
||||
### Write documentation
|
||||
|
||||
There are some important points if you would like to help document ReactOS:
|
||||
|
||||
1. Make sure the documentation does not exist yet (if it does, help improve it).
|
||||
2. Respect [clean room reverse engineering] practices.
|
||||
3. Add your knowledge to a place where the other developers can find it.
|
||||
|
||||
## How To Contribute?
|
||||
|
||||
Your contribution can be of numerous forms. We currently accept two ways to contribute - Pull Requests and Patches.
|
||||
|
||||
### Pull Requests
|
||||
|
||||
Since our [migration to GitHub] we gladly accept __[Pull Requests]__. Pull requests let you tell others about changes you have pushed to a repository on GitHub. Once a pull request is opened, you can discuss and review the potential changes with collaborators and add follow-up commits before the changes are merged into the repository. __Pull request is a prefered way to submit your work__ - it makes reviewing and merging your contribution much easier.
|
||||
|
||||
### Patches
|
||||
|
||||
A __[patch]__ is a set of changes to existing source code. The changes in a patch can be merged into existing source code. This process is referred to as applying a patch (to source code). Which changes a patch contains and the way the patch is structured can have significant impact on the consequences that can happen from applying the patch.
|
||||
|
||||
See [Submitting Patches] for details.
|
||||
|
||||
### Commit style
|
||||
|
||||
Our commit style is defined in a __[commit template]__. Use it as a reference or turn it on using `git config commit.template .gitmessage`. This will set this template as an initial commit message for the new commits in your local repository.
|
||||
|
||||
### Rules and Recommendations
|
||||
|
||||
- *Use your __real name__ and __real email__.* We do not accept anonymous contributions!
|
||||
- *Ensure your contribution is properly described.* Include the relevant issue number if applicable.
|
||||
- *Put only related changes.* It will make reviewing easier as the reviewer needs to recall less information about the existing source code that is changed.
|
||||
- *Search for similar pull requests/patches before submitting.* It may be that a similar pull request or issue was opened previously. Comment and review on that one instead.
|
||||
- *Keep your contribution small and focused on the topic.* It can be tempting to fix existing issues as you come across them while reading the source code. Resist the temptation and put in a note in the source code instead, or (even better) put the issue in the issue tracking system.
|
||||
- *Respect our __[Coding Style]__ and __[Programming Guidelines]__.*
|
||||
- *Do not be afraid to ask questions.* Ask our developers on JIRA or [IRC] channel.
|
||||
|
||||
## Where To Start?
|
||||
|
||||
Finding a good project to start with can be a challenge, because when starting out you are (usually) not aware of all the possibilities. To help you find a project, here are some ideas to try:
|
||||
|
||||
- Find a test that fails, and try to make it succeed: <https://www.reactos.org/testman/>
|
||||
- Look around in JIRA, and if you have problems finding nice projects to start with, there is a label for this: <https://jira.reactos.org/issues/?jql=labels%20%3D%20starter-project>
|
||||
- Ask for help on [IRC]
|
||||
- Additionally, there are some tests that cause crashes/hangs, but these might be slightly harder: <https://jira.reactos.org/browse/ROSTESTS-125>
|
||||
|
||||
[clean room reverse engineering]: https://en.wikipedia.org/wiki/Clean_room_design
|
||||
[debug]: https://reactos.org/wiki/Debugging
|
||||
[JIRA]: https://jira.reactos.org/
|
||||
[filing a bug report]: https://reactos.org/wiki/File_Bugs
|
||||
[testman]: https://www.reactos.org/testman/
|
||||
[migration to GitHub]: https://www.reactos.org/project-news/reactos-repository-migrated-github
|
||||
[humans are terrible at tracking large amount of information]: https://www.eurekalert.org/pub_releases/2005-03/aps-hmc030805.php
|
||||
[Pull requests]: https://help.github.com/articles/about-pull-requests/
|
||||
[tips for reviewing patches]: https://drupal.org/patch/review
|
||||
[missing functionality]: https://reactos.org/wiki/Missing_ReactOS_Functionality
|
||||
[patch]: https://git-scm.com/docs/git-format-patch
|
||||
[Submitting Patches]: https://reactos.org/wiki/Submitting_Patches
|
||||
[Coding Style]: https://reactos.org/wiki/Coding_Style
|
||||
[IRC]: https://reactos.org/wiki/Connect_to_the_ReactOS_IRC_Channels
|
||||
[Programming Guidelines]: https://reactos.org/wiki/Programming_Guidelines
|
||||
[3rd Party Files.txt]: /media/doc/3rd_Party_Files.txt
|
||||
[README.WINE]: /media/doc/README.WINE
|
||||
[README.FSD]: /media/doc/README.FSD
|
||||
[Coverity]: https://scan.coverity.com/projects/reactos
|
||||
[request-coverity]: https://scan.coverity.com/memberships/new?project_id=reactos
|
||||
[commit template]: .gitmessage
|
1
CREDITS
1
CREDITS
@@ -45,7 +45,6 @@ Jonathan Wilson <jonwil@tpgi.com.au>
|
||||
Jurgen van Gael <jurgen.vangael@student.kuleuven.ac.be>
|
||||
KJK::Hyperion <noog@libero.it>
|
||||
Klemens R. Friedl <klemens_friedl@gmx.net>
|
||||
Lauri Ojansivu <x@xet7.org>
|
||||
Maarten Bosma <maarten.paul@bosma.de>
|
||||
Magnus Olsen <magnus@greatlord.com>
|
||||
Mark Tempel <mtempel@visi.com>
|
||||
|
32
README
Normal file
32
README
Normal file
@@ -0,0 +1,32 @@
|
||||
========================
|
||||
ReactOS<EFBFBD> Version 0.4.x
|
||||
Updated January 5, 2016
|
||||
========================
|
||||
|
||||
1. What is ReactOS?
|
||||
-------------------
|
||||
|
||||
ReactOS<EFBFBD> is an Open Source effort to develop a quality operating system that is
|
||||
compatible with applications and drivers written for the Microsoft<66> Windows<77> NT
|
||||
family of operating systems (NT4, 2000, XP, 2003, Vista, Seven).
|
||||
|
||||
The ReactOS project, although currently focused on Windows Server 2003
|
||||
compatibility, is always keeping an eye toward compatibility with
|
||||
Windows Vista and future Windows NT releases.
|
||||
|
||||
More information is available at: https://www.reactos.org
|
||||
|
||||
2. Building ReactOS
|
||||
-------------------
|
||||
|
||||
See the INSTALL file for more details.
|
||||
|
||||
3. More information
|
||||
-------------------
|
||||
|
||||
See the media\doc subdirectory for some sparse notes.
|
||||
|
||||
4. Who is responsible
|
||||
---------------------
|
||||
|
||||
See the CREDITS file.
|
124
README.md
124
README.md
@@ -1,124 +0,0 @@
|
||||
<p align=center>
|
||||
<img src="https://reactos.org/wiki/images/0/02/ReactOS_logo.png">
|
||||
</p>
|
||||
|
||||
---
|
||||
|
||||
<p align=center>
|
||||
<a href="https://reactos.org/project-news/reactos-047-released">
|
||||
<img alt="Release 0.4.7 Release" src="https://img.shields.io/badge/release-0.4.7-0688CB.svg">
|
||||
</a>
|
||||
<a href="https://reactos.org/download">
|
||||
<img alt="Download ReactOS" src="https://img.shields.io/badge/download-latest-0688CB.svg">
|
||||
</a>
|
||||
<a href="https://sourceforge.net/projects/reactos">
|
||||
<img alt="SourceForge Download" src="https://img.shields.io/sourceforge/dm/reactos.svg?colorB=0688CB">
|
||||
</a>
|
||||
<a href="https://github.com/reactos/reactos/blob/master/COPYING">
|
||||
<img alt="License" src="https://img.shields.io/badge/license-GNU_GPL_2.0-0688CB.svg">
|
||||
</a>
|
||||
<a href="https://reactos.org/donating">
|
||||
<img alt="Donate" src="https://img.shields.io/badge/%24-donate-E44E4A.svg">
|
||||
</a>
|
||||
<a href="https://twitter.com/reactos">
|
||||
<img alt="Follow on Twitter" src="https://img.shields.io/twitter/follow/reactos.svg?style=social&label=Follow%20%40reactos">
|
||||
</a>
|
||||
</p>
|
||||
|
||||
## Quick Links
|
||||
|
||||
- [Website](https://reactos.org)
|
||||
- [Wiki](https://reactos.org/wiki)
|
||||
- [Forum](https://reactos.org/forum)
|
||||
- [JIRA Bug Tracker](https://jira.reactos.org/issues)
|
||||
- [ReactOS Git mirror](https://git.reactos.org)
|
||||
- [Testman](https://reactos.org/testman/)
|
||||
|
||||
## What is ReactOS?
|
||||
|
||||
ReactOS™ is an Open Source effort to develop a quality operating system that is compatible with applications and drivers written for the Microsoft® Windows™ NT family of operating systems (NT4, 2000, XP, 2003, Vista, Seven).
|
||||
|
||||
The ReactOS project, although currently focused on Windows Server 2003 compatibility, is always keeping an eye toward compatibility with Windows Vista and future Windows NT releases.
|
||||
|
||||
The code of ReactOS is licensed under [GNU GPL 2.0](https://github.com/reactos/reactos/blob/master/COPYING).
|
||||
|
||||
## Building
|
||||
|
||||
[![appveyor.badge]][appveyor.link] [![travis.badge]][travis.link] [![rosbewin.badge]][rosbewin.link] [![rosbeunix.badge]][rosbeunix.link] [![coverity.badge]][coverity.link]
|
||||
|
||||
To build the system it is strongly advised to use the _ReactOS Build Environment (RosBE)._
|
||||
Up-to-date versions for Windows and for Unix/GNU-Linux are available from our download page at: http://www.reactos.org/wiki/Build_Environment.
|
||||
|
||||
Alternatively one can use Microsoft Visual C++ (MSVC) version 2010+. Building with MSVC is covered here: https://www.reactos.org/wiki/Building_with_MSVC.
|
||||
|
||||
### Binaries
|
||||
|
||||
To build ReactOS you must run the `configure` script in the directory you want to have your build files. Choose `configure.cmd` or `configure.sh` depending on your system. Then run `ninja <modulename>` to build a module you want or just `ninja` to build all modules.
|
||||
|
||||
### Bootable images
|
||||
|
||||
To build a bootable CD image run `ninja bootcd` from the
|
||||
build directory. This will create a CD image with a filename `bootcd.iso`.
|
||||
|
||||
See ["Building ReactOS"](http://www.reactos.org/wiki/Building_ReactOS) for more details.
|
||||
|
||||
## Installing
|
||||
|
||||
ReactOS currently can only be installed on a machine that has a FAT16 or FAT32 partition as the active (bootable) partition.
|
||||
The partition on which ReactOS is to be installed (which may or may not be the bootable partition) must also be formatted as FAT16 or FAT32.
|
||||
ReactOS Setup can format the partitions if needed.
|
||||
|
||||
To install ReactOS from the bootable CD distribution, extract the archive contents. Then burn the CD image, boot from it, and follow the instructions.
|
||||
|
||||
See ["Installing ReactOS"](https://www.reactos.org/wiki/Installing_ReactOS) Wiki page or [INSTALL](INSTALL) for more details.
|
||||
|
||||
## Testing
|
||||
|
||||
If you discover a bug in ReactOS search on JIRA first - it might be reported already. If not report the bug providing logs and as many information as possible.
|
||||
|
||||
See ["File Bugs"](https://www.reactos.org/wiki/File_Bugs) for a guide.
|
||||
|
||||
__NOTE:__ The bug tracker is _not_ for discussions. Please use `#reactos` Freenode IRC channel or our [forum](https://reactos.org/forum).
|
||||
|
||||
## Contributing ![prwelcome.badge]
|
||||
|
||||
We are always looking for developers! Check [how to contribute](CONTRIBUTING.md) if you are willing to participate.
|
||||
|
||||
You can also support ReactOS by [donating](https://reactos.org/donating)! We rely on our backers to maintain our servers and accelerate development by [hiring full-time devs](https://reactos.org/node/785).
|
||||
|
||||
## More information
|
||||
|
||||
ReactOS is a Free and Open Source operating system based on the Windows architecture,
|
||||
providing support for existing applications and drivers, and an alternative to the current dominant consumer operating system.
|
||||
|
||||
It is not another wrapper built on Linux, like WINE. It does not attempt or plan to compete with WINE; in fact, the user-mode part of ReactOS is almost entirely WINE-based and our two teams have cooperated closely in the past.
|
||||
|
||||
ReactOS is also not "yet another OS". It does not attempt to be a third player like any other alternative OS out there. People are not meant to uninstall Linux and use ReactOS instead; ReactOS is a replacement for Windows users who want a Windows replacement that behaves just like Windows.
|
||||
|
||||
More information is available at: https://www.reactos.org.
|
||||
|
||||
Also see the [media/doc](/media/doc/) subdirectory for some sparse notes.
|
||||
|
||||
## Who is responsible
|
||||
|
||||
Active devs are listed as members of [GitHub organization](https://github.com/orgs/reactos/people).
|
||||
See also the [CREDITS](CREDITS) file for others.
|
||||
|
||||
## Code mirrors
|
||||
|
||||
The main development is done on [GitHub](https://github.com/reactos/reactos). We have an [alternative mirror](https://git.reactos.org/?p=reactos.git) in case GitHub is down.
|
||||
|
||||
There is also an obsolete [SVN archive repository](https://svn.reactos.org/svn/reactos?view=revision) that is kept for historical purposes.
|
||||
|
||||
[travis.badge]: https://travis-ci.org/reactos/reactos.svg?branch=master
|
||||
[appveyor.badge]: https://ci.appveyor.com/api/projects/status/github/reactos/reactos?branch=master&svg=true
|
||||
[coverity.badge]: https://scan.coverity.com/projects/205/badge.svg?flat=1
|
||||
[rosbewin.badge]: https://img.shields.io/badge/RosBE_Windows-2.1.5-0688CB.svg
|
||||
[rosbeunix.badge]: https://img.shields.io/badge/RosBE_Unix-2.1.2-0688CB.svg
|
||||
[prwelcome.badge]: https://img.shields.io/badge/PR-welcome-0688CB.svg
|
||||
|
||||
[travis.link]: https://travis-ci.org/reactos/reactos
|
||||
[appveyor.link]: https://ci.appveyor.com/project/AmineKhaldi/reactos
|
||||
[coverity.link]: https://scan.coverity.com/projects/205
|
||||
[rosbewin.link]: https://sourceforge.net/projects/reactos/files/RosBE-Windows/i386/2.1.5/
|
||||
[rosbeunix.link]: https://sourceforge.net/projects/reactos/files/RosBE-Unix/2.1.2/
|
34
appveyor.yml
34
appveyor.yml
@@ -1,34 +0,0 @@
|
||||
environment:
|
||||
matrix:
|
||||
- BuildType: "clang-cl"
|
||||
- BuildType: "msvc"
|
||||
|
||||
version: reactos.appveyor.{build}
|
||||
skip_branch_with_pr: true
|
||||
clone_depth: 5
|
||||
clone_folder: c:\reactos-cov
|
||||
|
||||
init:
|
||||
- ps: (New-Object System.Net.WebClient).DownloadFile("https://svn.reactos.org/amine/RosCMakeNinja.zip","C:\RosCMakeNinja.zip")
|
||||
- 7z x C:\RosCMakeNinja.zip -oC:\RosCMakeNinja
|
||||
- ps: >-
|
||||
If ($env:BuildType -Match "clang-cl") {
|
||||
$env:clang_configure_option="clang"
|
||||
(New-Object System.Net.WebClient).DownloadFile("https://svn.reactos.org/amine/clang-cl.7z","C:\clang-cl.7z")
|
||||
7z x C:\clang-cl.7z -oC:\RosCMakeNinja\bin
|
||||
} Else {
|
||||
$env:clang_configure_option=""
|
||||
}
|
||||
|
||||
build_script:
|
||||
- set PATH=C:\RosCMakeNinja\bin;%PATH%
|
||||
- call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86
|
||||
- cmake --version
|
||||
- md c:\ros_build
|
||||
- cd c:\ros_build
|
||||
- call %APPVEYOR_BUILD_FOLDER%\configure.cmd %clang_configure_option% -DENABLE_ROSTESTS=1
|
||||
- ninja -k0
|
||||
- ninja bootcd
|
||||
|
||||
test: off
|
||||
deploy: off
|
@@ -6,7 +6,6 @@ add_subdirectory(charmap)
|
||||
add_subdirectory(clipbrd)
|
||||
add_subdirectory(cmdutils)
|
||||
add_subdirectory(control)
|
||||
add_subdirectory(drwtsn32)
|
||||
add_subdirectory(dxdiag)
|
||||
add_subdirectory(extrac32)
|
||||
add_subdirectory(findstr)
|
||||
@@ -29,6 +28,7 @@ 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 safety\n"
|
||||
" and lock i/o on this channel for 30 seconds to ensure safity\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 design ATA controllers are represented\n"
|
||||
" Note, due do NT internal desing 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("Scanning bus for new devices.\n");
|
||||
printf("Scaning bus for new devices.\n");
|
||||
if(lock) {
|
||||
printf("You have %d seconds to connect device.\n", lock);
|
||||
}
|
||||
|
@@ -1,8 +1,6 @@
|
||||
|
||||
include_directories(${REACTOS_SOURCE_DIR}/sdk/lib/conutils)
|
||||
|
||||
add_executable(cacls cacls.c cacls.rc)
|
||||
list(APPEND SOURCE cacls.c cacls.rc)
|
||||
add_executable(cacls ${SOURCE})
|
||||
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,17 +33,155 @@ static GENERIC_MAPPING FileGenericMapping =
|
||||
};
|
||||
|
||||
|
||||
static VOID
|
||||
PrintError(DWORD dwError)
|
||||
static
|
||||
INT
|
||||
LengthOfStrResource(IN HINSTANCE hInst,
|
||||
IN UINT uID)
|
||||
{
|
||||
if (dwError == ERROR_SUCCESS)
|
||||
return;
|
||||
HRSRC hrSrc;
|
||||
HGLOBAL hRes;
|
||||
LPWSTR lpName, lpStr;
|
||||
|
||||
ConMsgPuts(StdErr, FORMAT_MESSAGE_FROM_SYSTEM,
|
||||
NULL, dwError, LANG_USER_DEFAULT);
|
||||
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;
|
||||
}
|
||||
|
||||
static BOOL
|
||||
|
||||
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
|
||||
PrintFileDacl(IN LPTSTR FilePath,
|
||||
IN LPTSTR FileName)
|
||||
{
|
||||
@@ -61,8 +199,10 @@ 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,
|
||||
@@ -178,7 +318,8 @@ BuildSidString:
|
||||
}
|
||||
|
||||
/* print the file name or space */
|
||||
ConPrintf(StdOut, L"%s ", FullFileName);
|
||||
_tprintf(_T("%s "),
|
||||
FullFileName);
|
||||
|
||||
/* attempt to map the SID to a user name */
|
||||
if (AceIndex == 0)
|
||||
@@ -194,29 +335,35 @@ BuildSidString:
|
||||
/* print the domain and/or user if possible, or the SID string */
|
||||
if (Name != NULL && Domain[0] != _T('\0'))
|
||||
{
|
||||
ConPrintf(StdOut, L"%s\\%s:", Domain, Name);
|
||||
_tprintf(_T("%s\\%s:"),
|
||||
Domain,
|
||||
Name);
|
||||
IndentAccess = (DWORD)_tcslen(Domain) + _tcslen(Name);
|
||||
}
|
||||
else
|
||||
{
|
||||
LPTSTR DisplayString = (Name != NULL ? Name : SidString);
|
||||
|
||||
ConPrintf(StdOut, L"%s:", DisplayString);
|
||||
_tprintf(_T("%s:"),
|
||||
DisplayString);
|
||||
IndentAccess = (DWORD)_tcslen(DisplayString);
|
||||
}
|
||||
|
||||
/* print the ACE Flags */
|
||||
if (Ace->Header.AceFlags & CONTAINER_INHERIT_ACE)
|
||||
{
|
||||
IndentAccess += ConResPuts(StdOut, IDS_ABBR_CI);
|
||||
IndentAccess += LoadAndPrintString(NULL,
|
||||
IDS_ABBR_CI);
|
||||
}
|
||||
if (Ace->Header.AceFlags & OBJECT_INHERIT_ACE)
|
||||
{
|
||||
IndentAccess += ConResPuts(StdOut, IDS_ABBR_OI);
|
||||
IndentAccess += LoadAndPrintString(NULL,
|
||||
IDS_ABBR_OI);
|
||||
}
|
||||
if (Ace->Header.AceFlags & INHERIT_ONLY_ACE)
|
||||
{
|
||||
IndentAccess += ConResPuts(StdOut, IDS_ABBR_IO);
|
||||
IndentAccess += LoadAndPrintString(NULL,
|
||||
IDS_ABBR_IO);
|
||||
}
|
||||
|
||||
IndentAccess += 2;
|
||||
@@ -228,11 +375,13 @@ BuildSidString:
|
||||
{
|
||||
if (AccessMask == FILE_ALL_ACCESS)
|
||||
{
|
||||
ConResPuts(StdOut, IDS_ABBR_NONE);
|
||||
LoadAndPrintString(NULL,
|
||||
IDS_ABBR_NONE);
|
||||
}
|
||||
else
|
||||
{
|
||||
ConResPuts(StdOut, IDS_DENY);
|
||||
LoadAndPrintString(NULL,
|
||||
IDS_DENY);
|
||||
goto PrintSpecialAccess;
|
||||
}
|
||||
}
|
||||
@@ -240,20 +389,24 @@ BuildSidString:
|
||||
{
|
||||
if (AccessMask == FILE_ALL_ACCESS)
|
||||
{
|
||||
ConResPuts(StdOut, IDS_ABBR_FULL);
|
||||
LoadAndPrintString(NULL,
|
||||
IDS_ABBR_FULL);
|
||||
}
|
||||
else if (!(Ace->Mask & (GENERIC_READ | GENERIC_EXECUTE)) &&
|
||||
AccessMask == (FILE_GENERIC_READ | FILE_EXECUTE))
|
||||
{
|
||||
ConResPuts(StdOut, IDS_ABBR_READ);
|
||||
LoadAndPrintString(NULL,
|
||||
IDS_ABBR_READ);
|
||||
}
|
||||
else if (AccessMask == (FILE_GENERIC_READ | FILE_GENERIC_WRITE | FILE_EXECUTE | DELETE))
|
||||
{
|
||||
ConResPuts(StdOut, IDS_ABBR_CHANGE);
|
||||
LoadAndPrintString(NULL,
|
||||
IDS_ABBR_CHANGE);
|
||||
}
|
||||
else if (AccessMask == FILE_GENERIC_WRITE)
|
||||
{
|
||||
ConResPuts(StdOut, IDS_ABBR_WRITE);
|
||||
LoadAndPrintString(NULL,
|
||||
IDS_ABBR_WRITE);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -293,32 +446,38 @@ BuildSidString:
|
||||
{STANDARD_RIGHTS_ALL, IDS_STANDARD_RIGHTS_ALL},
|
||||
};
|
||||
|
||||
ConResPuts(StdOut, IDS_ALLOW);
|
||||
LoadAndPrintString(NULL,
|
||||
IDS_ALLOW);
|
||||
|
||||
PrintSpecialAccess:
|
||||
ConResPuts(StdOut, IDS_SPECIAL_ACCESS);
|
||||
LoadAndPrintString(NULL,
|
||||
IDS_SPECIAL_ACCESS);
|
||||
|
||||
/* print the special access rights */
|
||||
x = ARRAYSIZE(AccessRights);
|
||||
x = sizeof(AccessRights) / sizeof(AccessRights[0]);
|
||||
while (x-- != 0)
|
||||
{
|
||||
if ((Ace->Mask & AccessRights[x].Access) == AccessRights[x].Access)
|
||||
{
|
||||
ConPrintf(StdOut, L"\n%s ", FullFileName);
|
||||
for (x2 = 0; x2 < IndentAccess; x2++)
|
||||
_tprintf(_T("\n%s "),
|
||||
FullFileName);
|
||||
for (x2 = 0;
|
||||
x2 < IndentAccess;
|
||||
x2++)
|
||||
{
|
||||
ConPuts(StdOut, L" ");
|
||||
_tprintf(_T(" "));
|
||||
}
|
||||
|
||||
ConResPuts(StdOut, AccessRights[x].uID);
|
||||
LoadAndPrintString(NULL,
|
||||
AccessRights[x].uID);
|
||||
}
|
||||
}
|
||||
|
||||
ConPuts(StdOut, L"\n");
|
||||
_tprintf(_T("\n"));
|
||||
}
|
||||
}
|
||||
|
||||
ConPuts(StdOut, L"\n");
|
||||
_tprintf(_T("\n"));
|
||||
|
||||
/* free up all resources */
|
||||
if (Name != NULL)
|
||||
@@ -382,7 +541,7 @@ GetPathOfFile(LPTSTR FilePath, LPCTSTR pszFiles)
|
||||
*pch = 0;
|
||||
if (!GetFullPathName(FilePath, MAX_PATH, FullPath, NULL))
|
||||
{
|
||||
PrintError(GetLastError());
|
||||
PrintErrorMessage(GetLastError());
|
||||
return FALSE;
|
||||
}
|
||||
lstrcpyn(FilePath, FullPath, MAX_PATH);
|
||||
@@ -390,7 +549,7 @@ GetPathOfFile(LPTSTR FilePath, LPCTSTR pszFiles)
|
||||
attrs = GetFileAttributes(FilePath);
|
||||
if (attrs == 0xFFFFFFFF || !(attrs & FILE_ATTRIBUTE_DIRECTORY))
|
||||
{
|
||||
PrintError(ERROR_DIRECTORY);
|
||||
PrintErrorMessage(ERROR_DIRECTORY);
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
@@ -432,7 +591,7 @@ PrintDaclsOfFiles(LPCTSTR pszFiles)
|
||||
LastError = GetLastError();
|
||||
if (LastError == ERROR_ACCESS_DENIED)
|
||||
{
|
||||
PrintError(LastError);
|
||||
PrintErrorMessage(LastError);
|
||||
if (!OptionC)
|
||||
{
|
||||
FindClose(hFind);
|
||||
@@ -440,21 +599,17 @@ PrintDaclsOfFiles(LPCTSTR pszFiles)
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
ConPuts(StdOut, L"\n");
|
||||
}
|
||||
_tprintf(_T("\n"));
|
||||
} while(FindNextFile(hFind, &FindData));
|
||||
LastError = GetLastError();
|
||||
FindClose(hFind);
|
||||
|
||||
if (LastError != ERROR_NO_MORE_FILES)
|
||||
{
|
||||
PrintError(LastError);
|
||||
PrintErrorMessage(LastError);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -616,7 +771,7 @@ ChangeACLsOfFiles(LPCTSTR pszFiles)
|
||||
LastError = GetLastError();
|
||||
if (LastError == ERROR_ACCESS_DENIED)
|
||||
{
|
||||
PrintError(LastError);
|
||||
PrintErrorMessage(LastError);
|
||||
if (!OptionC)
|
||||
{
|
||||
FindClose(hFind);
|
||||
@@ -633,7 +788,7 @@ ChangeACLsOfFiles(LPCTSTR pszFiles)
|
||||
|
||||
if (LastError != ERROR_NO_MORE_FILES)
|
||||
{
|
||||
PrintError(LastError);
|
||||
PrintErrorMessage(LastError);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -671,7 +826,7 @@ ChangeACLsOfFilesInCurDir(LPCTSTR pszFiles)
|
||||
LastError = GetLastError();
|
||||
if (LastError == ERROR_ACCESS_DENIED)
|
||||
{
|
||||
PrintError(LastError);
|
||||
PrintErrorMessage(LastError);
|
||||
if (!OptionC)
|
||||
{
|
||||
FindClose(hFind);
|
||||
@@ -688,7 +843,7 @@ ChangeACLsOfFilesInCurDir(LPCTSTR pszFiles)
|
||||
|
||||
if (LastError != ERROR_NO_MORE_FILES)
|
||||
{
|
||||
PrintError(LastError);
|
||||
PrintErrorMessage(LastError);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -717,7 +872,7 @@ ChangeACLsOfFilesInCurDir(LPCTSTR pszFiles)
|
||||
LastError = GetLastError();
|
||||
if (LastError == ERROR_ACCESS_DENIED)
|
||||
{
|
||||
PrintError(LastError);
|
||||
PrintErrorMessage(LastError);
|
||||
if (!OptionC)
|
||||
{
|
||||
FindClose(hFind);
|
||||
@@ -734,29 +889,26 @@ ChangeACLsOfFilesInCurDir(LPCTSTR pszFiles)
|
||||
|
||||
if (LastError != ERROR_NO_MORE_FILES)
|
||||
{
|
||||
PrintError(LastError);
|
||||
PrintErrorMessage(LastError);
|
||||
return FALSE;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
int _tmain(int argc, const TCHAR *argv[])
|
||||
int
|
||||
__cdecl
|
||||
_tmain(int argc, const TCHAR *argv[])
|
||||
{
|
||||
INT i;
|
||||
LPTSTR pch;
|
||||
BOOL InvalidParameter = FALSE;
|
||||
|
||||
/* Initialize the Console Standard Streams */
|
||||
ConInitStdStreams();
|
||||
|
||||
if (argc <= 1)
|
||||
{
|
||||
ConResPuts(StdOut, IDS_HELP);
|
||||
PrintHelp();
|
||||
return 0;
|
||||
}
|
||||
|
||||
// FIXME: Convert to proper parsing, with support for /?
|
||||
|
||||
/*
|
||||
* parse command line options
|
||||
*/
|
||||
@@ -839,8 +991,8 @@ int _tmain(int argc, const TCHAR *argv[])
|
||||
|
||||
if (InvalidParameter)
|
||||
{
|
||||
PrintError(ERROR_INVALID_PARAMETER);
|
||||
ConResPuts(StdOut, IDS_HELP);
|
||||
PrintErrorMessage(ERROR_INVALID_PARAMETER);
|
||||
PrintHelp();
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
@@ -23,8 +23,7 @@ CACLS όνομα_αρχείου [/T] [/E] [/C] [/G χρήστης:άδειες [
|
||||
C Αλλαγή (εγγραφή)\n\
|
||||
F Πλήρης έλεγχος\n\
|
||||
/D user Αποτροπή χρήστη από προσπέλαση.\n\
|
||||
Τα Wildcards μπορούν να χρησιμοποιηθούν για να προσδιορίσουν παραπαπάνω από\n\
|
||||
ένα αρχεία στην εντολή.\n\
|
||||
Τα Wildcards μπορούν να χρησιμοποιηθούν για να προσδιορίσουν παραπαπάνω από ένα αρχεία στην εντολή.\n\
|
||||
Μπορείτε να προσδιορίσετε παρπαάνω από έναν χρήστη στην εντολή.\n\n\
|
||||
Abbreviations:\n\
|
||||
CI - Container Inherit.\n\
|
||||
|
@@ -18,8 +18,7 @@ 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\n\
|
||||
(unicamente válido con /E).\n\
|
||||
/R usuario Revoca los derechos de acceso al usuario especificado (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,8 +15,7 @@ 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é\n\
|
||||
(valide uniquement avec /E).\n\
|
||||
/R user Supprime les droits d'accès de l'utilisateur spécifié (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\
|
||||
@@ -24,8 +23,7 @@ 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\n\
|
||||
fichier avec une commande.\n\
|
||||
Il est possible d'utiliser des caractères joker pour sélectionner plus d'un 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,9 +2,7 @@ LANGUAGE LANG_DUTCH, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
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\
|
||||
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\
|
||||
[/P gebr:toeg [...]] [/D gebruiker [...]]\n\
|
||||
bestandsnaam ACL's weergeven.\n\
|
||||
/T ACL's wijzigen van opgegeven bestanden in\n\
|
||||
|
@@ -24,8 +24,7 @@ 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\n\
|
||||
(działa tylko z opcją /E).\n\
|
||||
/R użytkownik Odwołuje prawa dostępu określonemu użytkownikowi (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\
|
||||
@@ -34,8 +33,7 @@ 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\n\
|
||||
symboli wieloznacznych.\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 wielu użytkowników.\n\n\
|
||||
Skróty:\n\
|
||||
CI - Dziedziczenie kontenera.\n\
|
||||
|
@@ -1,4 +1,4 @@
|
||||
/* Translator: Ștefan Fulea (stefan dot fulea at mail dot md) */
|
||||
/* Ș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\
|
||||
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\
|
||||
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\
|
||||
Abrevieri:\n\
|
||||
CI - Moștenire container.\n\
|
||||
ACE moștenită de directoare.\n\
|
||||
|
@@ -47,7 +47,7 @@ Förkortningar:\n\
|
||||
IDS_ABBR_WRITE "W"
|
||||
IDS_ABBR_CHANGE "C"
|
||||
IDS_ABBR_NONE "N"
|
||||
IDS_ALLOW "(TILLÅT)"
|
||||
IDS_ALLOW ""
|
||||
IDS_DENY "(NEKA)"
|
||||
IDS_SPECIAL_ACCESS "(speciell rättighet:)"
|
||||
IDS_GENERIC_READ "GENERISK_LÄSNING"
|
||||
@@ -73,7 +73,7 @@ Förkortningar:\n\
|
||||
IDS_SYNCHRONIZE "SYNKRONISERA"
|
||||
IDS_WRITE_OWNER "SKRIVA_ÄGARE"
|
||||
IDS_WRITE_DAC "SKRIVA_DAC"
|
||||
IDS_READ_CONTROL "LÄSKONTROLL"
|
||||
IDS_READ_CONTROL "LÄSE_KONTROLL"
|
||||
IDS_DELETE "RADERA"
|
||||
IDS_STANDARD_RIGHTS_ALL "STANDARD_RÄTTIGHETER_ALLT"
|
||||
END
|
||||
|
@@ -1,4 +1,4 @@
|
||||
/* TRANSLATOR: 2015 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net) */
|
||||
/* TRANSLATOR: 2015 Erdem Ersoy (eersoy93) (erdemersoy@live.com) */
|
||||
|
||||
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
|
||||
|
||||
|
@@ -2,14 +2,11 @@
|
||||
#define _CACLS_PRECOMP_H
|
||||
|
||||
#include <stdarg.h>
|
||||
#include <tchar.h>
|
||||
|
||||
#include <windef.h>
|
||||
#include <winbase.h>
|
||||
#include <winuser.h> // For CharPrev
|
||||
#include <winuser.h>
|
||||
#include <sddl.h>
|
||||
|
||||
#include <conutils.h>
|
||||
#include <tchar.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 comctl32 user32 shell32 gdi32 msvcrt kernel32)
|
||||
add_importlibs(calc advapi32 user32 shell32 gdi32 msvcrt kernel32)
|
||||
|
||||
if(MSVC)
|
||||
add_importlibs(calc ntdll)
|
||||
|
@@ -144,17 +144,15 @@ 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, DEUTSCHE_MARK, "$/1,95583", "$*1,95583")
|
||||
DECLARE_CONV_UNIT(CURRENCY, CZECH_KORUNA, "$/27,9766", "$*27,9766")
|
||||
DECLARE_CONV_UNIT(CURRENCY, DEUTSCHE_MARK, "$/1,9558", "$*1,9558")
|
||||
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,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, 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, 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 scientific notation.
|
||||
It enables or it disables the fixed scietific notation.
|
||||
Shortcut from keyboard: V
|
||||
|
||||
0 1 2 3 4 5 6 7 8 9
|
||||
|
@@ -497,15 +497,12 @@ 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,15 +496,12 @@ 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,15 +491,12 @@ 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,15 +491,12 @@ 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,15 +491,12 @@ 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,15 +497,12 @@ 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,15 +491,12 @@ 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"
|
||||
|
@@ -6,30 +6,29 @@ LANGUAGE LANG_HEBREW, SUBLANG_DEFAULT
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
EXSTYLE WS_EX_LAYOUTRTL
|
||||
CAPTION "מחשבון ReactOS"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
FONT 8, "MS Shell Dlg", 0, 0, 0x1
|
||||
BEGIN
|
||||
GROUPBOX "", IDC_STATIC, 4 ,14, 141, 20
|
||||
CONTROL "הקס", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 6, 21, 30, 10
|
||||
CONTROL "עשרוני", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 36, 21, 34, 10
|
||||
CONTROL "אוקטלי", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 73, 21, 37, 10
|
||||
CONTROL "בינרי", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 113, 21, 30, 10
|
||||
GROUPBOX "", IDC_STATIC, 4, 34, 84, 20
|
||||
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
|
||||
CONTROL "הקסהדסימלי", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
|
||||
CONTROL "עשרוני", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
|
||||
CONTROL "אוקטלי", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
|
||||
CONTROL "בינארי", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
|
||||
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
|
||||
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
|
||||
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
|
||||
CTEXT "", IDC_TEXT_PARENT, 93, 38, 18, 16, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
|
||||
CTEXT "", IDC_TEXT_MEMORY, 126, 38, 18, 16, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
|
||||
PUSHBUTTON "Sta", IDC_BUTTON_STA, 4, 60, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "Sta", IDC_BUTTON_STA, 5, 60, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "Ave", IDC_BUTTON_AVE, 4, 80, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "Ave", IDC_BUTTON_AVE, 5, 80, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "Sum", IDC_BUTTON_SUM, 4, 100, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "Sum", IDC_BUTTON_SUM, 5, 100, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "s", IDC_BUTTON_S, 4, 120, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "s", IDC_BUTTON_S, 5, 120, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "Dat", IDC_BUTTON_DAT, 4, 140, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "Dat", IDC_BUTTON_DAT, 5, 140, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "F-E", IDC_BUTTON_FE, 38, 60, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
@@ -71,15 +70,15 @@ BEGIN
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "pi", IDC_BUTTON_PI, 123, 140, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "9", IDC_BUTTON_9, 156, 60, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "7", IDC_BUTTON_7, 156, 60, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "6", IDC_BUTTON_6, 156, 80, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "4", IDC_BUTTON_4, 156, 80, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "3", IDC_BUTTON_3, 156, 100, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "1", IDC_BUTTON_1, 156, 100, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "0", IDC_BUTTON_0, 156, 120, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "F", IDC_BUTTON_F, 156, 140, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "A", IDC_BUTTON_A, 156, 140, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "8", IDC_BUTTON_8, 182, 60, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
@@ -89,17 +88,17 @@ BEGIN
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "+/-", IDC_BUTTON_SIGN, 182, 120, 24, 18,BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "E", IDC_BUTTON_E, 182, 140, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "B", IDC_BUTTON_B, 182, 140, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "7", IDC_BUTTON_7, 208, 60, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "9", IDC_BUTTON_9, 208, 60, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "4", IDC_BUTTON_4, 208, 80, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "6", IDC_BUTTON_6, 208, 80, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "1", IDC_BUTTON_1, 208, 100, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "3", IDC_BUTTON_3, 208, 100, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON ",", IDC_BUTTON_DOT, 208, 120, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "D", IDC_BUTTON_D, 208, 140, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "C", IDC_BUTTON_C, 208, 140, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "/", IDC_BUTTON_DIV, 234, 60, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
@@ -109,7 +108,7 @@ BEGIN
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "+", IDC_BUTTON_ADD, 234, 120, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "C", IDC_BUTTON_C, 234, 140, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "D", IDC_BUTTON_D, 234, 140, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "Mod", IDC_BUTTON_MOD, 260, 60, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
@@ -119,7 +118,7 @@ BEGIN
|
||||
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "=", IDC_BUTTON_EQU, 260, 120, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "B", IDC_BUTTON_B, 260, 140, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "E", IDC_BUTTON_E, 260, 140, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "And", IDC_BUTTON_AND, 286, 60, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
@@ -129,7 +128,7 @@ BEGIN
|
||||
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "Int", IDC_BUTTON_INT, 286, 120, 24, 18, BS_CENTER |
|
||||
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "A", IDC_BUTTON_A, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
|
||||
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
|
||||
@@ -142,7 +141,7 @@ BEGIN
|
||||
NOT WS_VISIBLE, 270, 21, 38, 10
|
||||
CONTROL "מעלות", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
|
||||
CONTROL "רדיאנים", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
|
||||
CONTROL "גרדיאנים", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
|
||||
CONTROL "Gradians", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
|
||||
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
|
||||
@@ -155,7 +154,6 @@ END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
EXSTYLE WS_EX_LAYOUTRTL
|
||||
CAPTION "מחשבון ReactOS"
|
||||
MENU IDR_MENU_STANDARD
|
||||
FONT 8, "MS Shell Dlg", 0, 0, 0x1
|
||||
@@ -164,14 +162,14 @@ BEGIN
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "CE", IDC_BUTTON_CE, 80, 23, 41, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "חזרה", IDC_BUTTON_BACK, 36, 23, 42, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "Back", IDC_BUTTON_BACK, 36, 23, 42, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 159, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
|
||||
PUSHBUTTON "9", IDC_BUTTON_9, 36, 45, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "7", IDC_BUTTON_7, 36, 45, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "6", IDC_BUTTON_6, 36, 65, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "4", IDC_BUTTON_4, 36, 65, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "3", IDC_BUTTON_3, 36, 85, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "1", IDC_BUTTON_1, 36, 85, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "0", IDC_BUTTON_0, 36, 105, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
@@ -183,11 +181,11 @@ BEGIN
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "+/-", IDC_BUTTON_SIGN, 62, 105, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "7", IDC_BUTTON_7, 88, 45, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "9", IDC_BUTTON_9, 88, 45, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "4", IDC_BUTTON_4, 88, 65, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "6", IDC_BUTTON_6, 88, 65, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "1", IDC_BUTTON_1, 88, 85, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "3", IDC_BUTTON_3, 88, 85, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON ",", IDC_BUTTON_DOT, 88, 105, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
@@ -221,7 +219,6 @@ END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
EXSTYLE WS_EX_LAYOUTRTL
|
||||
CAPTION "מחשבון ReactOS"
|
||||
MENU IDR_MENU_STANDARD
|
||||
FONT 8, "MS Shell Dlg"
|
||||
@@ -240,14 +237,14 @@ BEGIN
|
||||
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 276, 24, 40, 17
|
||||
CONTROL "CE", IDC_BUTTON_CE, "Button", BS_OWNERDRAW | BS_CENTER |
|
||||
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 232, 24, 40, 17
|
||||
CONTROL "חזרה", IDC_BUTTON_BACK, "Button", BS_OWNERDRAW | BS_CENTER |
|
||||
CONTROL "Back", IDC_BUTTON_BACK, "Button", BS_OWNERDRAW | BS_CENTER |
|
||||
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 24, 40,17
|
||||
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 312, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
|
||||
CONTROL "9", IDC_BUTTON_9, "Button", BS_OWNERDRAW | BS_CENTER |
|
||||
CONTROL "7", IDC_BUTTON_7, "Button", BS_OWNERDRAW | BS_CENTER |
|
||||
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 48, 24, 18
|
||||
CONTROL "6", IDC_BUTTON_6, "Button", BS_OWNERDRAW | BS_CENTER |
|
||||
CONTROL "4", IDC_BUTTON_4, "Button", BS_OWNERDRAW | BS_CENTER |
|
||||
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 67, 24, 18
|
||||
CONTROL "3", IDC_BUTTON_3, "Button", BS_OWNERDRAW | BS_CENTER |
|
||||
CONTROL "1", IDC_BUTTON_1, "Button", BS_OWNERDRAW | BS_CENTER |
|
||||
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 86, 24, 18
|
||||
CONTROL "0", IDC_BUTTON_0, "Button", BS_OWNERDRAW | BS_CENTER |
|
||||
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 105, 24, 18
|
||||
@@ -259,11 +256,11 @@ BEGIN
|
||||
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 214, 86, 24, 18
|
||||
CONTROL "+/-", IDC_BUTTON_SIGN, "Button", BS_OWNERDRAW | BS_CENTER |
|
||||
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 214, 105, 24, 18
|
||||
CONTROL "7", IDC_BUTTON_7, "Button", BS_OWNERDRAW | BS_CENTER |
|
||||
CONTROL "9", IDC_BUTTON_9, "Button", BS_OWNERDRAW | BS_CENTER |
|
||||
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 48, 24, 18
|
||||
CONTROL "4", IDC_BUTTON_4, "Button", BS_OWNERDRAW | BS_CENTER |
|
||||
CONTROL "6", IDC_BUTTON_6, "Button", BS_OWNERDRAW | BS_CENTER |
|
||||
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 67, 24, 18
|
||||
CONTROL "1", IDC_BUTTON_1, "Button", BS_OWNERDRAW | BS_CENTER |
|
||||
CONTROL "3", IDC_BUTTON_3, "Button", BS_OWNERDRAW | BS_CENTER |
|
||||
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 86, 24, 18
|
||||
CONTROL ",", IDC_BUTTON_DOT, "Button", BS_OWNERDRAW | BS_CENTER |
|
||||
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 105, 24, 18
|
||||
@@ -297,7 +294,6 @@ END
|
||||
|
||||
IDD_DIALOG_STAT DIALOGEX 0, 0, 163, 85
|
||||
STYLE DS_SHELLFONT | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
EXSTYLE WS_EX_LAYOUTRTL
|
||||
CAPTION "תיבת סטטיסטיקה"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
BEGIN
|
||||
@@ -327,11 +323,11 @@ BEGIN
|
||||
MENUITEM "הקס\tF5", IDM_VIEW_HEX, CHECKED
|
||||
MENUITEM "עשרוני\tF6", IDM_VIEW_DEC, CHECKED
|
||||
MENUITEM "אוקטלי\tF7", IDM_VIEW_OCT, CHECKED
|
||||
MENUITEM "בינרי\tF8", IDM_VIEW_BIN, CHECKED
|
||||
MENUITEM "בינארי\tF8", IDM_VIEW_BIN, CHECKED
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "מעלות\tF2", IDM_VIEW_DEG, CHECKED
|
||||
MENUITEM "רדיאנים\tF3", IDM_VIEW_RAD, CHECKED
|
||||
MENUITEM "גרדיאנים\tF4", IDM_VIEW_GRAD, CHECKED
|
||||
MENUITEM "Gradians\tF4", IDM_VIEW_GRAD, CHECKED
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "קיבוץ ספרות", IDM_VIEW_GROUP, CHECKED
|
||||
END
|
||||
@@ -359,7 +355,7 @@ BEGIN
|
||||
MENUITEM "הקס\tF5", IDM_VIEW_HEX, CHECKED
|
||||
MENUITEM "עשרוני\tF6", IDM_VIEW_DEC, CHECKED
|
||||
MENUITEM "אוקטלי\tF7", IDM_VIEW_OCT, CHECKED
|
||||
MENUITEM "בינרי\tF8", IDM_VIEW_BIN, CHECKED
|
||||
MENUITEM "בינארי\tF8", IDM_VIEW_BIN, CHECKED
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Qword\tF12", IDM_VIEW_QWORD, CHECKED
|
||||
MENUITEM "Dword\tF2", IDM_VIEW_DWORD, CHECKED
|
||||
@@ -436,7 +432,7 @@ END
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_ANGLE_DEGREES "מעלות"
|
||||
IDS_ANGLE_GRADIANS "גרדיאנים"
|
||||
IDS_ANGLE_GRADIANS "Gradians"
|
||||
IDS_ANGLE_RADIANS "רדיאנים"
|
||||
END
|
||||
|
||||
@@ -497,15 +493,12 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "קורונה צ'כי"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "מארק גרמני"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "גילדר הולנדי"
|
||||
IDS_CURRENCY_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 "לטים לטבים"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "פרנק לוקסמבורגי"
|
||||
IDS_CURRENCY_MALTESE_LIRA "לירה מלטזי"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "אסקודו פורטגלי"
|
||||
|
@@ -499,15 +499,12 @@ 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,15 +491,12 @@ 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,15 +491,12 @@ 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 "ポルトガル エスクード"
|
||||
|
@@ -8,7 +8,7 @@ IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS 계산기"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
FONT 9, "굴림", 0, 0, 0x1
|
||||
FONT 9, "MS Shell Dlg", 0, 0, 0x1
|
||||
BEGIN
|
||||
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
|
||||
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
|
||||
@@ -156,7 +156,7 @@ IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS 계산기"
|
||||
MENU IDR_MENU_STANDARD
|
||||
FONT 9, "굴림", 0, 0, 0x1
|
||||
FONT 9, "MS Shell Dlg", 0, 0, 0x1
|
||||
BEGIN
|
||||
PUSHBUTTON "C", IDC_BUTTON_CANC, 123, 23, 41, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
@@ -221,7 +221,7 @@ IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS 계산기 정보"
|
||||
MENU IDR_MENU_STANDARD
|
||||
FONT 9, "굴림"
|
||||
FONT 9, "MS Shell Dlg"
|
||||
BEGIN
|
||||
PUSHBUTTON "Convert", IDC_BUTTON_CONVERT, 35, 105, 76, 17
|
||||
COMBOBOX IDC_COMBO_CATEGORY, 5, 31, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
|
||||
@@ -295,7 +295,7 @@ END
|
||||
IDD_DIALOG_STAT DIALOGEX 0, 0, 163, 85
|
||||
STYLE DS_SHELLFONT | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Statistics box"
|
||||
FONT 9, "굴림"
|
||||
FONT 9, "MS Shell Dlg"
|
||||
BEGIN
|
||||
LISTBOX IDC_LIST_STAT, 4, 4, 156, 40, LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "RET", IDC_BUTTON_RET, 4, 48, 36, 16
|
||||
@@ -493,15 +493,12 @@ 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,15 +491,12 @@ 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,15 +491,12 @@ 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,15 +500,12 @@ 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,15 +493,12 @@ 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,15 +496,12 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Coroană cehă"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Marcă nemțească"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Guilder olandez"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Coroană estoniană"
|
||||
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 "Lats leton"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Litas lituanian"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Franc luxemburghez"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Litră malteză"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Escudo portughez"
|
||||
|
@@ -491,15 +491,12 @@ BEGIN
|
||||
IDS_CURRENCY_CZECH_KORUNA "Чешская крона"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Немецкая марка"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Голландский гульден"
|
||||
IDS_CURRENCY_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 "Латвийский лат"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Литовский лит"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Люксембургский франк"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Мальтийская лира"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Португальское эскудо"
|
||||
|
@@ -498,15 +498,12 @@ 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,15 +495,12 @@ 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"
|
||||
|
@@ -299,7 +299,7 @@ END
|
||||
|
||||
IDD_DIALOG_STAT DIALOGEX 0, 0, 163, 85
|
||||
STYLE DS_SHELLFONT | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Statistikbox"
|
||||
CAPTION "Statistik box"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
BEGIN
|
||||
LISTBOX IDC_LIST_STAT, 4, 4, 156, 40, LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
|
||||
@@ -445,37 +445,37 @@ END
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_AREA_ACRES "Tunnland"
|
||||
IDS_AREA_ACRES_BRAZIL "Tunnland (Brasilien)"
|
||||
IDS_AREA_ACRES_FRANCE "Tunnland (Frankrike)"
|
||||
IDS_AREA_ACRES_SCOTS "Tunnland (Skottland)"
|
||||
IDS_AREA_ACRES_BRAZIL "Tunnland (Brasil)"
|
||||
IDS_AREA_ACRES_FRANCE "Tunnland (France)"
|
||||
IDS_AREA_ACRES_SCOTS "Tunnland (Scots)"
|
||||
IDS_AREA_ACRES_US "Tunnland (US)"
|
||||
IDS_AREA_ARES "Tunnland"
|
||||
IDS_AREA_CHOU "Chou"
|
||||
IDS_AREA_DANBO "Danbo"
|
||||
IDS_AREA_HECTARES "Hektar"
|
||||
IDS_AREA_JEONGBO "Jeongbo"
|
||||
IDS_AREA_MORGEN_HUNGARY "Morgen (Ungern)"
|
||||
IDS_AREA_MORGEN_HUNGARY "Morgen (Hungary)"
|
||||
IDS_AREA_MU "Mu"
|
||||
IDS_AREA_PING "Ping"
|
||||
IDS_AREA_PYEONG "Pyeong"
|
||||
IDS_AREA_PYEONGBANGJA "Pyeongbangja"
|
||||
IDS_AREA_RAI "Rai"
|
||||
IDS_AREA_SE "Se"
|
||||
IDS_AREA_SQUARE_CENTIMETERS "Kvadratcentimeter"
|
||||
IDS_AREA_SQUARE_CHR "Kvadrat-chr"
|
||||
IDS_AREA_SQUARE_FATHOMS "Kvadrat-fathoms"
|
||||
IDS_AREA_SQUARE_FATHOMS_HUNGARY "Kvadrat-fathoms (Ungern)"
|
||||
IDS_AREA_SQUARE_FEET "Kvadratfot"
|
||||
IDS_AREA_SQUARE_INCHES "Kvadrattum"
|
||||
IDS_AREA_SQUARE_KILOMETERS "Kvadratkilometer"
|
||||
IDS_AREA_SQUARE_CENTIMETERS "Kvadrat centimeter"
|
||||
IDS_AREA_SQUARE_CHR "Kvadrat chr"
|
||||
IDS_AREA_SQUARE_FATHOMS "Kvadrat fathoms"
|
||||
IDS_AREA_SQUARE_FATHOMS_HUNGARY "Kvadrat fathoms (Hungary)"
|
||||
IDS_AREA_SQUARE_FEET "Kvadrat fot"
|
||||
IDS_AREA_SQUARE_INCHES "Kvadrat tum"
|
||||
IDS_AREA_SQUARE_KILOMETERS "Kvadrat kilometer"
|
||||
IDS_AREA_SQUARE_LAR "kvadrat lar"
|
||||
IDS_AREA_SQUARE_METER "Kvadratmeter"
|
||||
IDS_AREA_SQUARE_MILES "Kvadratmil"
|
||||
IDS_AREA_SQUARE_MILLIMETERS "Kvadratmillimeter"
|
||||
IDS_AREA_SQUARE_SHAKU "Kvadrat-shaku"
|
||||
IDS_AREA_SQUARE_TSUEN "Kvadrat-tsuen"
|
||||
IDS_AREA_SQUARE_VA "Kvadrat-va"
|
||||
IDS_AREA_SQUARE_YARD "Kvadratisk imperieyard"
|
||||
IDS_AREA_SQUARE_METER "Kvadrat meter"
|
||||
IDS_AREA_SQUARE_MILES "Kvadrat mil"
|
||||
IDS_AREA_SQUARE_MILLIMETERS "Kvadrat millimeter"
|
||||
IDS_AREA_SQUARE_SHAKU "Kvadrat shaku"
|
||||
IDS_AREA_SQUARE_TSUEN "Kvadrat tsuen"
|
||||
IDS_AREA_SQUARE_VA "Kvadrat va"
|
||||
IDS_AREA_SQUARE_YARD "Kvadrat yard"
|
||||
IDS_AREA_TAN "Tan"
|
||||
IDS_AREA_TSUBO "Tsubo"
|
||||
END
|
||||
@@ -492,37 +492,34 @@ END
|
||||
/* Currencies */
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_CURRENCY_AUSTRIAN_SCHILLING "Österrikisk schilling"
|
||||
IDS_CURRENCY_AUSTRIAN_SCHILLING "Österriksk schilling"
|
||||
IDS_CURRENCY_BELGIAN_FRANC "Belgisk franc"
|
||||
IDS_CURRENCY_CYPRIOT_POUND "Cypriotisk pund"
|
||||
IDS_CURRENCY_CYPRIOT_POUND "Cypriotisk pound"
|
||||
IDS_CURRENCY_CZECH_KORUNA "Tjeckisk koruna"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Tysk mark"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Nederlänsk gulden"
|
||||
IDS_CURRENCY_ESTONIAN_KROON "Estländsk kroon"
|
||||
IDS_CURRENCY_DEUTSCHE_MARK "Tysk Mark"
|
||||
IDS_CURRENCY_DUTCH_GUILDER "Nederlänsk guilder"
|
||||
IDS_CURRENCY_EURO "Euro"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Finsk mark"
|
||||
IDS_CURRENCY_FINNISH_MARKKA "Finisk mark"
|
||||
IDS_CURRENCY_FRENCH_FRANC "Fransk franc"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Grekisk Drachma"
|
||||
IDS_CURRENCY_IRISH_POUND "Irländskt pund"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Italiensk lire"
|
||||
IDS_CURRENCY_LATVIAN_LATS "Lettisk lats"
|
||||
IDS_CURRENCY_LITHUANIAN_LITAS "Litauenisk litas"
|
||||
IDS_CURRENCY_GREEK_DRACHMA "Gresk Drachma"
|
||||
IDS_CURRENCY_IRISH_POUND "Irisk pound"
|
||||
IDS_CURRENCY_ITALIAN_LIRA "Italiask lire"
|
||||
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxembourg franc"
|
||||
IDS_CURRENCY_MALTESE_LIRA "Maltesisk lire"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portugisisk escudo"
|
||||
IDS_CURRENCY_SLOVAK_KORUNA "Slovakisk koruna"
|
||||
IDS_CURRENCY_SLOVENIAN_TOLAR "Slovensk tolar"
|
||||
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portogisisk escudo"
|
||||
IDS_CURRENCY_SLOVAK_KORUNA "Slovansk koruna"
|
||||
IDS_CURRENCY_SLOVENIAN_TOLAR "Slovenansk tolar"
|
||||
IDS_CURRENCY_SPANISH_PESETA "Spansk peseta"
|
||||
END
|
||||
|
||||
/* Energies */
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_ENERGY_15_C_CALORIES "15 °C kalorier"
|
||||
IDS_ENERGY_BTUS "Brittisk värme-enhet"
|
||||
IDS_ENERGY_15_C_CALORIES "15 °C calories"
|
||||
IDS_ENERGY_BTUS "Britisk värme-enhet"
|
||||
IDS_ENERGY_ERGS "Ergs"
|
||||
IDS_ENERGY_EVS "Elektron-Volt"
|
||||
IDS_ENERGY_FOOT_POUNDS "Fot-Pund"
|
||||
IDS_ENERGY_EVS "Electron-Volt"
|
||||
IDS_ENERGY_FOOT_POUNDS "Fot-Pound"
|
||||
IDS_ENERGY_IT_CALORIES "International Table calories"
|
||||
IDS_ENERGY_IT_KILOCALORIES "International Table kilocalories"
|
||||
IDS_ENERGY_JOULES "Joule"
|
||||
@@ -536,7 +533,7 @@ END
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_LENGTH_ANGSTROMS "Ångström"
|
||||
IDS_LENGTH_ASTRONOMICAL_UNITS "Astronomiska enheter"
|
||||
IDS_LENGTH_ASTRONOMICAL_UNITS "Astronomical units"
|
||||
IDS_LENGTH_BARLEYCORNS "Barleycorns"
|
||||
IDS_LENGTH_CENTIMETERS "Centimeter"
|
||||
IDS_LENGTH_CHAINS_UK "Chains (UK)"
|
||||
@@ -545,7 +542,7 @@ BEGIN
|
||||
IDS_LENGTH_CHR "Chr"
|
||||
IDS_LENGTH_CUN "Cun"
|
||||
IDS_LENGTH_FATHOMS "Fathoms"
|
||||
IDS_LENGTH_FATHOMS_HUNGARY "Fathoms (Ungern)"
|
||||
IDS_LENGTH_FATHOMS_HUNGARY "Fathoms (Ungarn)"
|
||||
IDS_LENGTH_FEET "Fot"
|
||||
IDS_LENGTH_FURLONGS "Furlongs"
|
||||
IDS_LENGTH_GAN "Gan"
|
||||
@@ -559,13 +556,13 @@ BEGIN
|
||||
IDS_LENGTH_KEUB "Keub"
|
||||
IDS_LENGTH_KILOMETERS "Kilometer"
|
||||
IDS_LENGTH_LAR "Lar"
|
||||
IDS_LENGTH_LIGHT_YEARS "Ljusår"
|
||||
IDS_LENGTH_LIGHT_YEARS "Ljus år"
|
||||
IDS_LENGTH_LINKS_UK "Linker (UK)"
|
||||
IDS_LENGTH_METERS "Meter"
|
||||
IDS_LENGTH_MICRONS "Micron"
|
||||
IDS_LENGTH_MILES "Mil"
|
||||
IDS_LENGTH_MILLIMETERS "Millimeter"
|
||||
IDS_LENGTH_NAUTICAL_MILES "Nautiska mil"
|
||||
IDS_LENGTH_NAUTICAL_MILES "Nautisk mil"
|
||||
IDS_LENGTH_NIEU "Nieu"
|
||||
IDS_LENGTH_PARSECS "Parsecs"
|
||||
IDS_LENGTH_PICAS "Picas"
|
||||
@@ -587,9 +584,9 @@ END
|
||||
/* Powers */
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_POWER_BTUS_PER_MINUTE "Brittisk värme-enhet per minut"
|
||||
IDS_POWER_BTUS_PER_MINUTE "Britisk värme-enhet per minut"
|
||||
IDS_POWER_FPS_PER_MINUTE "Fot-pund per minut"
|
||||
IDS_POWER_HORSEPOWER "Hästkrafter"
|
||||
IDS_POWER_HORSEPOWER "Hästekrafter"
|
||||
IDS_POWER_KILOWATTS "Kilowatt"
|
||||
IDS_POWER_MEGAWATTS "Megawatt"
|
||||
IDS_POWER_WATTS "Watt"
|
||||
@@ -600,11 +597,11 @@ STRINGTABLE
|
||||
BEGIN
|
||||
IDS_PRESSURE_ATMOSPHERES "Atmosfär"
|
||||
IDS_PRESSURE_BARS "Bar"
|
||||
IDS_PRESSURE_HECTOPASCALS "Hektopascal"
|
||||
IDS_PRESSURE_HECTOPASCALS "Hectopascal"
|
||||
IDS_PRESSURE_KILOPASCALS "Kilopascal"
|
||||
IDS_PRESSURE_MM_OF_MERCURY "Millimeter kvicksilver"
|
||||
IDS_PRESSURE_MM_OF_MERCURY "Millimeters kvicksilver"
|
||||
IDS_PRESSURE_PASCALS "Pascal"
|
||||
IDS_PRESSURE_PSI "Pund per kvadrattum"
|
||||
IDS_PRESSURE_PSI "Pond per kvadrattum"
|
||||
END
|
||||
|
||||
/* Temperatures */
|
||||
@@ -619,26 +616,26 @@ END
|
||||
/* Time */
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_TIME_DAYS "Dagar"
|
||||
IDS_TIME_HOURS "Timmar"
|
||||
IDS_TIME_NANOSECONDS "Nanosekunder"
|
||||
IDS_TIME_MICROSECONDS "Microsekunder"
|
||||
IDS_TIME_MILLISECONDS "Millisekunder"
|
||||
IDS_TIME_MINUTES "Minuter"
|
||||
IDS_TIME_SECONDS "Sekunder"
|
||||
IDS_TIME_WEEKS "Veckor"
|
||||
IDS_TIME_YEARS "År"
|
||||
IDS_TIME_DAYS "Days"
|
||||
IDS_TIME_HOURS "Hours"
|
||||
IDS_TIME_NANOSECONDS "Nanoseconds"
|
||||
IDS_TIME_MICROSECONDS "Microseconds"
|
||||
IDS_TIME_MILLISECONDS "Milliseconds"
|
||||
IDS_TIME_MINUTES "Minutes"
|
||||
IDS_TIME_SECONDS "Seconds"
|
||||
IDS_TIME_WEEKS "Weeks"
|
||||
IDS_TIME_YEARS "Years"
|
||||
END
|
||||
|
||||
/* Velocities */
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_VELOCITY_CMS_SECOND "Centimeter/timme"
|
||||
IDS_VELOCITY_CMS_SECOND "Centimeter/time"
|
||||
IDS_VELOCITY_FEET_HOUR "Fot/timme"
|
||||
IDS_VELOCITY_FEET_SECOND "Fot/sekund"
|
||||
IDS_VELOCITY_KILOMETERS_HOUR "Kilometer/timme"
|
||||
IDS_VELOCITY_KNOTS "Knop"
|
||||
IDS_VELOCITY_MACH "Machtal"
|
||||
IDS_VELOCITY_MACH "Mach"
|
||||
IDS_VELOCITY_METERS_SECOND "Meter/sekund"
|
||||
IDS_VELOCITY_MILES_HOUR "Mil/timme"
|
||||
END
|
||||
@@ -646,8 +643,8 @@ END
|
||||
/* Volumes */
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_VOLUME_BARRELS_UK "Fat (UK)"
|
||||
IDS_VOLUME_BARRELS_OIL "Fat (olja)"
|
||||
IDS_VOLUME_BARRELS_UK "Barrels (UK)"
|
||||
IDS_VOLUME_BARRELS_OIL "Barrels oil"
|
||||
IDS_VOLUME_BUN "Bun"
|
||||
IDS_VOLUME_BUSHELS_UK "Bushels (UK)"
|
||||
IDS_VOLUME_BUSHELS_US "Bushels (US)"
|
||||
@@ -655,7 +652,7 @@ BEGIN
|
||||
IDS_VOLUME_CUBIC_FEET "Kubikfot"
|
||||
IDS_VOLUME_CUBIC_INCHES "Kubiktumm"
|
||||
IDS_VOLUME_CUBIC_METERS "Kubikmeter"
|
||||
IDS_VOLUME_CUBIC_YARDS "Kubikyard"
|
||||
IDS_VOLUME_CUBIC_YARDS "Kubikyards"
|
||||
IDS_VOLUME_DOE "Doe"
|
||||
IDS_VOLUME_FLUID_OUNCES_UK "Fluid ounces (UK)"
|
||||
IDS_VOLUME_FLUID_OUNCES_US "Fluid ounces (US)"
|
||||
@@ -686,7 +683,7 @@ END
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_WEIGHT_BAHT "Baht"
|
||||
IDS_WEIGHT_CARATS "Karat"
|
||||
IDS_WEIGHT_CARATS "Carats"
|
||||
IDS_WEIGHT_CHUNG "Chung"
|
||||
IDS_WEIGHT_DON "Don"
|
||||
IDS_WEIGHT_GEUN "Geun"
|
||||
@@ -694,17 +691,17 @@ BEGIN
|
||||
IDS_WEIGHT_GWAN "Gwan"
|
||||
IDS_WEIGHT_HARB "Harb"
|
||||
IDS_WEIGHT_JIN_CHINA "Jin (Kina)"
|
||||
IDS_WEIGHT_JIN_TAIWAN "Jin (Taiwan)"
|
||||
IDS_WEIGHT_JIN_TAIWAN "Jin (Taiwaner)"
|
||||
IDS_WEIGHT_KAN "Kan"
|
||||
IDS_WEIGHT_KILOGRAMS "Kilogram"
|
||||
IDS_WEIGHT_KIN "Kin"
|
||||
IDS_WEIGHT_LIANG_CHINA "Liang (Kina)"
|
||||
IDS_WEIGHT_LIANG_TAIWAN "Liang (Taiwan)"
|
||||
IDS_WEIGHT_LIANG_TAIWAN "Liang (Taiwaner)"
|
||||
IDS_WEIGHT_MONME "Monme"
|
||||
IDS_WEIGHT_OUNCES_AVOIRDUPOIS "Ounces, avoirdupois"
|
||||
IDS_WEIGHT_OUNCES_TROY "Ounces, troy"
|
||||
IDS_WEIGHT_POUNDS "Pund"
|
||||
IDS_WEIGHT_QUINTAL_METRIC "Quintal (metrisk)"
|
||||
IDS_WEIGHT_QUINTAL_METRIC "Quintal (metric)"
|
||||
IDS_WEIGHT_SALOUNG "Saloung"
|
||||
IDS_WEIGHT_STONES "Sten"
|
||||
IDS_WEIGHT_TAMLUNG "Tamlung"
|
||||
|
@@ -491,15 +491,12 @@ 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"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
/* TRANSLATOR: 2013, 2014, 2016 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net) */
|
||||
/* TRANSLATOR: 2013, 2014, 2016 Erdem Ersoy (eersoy93) (erdemersoy@live.com) */
|
||||
|
||||
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
|
||||
|
||||
@@ -320,14 +320,14 @@ BEGIN
|
||||
MENUITEM "&Bilimlik", IDM_VIEW_SCIENTIFIC
|
||||
MENUITEM "&Dönüştürme", IDM_VIEW_CONVERSION
|
||||
MENUITEM SEPARATOR
|
||||
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 "&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 SEPARATOR
|
||||
MENUITEM "D&erece\tF2", IDM_VIEW_DEG, CHECKED
|
||||
MENUITEM "&Radyan\tF3", IDM_VIEW_RAD, CHECKED
|
||||
MENUITEM "&Gradyan\tF4", IDM_VIEW_GRAD, CHECKED
|
||||
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 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\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 "&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 SEPARATOR
|
||||
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 "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 SEPARATOR
|
||||
MENUITEM "B&asamakları Takımla", IDM_VIEW_GROUP, CHECKED
|
||||
END
|
||||
@@ -493,15 +493,12 @@ 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,15 +499,12 @@ 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 "Португальське ескудо"
|
||||
|
@@ -8,7 +8,7 @@ IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS 计算器"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
FONT 9, "宋体", 0, 0, 0x1
|
||||
FONT 9, "MS Shell Dlg", 0, 0, 0x1
|
||||
BEGIN
|
||||
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
|
||||
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
|
||||
@@ -156,7 +156,7 @@ IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS 计算器"
|
||||
MENU IDR_MENU_STANDARD
|
||||
FONT 9, "宋体", 0, 0, 0x1
|
||||
FONT 9, "MS Shell Dlg", 0, 0, 0x1
|
||||
BEGIN
|
||||
PUSHBUTTON "C", IDC_BUTTON_CANC, 123, 23, 41, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
@@ -221,7 +221,7 @@ IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS 计算器"
|
||||
MENU IDR_MENU_STANDARD
|
||||
FONT 9, "宋体"
|
||||
FONT 9, "MS Shell Dlg"
|
||||
BEGIN
|
||||
PUSHBUTTON "转换", IDC_BUTTON_CONVERT, 35, 105, 76, 17
|
||||
COMBOBOX IDC_COMBO_CATEGORY, 5, 31, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
|
||||
@@ -295,7 +295,7 @@ END
|
||||
IDD_DIALOG_STAT DIALOGEX 0, 0, 163, 85
|
||||
STYLE DS_SHELLFONT | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "统计框"
|
||||
FONT 9, "宋体"
|
||||
FONT 9, "MS Shell Dlg"
|
||||
BEGIN
|
||||
LISTBOX IDC_LIST_STAT, 4, 4, 156, 40, LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "返回", IDC_BUTTON_RET, 4, 48, 36, 16
|
||||
@@ -493,15 +493,12 @@ 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,21 +171,18 @@
|
||||
#define IDS_CURRENCY_CZECH_KORUNA 2403
|
||||
#define IDS_CURRENCY_DEUTSCHE_MARK 2404
|
||||
#define IDS_CURRENCY_DUTCH_GUILDER 2405
|
||||
#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
|
||||
#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
|
||||
|
||||
/* 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 limiter to result */
|
||||
/* apply final limitator 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 limiter to result */
|
||||
/* apply final limitator 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:
|
||||
/*
|
||||
* Modified from 17 to 16 for fixing this bug:
|
||||
* Modifed 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.
|
||||
@@ -19,13 +19,13 @@ void prepare_rpn_result_2(calc_number_t *rpn, TCHAR *buffer, int size, int base)
|
||||
#define MAX_LD_WIDTH 16
|
||||
/* calculate the width of integer number */
|
||||
width = (rpn->f==0) ? 1 : (int)log10(fabs(rpn->f))+1;
|
||||
if ((calc.sci_out != FALSE) || (width > MAX_LD_WIDTH) || (width < -MAX_LD_WIDTH))
|
||||
if (calc.sci_out == TRUE || width > MAX_LD_WIDTH || width < -MAX_LD_WIDTH)
|
||||
_stprintf(buffer, TEXT("%#e"), rpn->f);
|
||||
else {
|
||||
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 string ensures there is a '.': */
|
||||
/* format sring ensures there is a '.': */
|
||||
dst = _tcschr(buffer, TEXT('.'));
|
||||
while (--ptr > dst)
|
||||
if (*ptr != TEXT('0'))
|
||||
|
@@ -39,7 +39,7 @@ void prepare_rpn_result_2(calc_number_t *rpn, TCHAR *buffer, int size, int base)
|
||||
width = 1 + mpfr_get_si(t, MPFR_DEFAULT_RND);
|
||||
mpfr_clear(t);
|
||||
}
|
||||
if ((calc.sci_out != FALSE) || (width > max_ld_width) || (width < -max_ld_width))
|
||||
if (calc.sci_out == TRUE || width > max_ld_width || width < -max_ld_width)
|
||||
ptr = temp + gmp_sprintf(temp, "%*.*#Fe", 1, max_ld_width, ff);
|
||||
else {
|
||||
ptr = temp + gmp_sprintf(temp, "%#*.*Ff", width, ((max_ld_width-width-1)>=0) ? max_ld_width-width-1 : 0, ff);
|
||||
|
@@ -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, ukrainian.
|
||||
* Added new (partial) support for other languages: bulgarian, spanish, german, dutch, polish, russian, slovak, ukraianian.
|
||||
* 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,7 +4,6 @@
|
||||
#include <wingdi.h>
|
||||
#include <winreg.h>
|
||||
#include <shellapi.h>
|
||||
#include <commctrl.h>
|
||||
|
||||
#define HTMLHELP_PATH(_pt) TEXT("%systemroot%\\Help\\calc.chm::") TEXT(_pt)
|
||||
|
||||
@@ -213,8 +212,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|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_MP, MODIFIER_INV, 1, run_mp, run_mm, NULL, NULL, },
|
||||
{ IDC_BUTTON_MS, MODIFIER_INV, 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, },
|
||||
@@ -436,7 +435,7 @@ KeyboardHookProc(int nCode, WPARAM wParam, LPARAM lParam)
|
||||
static void update_lcd_display(HWND hwnd)
|
||||
{
|
||||
/*
|
||||
* multiply size of calc.buffer by 2 because it may
|
||||
* muliply 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'.
|
||||
*/
|
||||
@@ -934,18 +933,15 @@ static INT_PTR CALLBACK DlgStatProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static BOOL idm_2_idc(int idm, WPARAM *pIdc)
|
||||
static WPARAM idm_2_idc(int idm)
|
||||
{
|
||||
int x;
|
||||
|
||||
for (x=0; x<SIZEOF(upd); x++) {
|
||||
if (upd[x].idm == idm)
|
||||
{
|
||||
*pIdc = (WPARAM)(upd[x].idc);
|
||||
return TRUE;
|
||||
}
|
||||
break;
|
||||
}
|
||||
return FALSE;
|
||||
return (WPARAM)(upd[x].idc);
|
||||
}
|
||||
|
||||
static void CopyMemToClipboard(void *ptr)
|
||||
@@ -1144,7 +1140,7 @@ static void run_sqr(calc_number_t *number)
|
||||
|
||||
static void run_fe(calc_number_t *number)
|
||||
{
|
||||
calc.sci_out = ((calc.sci_out != FALSE) ? FALSE : TRUE);
|
||||
calc.sci_out = ((calc.sci_out == TRUE) ? FALSE : TRUE);
|
||||
}
|
||||
|
||||
static void handle_context_menu(HWND hWnd, WPARAM wp, LPARAM lp)
|
||||
@@ -1412,15 +1408,8 @@ 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:
|
||||
{
|
||||
WPARAM idc;
|
||||
if(idm_2_idc(LOWORD(wp), &idc))
|
||||
{
|
||||
SendMessage(hWnd, WM_COMMAND, idc, 0);
|
||||
return TRUE;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
SendMessage(hWnd, WM_COMMAND, idm_2_idc(LOWORD(wp)), 0);
|
||||
return TRUE;
|
||||
case IDM_EDIT_COPY:
|
||||
handle_copy_command(hWnd);
|
||||
return TRUE;
|
||||
@@ -1786,8 +1775,6 @@ int WINAPI _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdL
|
||||
MSG msg;
|
||||
DWORD dwLayout;
|
||||
|
||||
InitCommonControls();
|
||||
|
||||
calc.hInstance = hInstance;
|
||||
|
||||
calc.x_coord = -1;
|
||||
|
@@ -11,7 +11,6 @@
|
||||
|
||||
#include <commctrl.h>
|
||||
#include <richedit.h>
|
||||
#include <winnls.h>
|
||||
|
||||
#define REMOVE_ADVANCED
|
||||
|
||||
@@ -440,9 +439,8 @@ AdvancedDlgProc(HWND hDlg,
|
||||
return FALSE;
|
||||
}
|
||||
#endif
|
||||
|
||||
static int
|
||||
PanelOnCreate(HWND hWnd, WPARAM wParam, LPARAM lParam)
|
||||
OnCreate(HWND hWnd, WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
HMENU hSysMenu;
|
||||
WCHAR lpAboutText[256];
|
||||
@@ -490,7 +488,7 @@ PanelWndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
switch (msg) {
|
||||
case WM_CREATE:
|
||||
return PanelOnCreate(hWnd, wParam, lParam);
|
||||
return OnCreate(hWnd, wParam, lParam);
|
||||
|
||||
case WM_CLOSE:
|
||||
DestroyWindow(hWnd);
|
||||
@@ -594,17 +592,6 @@ wWinMain(HINSTANCE hInst,
|
||||
HINSTANCE hGetUName = NULL;
|
||||
|
||||
hInstance = hInst;
|
||||
|
||||
/* Mirroring code for the titlebar */
|
||||
switch (GetUserDefaultUILanguage())
|
||||
{
|
||||
case MAKELANGID(LANG_HEBREW, SUBLANG_DEFAULT):
|
||||
SetProcessDefaultLayout(LAYOUT_RTL);
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
iccx.dwSize = sizeof(INITCOMMONCONTROLSEX);
|
||||
iccx.dwICC = ICC_TAB_CLASSES;
|
||||
|
@@ -4,7 +4,6 @@ LANGUAGE LANG_HEBREW, SUBLANG_DEFAULT
|
||||
IDD_CHARMAP DIALOGEX 6, 6, 292, 224
|
||||
FONT 8, "MS Shell Dlg", 0, 0
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
|
||||
EXSTYLE WS_EX_LAYOUTRTL
|
||||
BEGIN
|
||||
LTEXT "גופן", IDC_STATIC, 6, 7, 24, 9
|
||||
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
|
||||
@@ -23,7 +22,6 @@ END
|
||||
|
||||
IDD_ADVANCED DIALOGEX 0, 0, 292, 64
|
||||
STYLE DS_SHELLFONT | WS_CHILD
|
||||
EXSTYLE WS_EX_LAYOUTRTL
|
||||
FONT 8, "MS Shell Dlg"
|
||||
BEGIN
|
||||
LTEXT "ערכת תווים:", IDC_STATIC, 8, 8, 48, 8
|
||||
@@ -41,7 +39,6 @@ IDD_ABOUTBOX DIALOGEX 22, 16, 210, 182
|
||||
CAPTION "אודות מפת תווים"
|
||||
FONT 8, "MS Shell Dlg", 0, 0
|
||||
STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
||||
EXSTYLE WS_EX_LAYOUTRTL
|
||||
BEGIN
|
||||
LTEXT "Character Map v0.1\nCopyright (C) 2007 Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 150, 36
|
||||
PUSHBUTTON "סגור", IDOK, 75, 162, 44, 15
|
||||
|
@@ -35,7 +35,7 @@ BEGIN
|
||||
END
|
||||
|
||||
IDD_ABOUTBOX DIALOGEX 22, 16, 210, 182
|
||||
CAPTION "Informazioni su Mappa Caratteri"
|
||||
CAPTION "Informazioni su Character Map"
|
||||
FONT 8, "MS Shell Dlg", 0, 0
|
||||
STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
||||
BEGIN
|
||||
|
@@ -5,7 +5,7 @@
|
||||
LANGUAGE LANG_KOREAN, SUBLANG_DEFAULT
|
||||
|
||||
IDD_CHARMAP DIALOGEX 6, 6, 292, 224
|
||||
FONT 9, "굴림", 0, 0
|
||||
FONT 9, "MS Shell Dlg", 0, 0
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
|
||||
BEGIN
|
||||
LTEXT "글꼴:", IDC_STATIC, 6, 7, 24, 9
|
||||
@@ -25,7 +25,7 @@ END
|
||||
|
||||
IDD_ADVANCED DIALOGEX 0, 0, 292, 64
|
||||
STYLE DS_SHELLFONT | WS_CHILD
|
||||
FONT 9, "굴림"
|
||||
FONT 9, "MS Shell Dlg"
|
||||
BEGIN
|
||||
LTEXT "Charset:", IDC_STATIC, 8, 8, 48, 8
|
||||
COMBOBOX IDC_COMBO_CHARSET, 72, 4, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
|
||||
@@ -40,7 +40,7 @@ END
|
||||
|
||||
IDD_ABOUTBOX DIALOGEX 22, 16, 210, 182
|
||||
CAPTION "문자표에 대하여"
|
||||
FONT 9, "굴림", 0, 0
|
||||
FONT 9, "MS Shell Dlg", 0, 0
|
||||
STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
||||
BEGIN
|
||||
LTEXT "Character Map v0.1\nCopyright (C) 2007 Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 150, 36
|
||||
|
@@ -22,7 +22,7 @@ BEGIN
|
||||
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
|
||||
DEFPUSHBUTTON "Välj", IDC_SELECT, 194, 186, 44, 13
|
||||
PUSHBUTTON "Kopiera", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
|
||||
CONTROL "Avancerad visning",IDC_CHECK_ADVANCED, "Button", BS_AUTOCHECKBOX |
|
||||
CONTROL "Avansert visning",IDC_CHECK_ADVANCED, "Button", BS_AUTOCHECKBOX |
|
||||
WS_TABSTOP, 8, 208, 95, 10
|
||||
END
|
||||
|
||||
@@ -30,13 +30,13 @@ IDD_ADVANCED DIALOGEX 0, 0, 292, 64
|
||||
STYLE DS_SHELLFONT | WS_CHILD
|
||||
FONT 8, "MS Shell Dlg"
|
||||
BEGIN
|
||||
LTEXT "Teckenuppsättning:", IDC_STATIC, 8, 8, 48, 8
|
||||
LTEXT "Charset:", IDC_STATIC, 8, 8, 48, 8
|
||||
COMBOBOX IDC_COMBO_CHARSET, 72, 4, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Gruppera efter:", IDC_STATIC, 8, 28, 50, 8
|
||||
LTEXT "Group by:", IDC_STATIC, 8, 28, 50, 8
|
||||
COMBOBOX IDC_COMBO_GROUPBY, 72, 24, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
|
||||
PUSHBUTTON "Sök", IDC_BUTTON_SEARCH, 200, 44, 50, 14
|
||||
PUSHBUTTON "Search", IDC_BUTTON_SEARCH, 200, 44, 50, 14
|
||||
EDITTEXT IDC_EDIT_SEARCH, 72, 44, 116, 14, ES_AUTOHSCROLL
|
||||
LTEXT "Sök efter:", IDC_STATIC, 8, 48, 42, 8
|
||||
LTEXT "Search for:", IDC_STATIC, 8, 48, 42, 8
|
||||
LTEXT "Unicode:", IDC_STATIC, 200, 8, 30, 8
|
||||
EDITTEXT IDC_EDIT_UNICODE, 236, 4, 28, 12, ES_AUTOHSCROLL
|
||||
END
|
||||
|
@@ -1,4 +1,4 @@
|
||||
/* TRANSLATOR: 2013, 2014 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net) */
|
||||
/* TRANSLATOR: 2013, 2014 Erdem Ersoy (eersoy93) (erdemersoy@live.com) */
|
||||
|
||||
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
|
||||
|
||||
|
@@ -9,7 +9,7 @@
|
||||
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
|
||||
|
||||
IDD_CHARMAP DIALOGEX 6, 6, 292, 224
|
||||
FONT 9, "宋体", 0, 0
|
||||
FONT 9, "MS Shell Dlg", 0, 0
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
|
||||
BEGIN
|
||||
LTEXT "字体:", IDC_STATIC, 6, 7, 24, 9
|
||||
@@ -29,7 +29,7 @@ END
|
||||
|
||||
IDD_ADVANCED DIALOGEX 0, 0, 292, 64
|
||||
STYLE DS_SHELLFONT | WS_CHILD
|
||||
FONT 9, "宋体"
|
||||
FONT 9, "MS Shell Dlg"
|
||||
BEGIN
|
||||
LTEXT "字符集:", IDC_STATIC, 8, 8, 48, 8
|
||||
COMBOBOX IDC_COMBO_CHARSET, 72, 4, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
|
||||
@@ -44,7 +44,7 @@ END
|
||||
|
||||
IDD_ABOUTBOX DIALOGEX 22, 16, 210, 182
|
||||
CAPTION "关于字符映射表"
|
||||
FONT 9, "宋体", 0, 0
|
||||
FONT 9, "MS Shell Dlg", 0, 0
|
||||
STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
||||
BEGIN
|
||||
LTEXT "字符映射表 v0.1\nCopyright (C) 2007 Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 150, 36
|
||||
|
@@ -9,7 +9,7 @@
|
||||
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL
|
||||
|
||||
IDD_CHARMAP DIALOGEX 6, 6, 292, 224
|
||||
FONT 9, "新細明體", 0, 0
|
||||
FONT 9, "MS Shell Dlg", 0, 0
|
||||
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
|
||||
BEGIN
|
||||
LTEXT "字體:", IDC_STATIC, 6, 7, 24, 9
|
||||
@@ -29,7 +29,7 @@ END
|
||||
|
||||
IDD_ADVANCED DIALOGEX 0, 0, 292, 64
|
||||
STYLE DS_SHELLFONT | WS_CHILD
|
||||
FONT 9, "新細明體"
|
||||
FONT 9, "MS Shell Dlg"
|
||||
BEGIN
|
||||
LTEXT "字元集:", IDC_STATIC, 8, 8, 48, 8
|
||||
COMBOBOX IDC_COMBO_CHARSET, 72, 4, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
|
||||
@@ -44,7 +44,7 @@ END
|
||||
|
||||
IDD_ABOUTBOX DIALOGEX 22, 16, 210, 182
|
||||
CAPTION "關於字元對應表"
|
||||
FONT 9, "新細明體", 0, 0
|
||||
FONT 9, "MS Shell Dlg", 0, 0
|
||||
STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
||||
BEGIN
|
||||
LTEXT "字元對應表 v0.1\nCopyright (C) 2007 Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 150, 36
|
||||
|
@@ -376,9 +376,9 @@ OnClick(PMAP infoPtr,
|
||||
|
||||
static
|
||||
BOOL
|
||||
MapOnCreate(PMAP infoPtr,
|
||||
HWND hwnd,
|
||||
HWND hParent)
|
||||
OnCreate(PMAP infoPtr,
|
||||
HWND hwnd,
|
||||
HWND hParent)
|
||||
{
|
||||
RECT rc;
|
||||
BOOL Ret = FALSE;
|
||||
@@ -558,9 +558,9 @@ MapWndProc(HWND hwnd,
|
||||
{
|
||||
case WM_CREATE:
|
||||
{
|
||||
if (!MapOnCreate(infoPtr,
|
||||
hwnd,
|
||||
((LPCREATESTRUCTW)lParam)->hwndParent))
|
||||
if (!OnCreate(infoPtr,
|
||||
hwnd,
|
||||
((LPCREATESTRUCTW)lParam)->hwndParent))
|
||||
{
|
||||
return (LRESULT)-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 dwAdvancedChecked;
|
||||
DWORD dwAdvanChecked;
|
||||
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)&dwAdvancedChecked, &size);
|
||||
RegQueryValueEx(hKey, _T("Advanced"), NULL, &type, (LPBYTE)&dwAdvanChecked, &size);
|
||||
|
||||
if(dwAdvancedChecked != FALSE)
|
||||
if(dwAdvanChecked == TRUE)
|
||||
SendDlgItemMessage(hCharmapDlg, IDC_CHECK_ADVANCED, BM_CLICK, MF_CHECKED, 0);
|
||||
|
||||
RegCloseKey(hKey);
|
||||
|
@@ -69,7 +69,7 @@ CGridView::SetFont(
|
||||
)
|
||||
{
|
||||
|
||||
// Create a temporary container for the new font
|
||||
// Create a temperary 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 obviously can't draw on. GetClientRect gives us
|
||||
// a scrollbar which we obvioulsy 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,7 +1,8 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Character Map
|
||||
* PROJECT: ReactOS Device Managment
|
||||
* LICENSE: GPL - See COPYING in the top level directory
|
||||
* FILE: base/applications/charmap/charmap.cpp
|
||||
* FILE: base/applications/mscutils/devmgmt/devmgmt.c
|
||||
* PURPOSE: Bootstrap for the device manager
|
||||
* COPYRIGHT: Copyright 2006 Ged Murphy <gedmurphy@gmail.com>
|
||||
*/
|
||||
|
||||
|
@@ -19,83 +19,83 @@ IDI_ICON ICON "res/charmap.ico"
|
||||
#pragma code_page(65001)
|
||||
|
||||
#ifdef LANGUAGE_BG_BG
|
||||
#include "lang/bg-BG.rc"
|
||||
#include "lang/bg-BG.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_CA_ES
|
||||
#include "lang/ca-ES.rc"
|
||||
#include "lang/ca-ES.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_CS_CZ
|
||||
#include "lang/cs-CZ.rc"
|
||||
#include "lang/cs-CZ.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_DE_DE
|
||||
#include "lang/de-DE.rc"
|
||||
#include "lang/de-DE.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_EN_US
|
||||
#include "lang/en-US.rc"
|
||||
#include "lang/en-US.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_EL_GR
|
||||
#include "lang/el-GR.rc"
|
||||
#include "lang/el-GR.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_ES_ES
|
||||
#include "lang/es-ES.rc"
|
||||
#include "lang/es-ES.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_FR_FR
|
||||
#include "lang/fr-FR.rc"
|
||||
#include "lang/fr-FR.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_HE_IL
|
||||
#include "lang/he-IL.rc"
|
||||
#include "lang/he-IL.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_ID_ID
|
||||
#include "lang/id-ID.rc"
|
||||
#include "lang/id-ID.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_IT_IT
|
||||
#include "lang/it-IT.rc"
|
||||
#include "lang/it-IT.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_JA_JP
|
||||
#include "lang/ja-JP.rc"
|
||||
#include "lang/ja-JP.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_KO_KR
|
||||
#include "lang/ko-KR.rc"
|
||||
#include "lang/ko-KR.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_LT_LT
|
||||
#include "lang/lt-LT.rc"
|
||||
#include "lang/lt-LT.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_NL_NL
|
||||
#include "lang/nl-NL.rc"
|
||||
#include "lang/nl-NL.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_NB_NO
|
||||
#include "lang/no-NO.rc"
|
||||
#include "lang/no-NO.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_PL_PL
|
||||
#include "lang/pl-PL.rc"
|
||||
#include "lang/pl-PL.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_PT_BR
|
||||
#include "lang/pt-BR.rc"
|
||||
#include "lang/pt-BR.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_RO_RO
|
||||
#include "lang/ro-RO.rc"
|
||||
#include "lang/ro-RO.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_RU_RU
|
||||
#include "lang/ru-RU.rc"
|
||||
#include "lang/ru-RU.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_SK_SK
|
||||
#include "lang/sk-SK.rc"
|
||||
#include "lang/sk-SK.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_SQ_AL
|
||||
#include "lang/sq-AL.rc"
|
||||
#include "lang/sq-AL.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_SV_SE
|
||||
#include "lang/sv-SE.rc"
|
||||
#include "lang/sv-SE.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_TR_TR
|
||||
#include "lang/tr-TR.rc"
|
||||
#include "lang/tr-TR.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_UK_UA
|
||||
#include "lang/uk-UA.rc"
|
||||
#include "lang/uk-UA.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_ZH_CN
|
||||
#include "lang/zh-CN.rc"
|
||||
#include "lang/zh-CN.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_ZH_TW
|
||||
#include "lang/zh-TW.rc"
|
||||
#include "lang/zh-TW.rc"
|
||||
#endif
|
||||
|
@@ -7,7 +7,7 @@ CAPTION "ReactOS Character Map"
|
||||
BEGIN
|
||||
LTEXT "Font:", IDC_STATIC, 6, 7, 24, 9
|
||||
COMBOBOX IDC_FONTCOMBO, 28, 5, 150, 210, WS_CHILD | WS_VISIBLE |
|
||||
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
|
||||
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
|
||||
LTEXT "Characters to copy:", IDC_STATIC, 6, 188, 66, 9
|
||||
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
|
||||
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
|
||||
|
@@ -1,29 +0,0 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Character Map
|
||||
* LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
|
||||
* PURPOSE: Italian Translation for ReactOS Character Map
|
||||
* COPYRIGHT: Bișoc George (fraizeraust99@gmail.com)
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
|
||||
|
||||
IDD_CHARMAP DIALOGEX 6, 6, 290, 224
|
||||
FONT 8, "MS Shell Dlg", 0, 0
|
||||
STYLE WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX | WS_SIZEBOX
|
||||
CAPTION "Mappa Caratteri di ReactOS"
|
||||
BEGIN
|
||||
LTEXT "Font:", IDC_STATIC, 6, 7, 24, 9
|
||||
COMBOBOX IDC_FONTCOMBO, 28, 5, 150, 210, WS_CHILD | WS_VISIBLE |
|
||||
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
|
||||
LTEXT "Caratteri da copiare:", IDC_STATIC, 6, 188, 66, 9
|
||||
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
|
||||
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
|
||||
DEFPUSHBUTTON "Selezionare", IDC_SELECT, 194, 186, 44, 13
|
||||
PUSHBUTTON "Copiare", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_ABOUT "&Informazioni su…"
|
||||
IDS_TITLE "Mappa caratteri"
|
||||
END
|
@@ -1,22 +0,0 @@
|
||||
LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
|
||||
|
||||
IDD_CHARMAP DIALOGEX 6, 6, 290, 224
|
||||
FONT 8, "MS Shell Dlg", 0, 0
|
||||
STYLE WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX | WS_SIZEBOX
|
||||
CAPTION "Tablica znaków ReactOS"
|
||||
BEGIN
|
||||
LTEXT "Czcionka:", IDC_STATIC, 6, 7, 24, 9
|
||||
COMBOBOX IDC_FONTCOMBO, 28, 5, 150, 210, WS_CHILD | WS_VISIBLE |
|
||||
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
|
||||
LTEXT "Znaki do skopiowania:", IDC_STATIC, 6, 188, 66, 9
|
||||
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
|
||||
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
|
||||
DEFPUSHBUTTON "Wybierz", IDC_SELECT, 194, 186, 44, 13
|
||||
PUSHBUTTON "Kopiuj", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_ABOUT "&Informacje..."
|
||||
IDS_TITLE "Tablica znaków"
|
||||
END
|
@@ -1,29 +0,0 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Character Map
|
||||
* LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
|
||||
* PURPOSE: Romanian Translation for ReactOS Character Map
|
||||
* COPYRIGHT: Bișoc George (fraizeraust99@gmail.com)
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
|
||||
|
||||
IDD_CHARMAP DIALOGEX 6, 6, 290, 224
|
||||
FONT 8, "MS Shell Dlg", 0, 0
|
||||
STYLE WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX | WS_SIZEBOX
|
||||
CAPTION "Hartă de caractere de ReactOS"
|
||||
BEGIN
|
||||
LTEXT "Font:", IDC_STATIC, 6, 7, 24, 9
|
||||
COMBOBOX IDC_FONTCOMBO, 28, 5, 150, 210, WS_CHILD | WS_VISIBLE |
|
||||
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
|
||||
LTEXT "Caractere de copiat:", IDC_STATIC, 6, 188, 66, 9
|
||||
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
|
||||
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
|
||||
DEFPUSHBUTTON "Selectează", IDC_SELECT, 194, 186, 44, 13
|
||||
PUSHBUTTON "Copiază", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_ABOUT "&Despre…"
|
||||
IDS_TITLE "Hartă de caractere"
|
||||
END
|
@@ -1,4 +1,4 @@
|
||||
/* TRANSLATOR: 2015 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net) */
|
||||
/* TRANSLATOR: 2015 Erdem Ersoy (eersoy93) (erdemersoy@live.com) */
|
||||
|
||||
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
|
||||
|
||||
@@ -9,7 +9,7 @@ CAPTION "ReactOS Damga Eşlemi"
|
||||
BEGIN
|
||||
LTEXT "Yazı Tipi:", IDC_STATIC, 6, 7, 24, 9
|
||||
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
|
||||
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
|
||||
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
|
||||
LTEXT "Çoğaltılacak Damgalar:", IDC_STATIC, 6, 188, 66, 9
|
||||
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
|
||||
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
|
||||
|
@@ -1,22 +0,0 @@
|
||||
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
|
||||
|
||||
IDD_CHARMAP DIALOGEX 6, 6, 290, 224
|
||||
FONT 9, "宋体", 0, 0
|
||||
STYLE WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX | WS_SIZEBOX
|
||||
CAPTION "ReactOS 字符映射表"
|
||||
BEGIN
|
||||
LTEXT "字体:", IDC_STATIC, 6, 7, 24, 9
|
||||
COMBOBOX IDC_FONTCOMBO, 28, 5, 150, 210, WS_CHILD | WS_VISIBLE |
|
||||
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
|
||||
LTEXT "待复制的字符:", IDC_STATIC, 6, 188, 66, 9
|
||||
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
|
||||
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
|
||||
DEFPUSHBUTTON "选择", IDC_SELECT, 194, 186, 44, 13
|
||||
PUSHBUTTON "复制", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_ABOUT "关于(&B)..."
|
||||
IDS_TITLE "字符映射表"
|
||||
END
|
@@ -538,16 +538,6 @@ int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLi
|
||||
wndclass.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1);
|
||||
wndclass.lpszMenuName = MAKEINTRESOURCEW(MAIN_MENU);
|
||||
wndclass.lpszClassName = szClassName;
|
||||
|
||||
switch (GetUserDefaultUILanguage())
|
||||
{
|
||||
case MAKELANGID(LANG_HEBREW, SUBLANG_DEFAULT):
|
||||
SetProcessDefaultLayout(LAYOUT_RTL);
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
if (!RegisterClassExW(&wndclass))
|
||||
{
|
||||
|
@@ -16,9 +16,6 @@ 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
|
||||
@@ -31,15 +28,6 @@ CLPFILE_ICON ICON "res/clpfile.ico"
|
||||
#ifdef LANGUAGE_FR_FR
|
||||
#include "lang/fr-FR.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_HE_IL
|
||||
#include "lang/he-IL.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_IT_IT
|
||||
#include "lang/it-IT.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_PL_PL
|
||||
#include "lang/pl-PL.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_RO_RO
|
||||
#include "lang/ro-RO.rc"
|
||||
#endif
|
||||
|
@@ -1,65 +0,0 @@
|
||||
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
|
||||
|
@@ -1,65 +0,0 @@
|
||||
LANGUAGE LANG_HEBREW, SUBLANG_DEFAULT
|
||||
|
||||
ID_ACCEL ACCELERATORS
|
||||
BEGIN
|
||||
VK_DELETE, CMD_DELETE, VIRTKEY
|
||||
END
|
||||
|
||||
MAIN_MENU MENU
|
||||
BEGIN
|
||||
POPUP "&קובץ"
|
||||
BEGIN
|
||||
MENUITEM "&פתיחה...", CMD_OPEN
|
||||
MENUITEM "&שמירה בשם...", CMD_SAVE_AS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&יציאה", CMD_EXIT
|
||||
END
|
||||
POPUP "&עריכה"
|
||||
BEGIN
|
||||
MENUITEM "&מחק\tDel", CMD_DELETE
|
||||
END
|
||||
POPUP "&תצוגה"
|
||||
BEGIN
|
||||
MENUITEM "&אוטומטי", CMD_AUTOMATIC
|
||||
END
|
||||
POPUP "ע&זרה"
|
||||
BEGIN
|
||||
MENUITEM "&נושאי עזרה", CMD_HELP
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&אודות", CMD_ABOUT
|
||||
END
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
STRING_CLIPBOARD "צופה לוח גזירה"
|
||||
STRING_CLIPFILE "Clipboard Element"
|
||||
STRING_DELETE_MSG "לנקות את לוח הגזירה?"
|
||||
STRING_DELETE_TITLE "ניקוי לוח גזירה"
|
||||
STRING_FORMAT_NT "קבצי לוח גזירה של ReactOS (*.clp)"
|
||||
STRING_FORMAT_GEN "קבצי לוח גזירה (*.clp)"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
STRING_CF_UNKNOWN "תבנית לא ידועה"
|
||||
STRING_CF_TEXT "טקסט"
|
||||
STRING_CF_BITMAP "מפת סיבים"
|
||||
STRING_CF_OEMTEXT "טקסט OEM"
|
||||
STRING_CF_UNICODETEXT "טקסט יוניקוד"
|
||||
STRING_CF_DIB "DIB Bitmap"
|
||||
STRING_CF_LOCALE "Locale Data"
|
||||
STRING_CF_ENHMETAFILE "Enhanced Metafile"
|
||||
STRING_CF_METAFILEPICT "Metafile"
|
||||
STRING_CF_PALETTE "ערכת צבעים"
|
||||
STRING_CF_DIBV5 "DIB Bitmap (Version 5)"
|
||||
STRING_CF_SYLK "Symbolic Link Format"
|
||||
STRING_CF_DIF "Data Interchange Format"
|
||||
STRING_CF_HDROP "Drop Data"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
ERROR_UNSUPPORTED_FORMAT "לוח הגזירה מכיל נתונים בתבנית שלא ניתנת להצגה."
|
||||
ERROR_INVALID_FILE_FORMAT "הקובץ אינו קובץ לוח גזירה תקין."
|
||||
END
|
@@ -1,72 +0,0 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Clipboard Viewer
|
||||
* LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
|
||||
* PURPOSE: Implementation of Italian language for Clipboard Viewer
|
||||
* COPYRIGHT: Copyright 2018 Bișoc George (fraizeraust99 at gmail dot com)
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
|
||||
|
||||
ID_ACCEL ACCELERATORS
|
||||
BEGIN
|
||||
VK_DELETE, CMD_DELETE, VIRTKEY
|
||||
END
|
||||
|
||||
MAIN_MENU MENU
|
||||
BEGIN
|
||||
POPUP "&File"
|
||||
BEGIN
|
||||
MENUITEM "&Apri...", CMD_OPEN
|
||||
MENUITEM "Salva &Come...", CMD_SAVE_AS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "U&scire", CMD_EXIT
|
||||
END
|
||||
POPUP "&Modifica"
|
||||
BEGIN
|
||||
MENUITEM "&Cancella\tDel", CMD_DELETE
|
||||
END
|
||||
POPUP "&Display"
|
||||
BEGIN
|
||||
MENUITEM "&Automatico", CMD_AUTOMATIC
|
||||
END
|
||||
POPUP "&Aiuto"
|
||||
BEGIN
|
||||
MENUITEM "&Argomenti Guida", CMD_HELP
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Informazioni", CMD_ABOUT
|
||||
END
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
STRING_CLIPBOARD "Visualizzatore di Clipboard"
|
||||
STRING_CLIPFILE "Elemento Clipboard"
|
||||
STRING_DELETE_MSG "Cancella i contenuti del Clipboard?"
|
||||
STRING_DELETE_TITLE "Cancella Clipboard"
|
||||
STRING_FORMAT_NT "I file del Clipboard di ReactOS (*.clp)"
|
||||
STRING_FORMAT_GEN "I file Clipboard (*.clp)"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
STRING_CF_UNKNOWN "Formato Sconosciuto"
|
||||
STRING_CF_TEXT "Testo"
|
||||
STRING_CF_BITMAP "Bitmap"
|
||||
STRING_CF_OEMTEXT "Testo OEM"
|
||||
STRING_CF_UNICODETEXT "Testo Unicode"
|
||||
STRING_CF_DIB "DIB Bitmap"
|
||||
STRING_CF_LOCALE "Data Locale"
|
||||
STRING_CF_ENHMETAFILE "Metafile Arricchito"
|
||||
STRING_CF_METAFILEPICT "Metafile"
|
||||
STRING_CF_PALETTE "Palette di Colori"
|
||||
STRING_CF_DIBV5 "DIB Bitmap (Versione 5)"
|
||||
STRING_CF_SYLK "Formato a Collegamento Simbolico"
|
||||
STRING_CF_DIF "Formato di Data di Interscambio"
|
||||
STRING_CF_HDROP "Abbandona le Informazioni"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
ERROR_UNSUPPORTED_FORMAT "Il Clipboard contiene informazioni in formato data, che non può essere visualizzato."
|
||||
ERROR_INVALID_FILE_FORMAT "Il file selezionato non è un file di tipo clipboard valido."
|
||||
END
|
@@ -1,65 +0,0 @@
|
||||
LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
|
||||
|
||||
ID_ACCEL ACCELERATORS
|
||||
BEGIN
|
||||
VK_DELETE, CMD_DELETE, VIRTKEY
|
||||
END
|
||||
|
||||
MAIN_MENU MENU
|
||||
BEGIN
|
||||
POPUP "&Plik"
|
||||
BEGIN
|
||||
MENUITEM "&Otwórz...", CMD_OPEN
|
||||
MENUITEM "Zapisz &jako...", CMD_SAVE_AS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Za&kończ", CMD_EXIT
|
||||
END
|
||||
POPUP "&Edycja"
|
||||
BEGIN
|
||||
MENUITEM "&Usuń\tDel", CMD_DELETE
|
||||
END
|
||||
POPUP "&Widok"
|
||||
BEGIN
|
||||
MENUITEM "&Automatycznie", CMD_AUTOMATIC
|
||||
END
|
||||
POPUP "&Pomoc"
|
||||
BEGIN
|
||||
MENUITEM "&Tematy Pomocy", CMD_HELP
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Informacje", CMD_ABOUT
|
||||
END
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
STRING_CLIPBOARD "Podgląd Wieloschowka"
|
||||
STRING_CLIPFILE "Element Wieloschowka"
|
||||
STRING_DELETE_MSG "Czy chcesz wyczyścić zawartość Schowka?"
|
||||
STRING_DELETE_TITLE "Wyczyść Schowek"
|
||||
STRING_FORMAT_NT "Pliki Schowka NT (*.clp)"
|
||||
STRING_FORMAT_GEN "Pliki Schowka (*.clp)"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
STRING_CF_UNKNOWN "Unknown Format"
|
||||
STRING_CF_TEXT "Text"
|
||||
STRING_CF_BITMAP "Bitmap"
|
||||
STRING_CF_OEMTEXT "OEM Text"
|
||||
STRING_CF_UNICODETEXT "Unicode Text"
|
||||
STRING_CF_DIB "DIB Bitmap"
|
||||
STRING_CF_LOCALE "Locale Data"
|
||||
STRING_CF_ENHMETAFILE "Enhanced Metafile"
|
||||
STRING_CF_METAFILEPICT "Metafile"
|
||||
STRING_CF_PALETTE "Color Palette"
|
||||
STRING_CF_DIBV5 "DIB Bitmap (Version 5)"
|
||||
STRING_CF_SYLK "Symbolic Link Format"
|
||||
STRING_CF_DIF "Data Interchange Format"
|
||||
STRING_CF_HDROP "Drop Data"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
ERROR_UNSUPPORTED_FORMAT "Schowek zawiera dane w formacie, w którym nie mogą być wyświetlone."
|
||||
ERROR_INVALID_FILE_FORMAT "Wybrany plik nie jest prawidłowym plikiem Schowka."
|
||||
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 "Языковые данные"
|
||||
STRING_CF_ENHMETAFILE "Расширенный метафайл"
|
||||
STRING_CF_METAFILEPICT "Метафайл"
|
||||
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_PALETTE "Цветовая палитра"
|
||||
STRING_CF_DIBV5 "Аппаратно-независимый точечный рисунок (DIB) (Версия 5)"
|
||||
STRING_CF_SYLK "Формат символических ссылок"
|
||||
STRING_CF_DIF "Формат обмена данными"
|
||||
STRING_CF_HDROP "Очистить данные"
|
||||
STRING_CF_DIBV5 "DIB точечный рисунок (Версия 5)"
|
||||
STRING_CF_SYLK "Symbolic Link Format"
|
||||
STRING_CF_DIF "Data Interchange Format"
|
||||
STRING_CF_HDROP "Drop Data"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
|
@@ -1,4 +1,4 @@
|
||||
/* TRANSLATOR: 2015, 2016 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net) */
|
||||
/* TRANSLATOR: 2015, 2016 Erdem Ersoy (eersoy93) (erdemersoy@live.com) */
|
||||
|
||||
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
|
||||
|
||||
|
@@ -14,7 +14,6 @@
|
||||
#include <shellapi.h>
|
||||
#include <htmlhelp.h>
|
||||
#include <commdlg.h>
|
||||
#include <winnls.h>
|
||||
|
||||
#include "resources.h"
|
||||
#include "cliputils.h"
|
||||
|
@@ -2,7 +2,7 @@
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS Clipboard Viewer
|
||||
* FILE: base/applications/clipbrd/scrollutils.c
|
||||
* PURPOSE: Scrolling related helper functions.
|
||||
* PURPOSE: Scrolling releated 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 related helper functions.
|
||||
* PURPOSE: Scrolling releated helper functions.
|
||||
* PROGRAMMERS: Ricardo Hanke
|
||||
*/
|
||||
|
||||
|
@@ -14,21 +14,9 @@ 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,24 +1,18 @@
|
||||
add_subdirectory(at)
|
||||
add_subdirectory(chcp)
|
||||
add_subdirectory(clip)
|
||||
add_subdirectory(comp)
|
||||
add_subdirectory(cscript)
|
||||
add_subdirectory(dbgprint)
|
||||
add_subdirectory(doskey)
|
||||
add_subdirectory(eventcreate)
|
||||
add_subdirectory(find)
|
||||
add_subdirectory(fsutil)
|
||||
add_subdirectory(help)
|
||||
add_subdirectory(hostname)
|
||||
add_subdirectory(lodctr)
|
||||
add_subdirectory(mode)
|
||||
add_subdirectory(mofcomp)
|
||||
add_subdirectory(more)
|
||||
add_subdirectory(reg)
|
||||
add_subdirectory(schtasks)
|
||||
add_subdirectory(sort)
|
||||
add_subdirectory(taskkill)
|
||||
add_subdirectory(timeout)
|
||||
add_subdirectory(tree)
|
||||
add_subdirectory(whoami)
|
||||
add_subdirectory(wmic)
|
||||
|
@@ -1,8 +0,0 @@
|
||||
|
||||
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)
|
@@ -1,936 +0,0 @@
|
||||
/*
|
||||
* 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 */
|
@@ -1,26 +0,0 @@
|
||||
#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
|
@@ -1,57 +0,0 @@
|
||||
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
|
@@ -1,56 +0,0 @@
|
||||
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
|
@@ -1,56 +0,0 @@
|
||||
/* Ș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
|
@@ -1,54 +0,0 @@
|
||||
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
|
@@ -1,56 +0,0 @@
|
||||
/* TRANSLATOR: 2017 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net) */
|
||||
|
||||
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
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user