mirror of
https://github.com/reactos/reactos
synced 2025-10-07 17:02:50 +02:00
Compare commits
1 Commits
amd64/NtRe
...
netstat_so
Author | SHA1 | Date | |
---|---|---|---|
|
f362ced23c |
1
.github/FUNDING.yml
vendored
1
.github/FUNDING.yml
vendored
@@ -1 +1,2 @@
|
||||
custom: ['https://reactos.org/donate/', 'https://www.paypal.me/ReactOS']
|
||||
liberapay: ReactOS
|
||||
|
44
.github/labeler.yml
vendored
44
.github/labeler.yml
vendored
@@ -1,45 +1,29 @@
|
||||
# Labelling by the files touched
|
||||
|
||||
ATL:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file:
|
||||
- sdk/lib/atl/**
|
||||
- sdk/lib/atl/**
|
||||
|
||||
drivers:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file:
|
||||
- drivers/**
|
||||
- sdk/lib/drivers/**
|
||||
- all-globs-to-any-file:
|
||||
- win32ss/drivers/**
|
||||
- '!win32ss/drivers/font/**'
|
||||
- drivers/**
|
||||
- sdk/lib/drivers/**
|
||||
- any: ["win32ss/drivers/**", "!win32ss/drivers/font/**"]
|
||||
|
||||
freeldr:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file:
|
||||
- boot/freeldr/**
|
||||
- boot/freeldr/**
|
||||
|
||||
"kernel&hal":
|
||||
- changed-files:
|
||||
- any-glob-to-any-file:
|
||||
- hal/**
|
||||
- ntoskrnl/**
|
||||
- hal/**
|
||||
- ntoskrnl/**
|
||||
|
||||
ROSTESTS:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file:
|
||||
- modules/rostests/**
|
||||
- modules/rostests/**
|
||||
|
||||
shell:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file:
|
||||
- base/shell/explorer/**
|
||||
- base/shell/rshell/**
|
||||
- dll/shellext/**
|
||||
- dll/win32/browseui/**
|
||||
- dll/win32/shell32/**
|
||||
- base/shell/explorer/**
|
||||
- base/shell/rshell/**
|
||||
- dll/shellext/**
|
||||
- dll/win32/browseui/**
|
||||
- dll/win32/shell32/**
|
||||
|
||||
Win32SS:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file:
|
||||
- win32ss/**
|
||||
- win32ss/**
|
||||
|
114
.github/workflows/build.yml
vendored
114
.github/workflows/build.yml
vendored
@@ -8,12 +8,6 @@ jobs:
|
||||
compiler: [gcc, clang]
|
||||
arch: [i386, amd64]
|
||||
config: [Debug, Release]
|
||||
dllver: ['0x502', '0x600']
|
||||
exclude:
|
||||
- dllver: 0x600
|
||||
compiler: clang
|
||||
- dllver: 0x600
|
||||
config: Release
|
||||
fail-fast: false
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
@@ -21,12 +15,12 @@ jobs:
|
||||
id: get_rosbe_spec
|
||||
run: |
|
||||
gcc -march=native -Q --help=target | grep "\-march= " | awk '{print $NF}'
|
||||
echo march-sha=$(gcc -march=native -Q --help=target | sha1sum | awk '{print $1}') >> $GITHUB_OUTPUT
|
||||
echo git-sha=$(git ls-remote https://github.com/zefklop/RosBE.git | grep unix_amd64 | awk '{print $1}') >> $GITHUB_OUTPUT
|
||||
echo ::set-output name=march-sha::$(gcc -march=native -Q --help=target | sha1sum | awk '{print $1}')
|
||||
echo ::set-output name=git-sha::$(git ls-remote https://github.com/zefklop/RosBE.git | grep unix_amd64 | awk '{print $1}')
|
||||
wget https://gist.githubusercontent.com/zefklop/b2d6a0b470c70183e93d5285a03f5899/raw/build_rosbe_ci.sh
|
||||
- name: Get RosBE
|
||||
id: get_rosbe
|
||||
uses: actions/cache@v4
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: RosBE-CI
|
||||
key: RosBE-CI-${{runner.os}}-${{steps.get_rosbe_spec.outputs.march-sha}}-${{steps.get_rosbe_spec.outputs.git-sha}}-${{hashfiles('./build_rosbe_ci.sh')}}
|
||||
@@ -46,16 +40,16 @@ jobs:
|
||||
sudo ./llvm.sh $LLVM_VERSION
|
||||
echo "D_CLANG_VERSION=-DCLANG_VERSION=$LLVM_VERSION" >> $GITHUB_ENV
|
||||
- name: Source checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
path: src
|
||||
- name: Set up cache for ccache
|
||||
uses: actions/cache@v4
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: ccache
|
||||
key: ccache-${{matrix.compiler}}-${{matrix.arch}}-${{matrix.config}}-${{matrix.dllver}}-${{github.sha}}
|
||||
key: ccache-${{matrix.compiler}}-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
|
||||
restore-keys: |
|
||||
ccache-${{matrix.compiler}}-${{matrix.arch}}-${{matrix.config}}-${{matrix.dllver}}-
|
||||
ccache-${{matrix.compiler}}-${{matrix.arch}}-
|
||||
- name: Set ccache settings
|
||||
run: |
|
||||
echo "CCACHE_BASEDIR=${{github.workspace}}" >> $GITHUB_ENV
|
||||
@@ -66,7 +60,7 @@ jobs:
|
||||
if: ${{ matrix.compiler == 'gcc' }}
|
||||
run: echo "CCACHE_COMPILERCHECK=string:${{steps.get_rosbe_spec.outputs.git-sha}}-${{hashfiles('./build_rosbe_ci.sh')}}" >> $GITHUB_ENV
|
||||
- name: Configure
|
||||
run: echo 'cmake -S ${{github.workspace}}/src -B ${{github.workspace}}/build -G Ninja -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-${{matrix.compiler}}.cmake -DARCH:STRING=${{matrix.arch}} -DCMAKE_BUILD_TYPE=${{matrix.config}} -DDLL_EXPORT_VERSION=${{matrix.dllver}} -DENABLE_CCACHE=1 -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1 ${{env.D_CLANG_VERSION}}' | ${{github.workspace}}/RosBE-CI/RosBE.sh . 0 ${{matrix.arch}}
|
||||
run: echo 'cmake -S ${{github.workspace}}/src -B ${{github.workspace}}/build -G Ninja -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-${{matrix.compiler}}.cmake -DARCH:STRING=${{matrix.arch}} -DCMAKE_BUILD_TYPE=${{matrix.config}} -DENABLE_CCACHE=1 -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1 ${{env.D_CLANG_VERSION}}' | ${{github.workspace}}/RosBE-CI/RosBE.sh . 0 ${{matrix.arch}}
|
||||
- name: Build
|
||||
run: echo 'cmake --build ${{github.workspace}}/build -- -k0' | ${{github.workspace}}/RosBE-CI/RosBE.sh . 0 ${{matrix.arch}}
|
||||
- name: Generate ISOs
|
||||
@@ -74,9 +68,9 @@ jobs:
|
||||
- name: Print ccache statistics
|
||||
run: ccache -s
|
||||
- name: Upload ISOs
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: reactos-${{matrix.compiler}}-${{matrix.arch}}-${{matrix.config}}-${{matrix.dllver}}-${{github.sha}}
|
||||
name: reactos-${{matrix.compiler}}-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
|
||||
path: |
|
||||
build/bootcd.iso
|
||||
build/livecd.iso
|
||||
@@ -88,7 +82,6 @@ jobs:
|
||||
toolset: ['14.2', '14.1', '14.0'] # VS 2019, 2017, and 2015 (see below)
|
||||
arch: [i386, amd64]
|
||||
config: [Debug, Release]
|
||||
dllver: ['0x502', '0x600']
|
||||
exclude: # VS 2019, 2017 only with windows-latest; VS 2015 only with windows-2019
|
||||
- os: windows-2019
|
||||
toolset: '14.2'
|
||||
@@ -96,14 +89,6 @@ jobs:
|
||||
toolset: '14.1'
|
||||
- os: windows-latest
|
||||
toolset: '14.0'
|
||||
- dllver: 0x600
|
||||
os: windows-2019
|
||||
- dllver: 0x600
|
||||
toolset: '14.1'
|
||||
- dllver: 0x600
|
||||
toolset: '14.0'
|
||||
- dllver: 0x600
|
||||
config: Release
|
||||
fail-fast: false
|
||||
runs-on: ${{matrix.os}}
|
||||
steps:
|
||||
@@ -129,27 +114,27 @@ jobs:
|
||||
arch: amd64
|
||||
toolset: ${{matrix.toolset}}
|
||||
- name: Source checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
path: src
|
||||
- name: Configure
|
||||
run: cmake -S src -B build -G Ninja -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-msvc.cmake -DARCH:STRING=${{matrix.arch}} -DCMAKE_BUILD_TYPE=${{matrix.config}} -DDLL_EXPORT_VERSION=${{matrix.dllver}} -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1
|
||||
run: cmake -S src -B build -G Ninja -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-msvc.cmake -DARCH:STRING=${{matrix.arch}} -DCMAKE_BUILD_TYPE=${{matrix.config}} -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1
|
||||
- name: Build
|
||||
run: cmake --build build -- -k0
|
||||
- name: Generate ISOs
|
||||
run: cmake --build build --target bootcd --target livecd
|
||||
- name: Upload ISOs
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: reactos-msvc${{matrix.toolset}}-${{matrix.arch}}-${{matrix.config}}-${{matrix.dllver}}-${{github.sha}}
|
||||
name: reactos-msvc${{matrix.toolset}}-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
|
||||
path: |
|
||||
build/bootcd.iso
|
||||
build/livecd.iso
|
||||
- name: Upload debug symbols
|
||||
if: ${{ matrix.config == 'Debug' }}
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: reactos-syms-msvc${{matrix.toolset}}-${{matrix.arch}}-${{matrix.config}}-${{matrix.dllver}}-${{github.sha}}
|
||||
name: reactos-syms-msvc${{matrix.toolset}}-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
|
||||
path: build/msvc_pdb
|
||||
|
||||
build-msvc-arm:
|
||||
@@ -183,7 +168,7 @@ jobs:
|
||||
arch: amd64_arm64
|
||||
toolset: ${{matrix.toolset}}
|
||||
- name: Source checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
path: src
|
||||
- name: Configure
|
||||
@@ -197,21 +182,17 @@ jobs:
|
||||
- name: Build rosapps
|
||||
if: ${{ matrix.arch == 'arm' }}
|
||||
run: cmake --build build --target modules/rosapps/all
|
||||
- name: Build subsystems
|
||||
if: ${{ matrix.arch == 'arm' }}
|
||||
run: cmake --build build --target subsystems/all
|
||||
- name: Build some applications (arm64)
|
||||
if: ${{ matrix.arch == 'arm64' }}
|
||||
run: cmake --build build --target calc magnify mstsc notepad osk regedit taskmgr winmine wordpad base/applications/screensavers/all -- -k0
|
||||
- name: Upload compiled binaries
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: reactos-msvc${{matrix.toolset}}-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
|
||||
path: |
|
||||
build/base
|
||||
build/dll/cpl
|
||||
build/modules/rosapps
|
||||
build/subsystems
|
||||
!**/CMakeFiles
|
||||
!**/cmake_install.cmake
|
||||
!**/*.asm
|
||||
@@ -227,7 +208,7 @@ jobs:
|
||||
!**/*.tlb
|
||||
- name: Upload debug symbols
|
||||
if: ${{ matrix.config == 'Debug' }}
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: reactos-syms-msvc${{matrix.toolset}}-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
|
||||
path: build/msvc_pdb
|
||||
@@ -268,7 +249,7 @@ jobs:
|
||||
- name: Add LLVM to PATH
|
||||
run: echo "${env:LLVM_PATH}" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
|
||||
- name: Source checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
path: src
|
||||
- name: Configure
|
||||
@@ -278,7 +259,7 @@ jobs:
|
||||
- name: Generate ISOs
|
||||
run: cmake --build build --target bootcd --target livecd
|
||||
- name: Upload ISOs
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: reactos-clang-cl-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
|
||||
path: |
|
||||
@@ -286,33 +267,34 @@ jobs:
|
||||
build/livecd.iso
|
||||
- name: Upload debug symbols
|
||||
if: ${{ matrix.config == 'Debug' }}
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: reactos-syms-clang-cl-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
|
||||
path: build/msvc_pdb
|
||||
|
||||
build-msbuild-i386:
|
||||
name: MSBuild (i386)
|
||||
runs-on: windows-2019
|
||||
steps:
|
||||
- name: Install Flex and Bison
|
||||
run: |
|
||||
curl -O https://svn.reactos.org/storage/vperevertkin/flexbison.7z
|
||||
7z x flexbison.7z -O${{github.workspace}}\bin
|
||||
echo "${{github.workspace}}\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
|
||||
echo "BISON_PKGDATADIR=${{github.workspace}}\bin\share\bison" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
|
||||
echo "M4=${{github.workspace}}\bin\m4.exe" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
|
||||
- name: Add CL to PATH
|
||||
uses: ilammy/msvc-dev-cmd@v1
|
||||
with:
|
||||
arch: amd64_x86
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
path: src
|
||||
- name: Configure
|
||||
run: |
|
||||
mkdir build
|
||||
cd build
|
||||
cmake -G "Visual Studio 16 2019" -A Win32 -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-msvc.cmake -DARCH:STRING=i386 -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1 ${{github.workspace}}\src
|
||||
- name: Build
|
||||
run: cmake --build ${{github.workspace}}\build --target bootcd --target livecd
|
||||
# Disable MSBuild for the moment being until a proper fix is provided -- see CORE-18911
|
||||
# build-msbuild-i386:
|
||||
# name: MSBuild (i386)
|
||||
# runs-on: windows-2019
|
||||
# steps:
|
||||
# - name: Install Flex and Bison
|
||||
# run: |
|
||||
# curl -O https://svn.reactos.org/storage/vperevertkin/flexbison.7z
|
||||
# 7z x flexbison.7z -O${{github.workspace}}\bin
|
||||
# echo "${{github.workspace}}\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
|
||||
# echo "BISON_PKGDATADIR=${{github.workspace}}\bin\share\bison" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
|
||||
# echo "M4=${{github.workspace}}\bin\m4.exe" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
|
||||
# - name: Add CL to PATH
|
||||
# uses: ilammy/msvc-dev-cmd@v1
|
||||
# with:
|
||||
# arch: amd64_x86
|
||||
# - uses: actions/checkout@v2
|
||||
# with:
|
||||
# path: src
|
||||
# - name: Configure
|
||||
# run: |
|
||||
# mkdir build
|
||||
# cd build
|
||||
# cmake -G "Visual Studio 16 2019" -A Win32 -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-msvc.cmake -DARCH:STRING=i386 -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1 ${{github.workspace}}\src
|
||||
# - name: Build
|
||||
# run: cmake --build ${{github.workspace}}\build --target bootcd --target livecd
|
||||
|
4
.github/workflows/labeler.yml
vendored
4
.github/workflows/labeler.yml
vendored
@@ -6,6 +6,6 @@ jobs:
|
||||
triage:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/labeler@v5
|
||||
- uses: actions/labeler@v3
|
||||
with:
|
||||
sync-labels: true
|
||||
repo-token: "${{ secrets.GITHUB_TOKEN }}"
|
||||
|
3
.github/workflows/stale.yml
vendored
3
.github/workflows/stale.yml
vendored
@@ -14,10 +14,11 @@ jobs:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
issues: write
|
||||
pull-requests: write
|
||||
|
||||
steps:
|
||||
- uses: actions/stale@v9
|
||||
- uses: actions/stale@v5
|
||||
with:
|
||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
days-before-stale: 120
|
||||
|
@@ -232,8 +232,7 @@ Enable this if the module uses typeid or dynamic_cast. You will probably need to
|
||||
-D_WIN32_WINNT=0x502
|
||||
-D_WIN32_WINDOWS=0x502
|
||||
-D_SETUPAPI_VER=0x502
|
||||
-DMINGW_HAS_SECURE_API=1
|
||||
-DDLL_EXPORT_VERSION=${DLL_EXPORT_VERSION})
|
||||
-DMINGW_HAS_SECURE_API=1)
|
||||
|
||||
# Arch Options
|
||||
if(ARCH STREQUAL "i386")
|
||||
@@ -336,12 +335,14 @@ Enable this if the module uses typeid or dynamic_cast. You will probably need to
|
||||
add_subdirectory(sdk/include/reactos/mc)
|
||||
add_subdirectory(sdk/include/asm)
|
||||
|
||||
if(ARCH MATCHES "64$")
|
||||
include(sdk/cmake/baseaddress64.cmake)
|
||||
elseif(NO_ROSSYM)
|
||||
if(NO_ROSSYM)
|
||||
include(sdk/cmake/baseaddress_dwarf.cmake)
|
||||
elseif(MSVC)
|
||||
include(sdk/cmake/baseaddress_msvc.cmake)
|
||||
if (ARCH STREQUAL "amd64")
|
||||
include(sdk/cmake/baseaddress_msvc_x64.cmake)
|
||||
else()
|
||||
include(sdk/cmake/baseaddress_msvc.cmake)
|
||||
endif()
|
||||
else()
|
||||
include(sdk/cmake/baseaddress.cmake)
|
||||
endif()
|
||||
|
@@ -96,7 +96,7 @@
|
||||
# Apisets
|
||||
# M: learn-more, learn_more, Mark Jansen
|
||||
# S: Maintained
|
||||
/sdk/lib/apisets/ @learn-more
|
||||
/dll/apisets/ @learn-more
|
||||
|
||||
# Application Compatibility subystem
|
||||
# M: learn-more, learn_more, Mark Jansen
|
||||
|
@@ -63,19 +63,13 @@ Our commit style is defined in a __[commit template]__. Use it as a reference or
|
||||
|
||||
### Rules and Recommendations
|
||||
|
||||
- *Use your __real name__ and __real email__.* We do not accept anonymous code contributions!
|
||||
- Every commit that changes code or translations should have author's full legal name (in latin letters, diacritics allowed).
|
||||
- It's recommended to have the same full name set in GitHub profile (in the [Name field here][GitHub Profile Settings]) that matches one specified in commits.
|
||||
- There is an exception for media changes, such as changes of art (wallpapers, themes, icons, sounds) and out-of-code documentation.
|
||||
- In these specific cases it's allowed to use a nickname or alias as author's name, and it's recommended to have the same name set in GitHub profile (in the [Name field here][GitHub Profile Settings]) matching one specified in commits.
|
||||
- In any case the author must use a real e-mail address, this includes git commits (`user.email` setting) and GitHub [e-mail settings][GitHub Email Settings] - the checkbox "Keep my email addresses private" must be unchecked there.
|
||||
- In order to *keep your privacy*, select appropriate "Primary email address" that will be applied to your commits in GitHub [e-mail settings][GitHub Email Settings].
|
||||
- *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 in the [chat].
|
||||
- *Do not be afraid to ask questions.* Ask our developers on JIRA or [IRC] channel.
|
||||
|
||||
To amend your commit with your name and e-mail (in any case you've forgot to set your name/e-mail) please take a look at this [guide](https://reactos.org/wiki/ReactOS_Git_For_Dummies#Amending_your_commit_with_name.2FE-mail). To set your name/e-mail globally for future commits that you push, [read this](https://reactos.org/wiki/ReactOS_Git_For_Dummies#Assign_commits_with_your_name_.26_E-mail_automatically).
|
||||
|
||||
@@ -85,7 +79,7 @@ Finding a good project to start with can be a challenge, because when starting o
|
||||
|
||||
- Find a test that fails, and try to make it succeed: <https://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 in the [chat]
|
||||
- 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
|
||||
@@ -96,14 +90,12 @@ Finding a good project to start with can be a challenge, because when starting o
|
||||
[migration to GitHub]: https://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/
|
||||
[GitHub Profile Settings]: https://github.com/settings/profile
|
||||
[GitHub Email Settings]: https://github.com/settings/emails
|
||||
[tips for reviewing patches]: https://www.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
|
||||
[chat]: https://reactos.org/wiki/Mattermost
|
||||
[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
|
||||
|
@@ -14,17 +14,3 @@ In addition, in order to avoid coming off as rude to helpful contributors, pleas
|
||||
- Asking the contributor to do unrelated work
|
||||
- Closing without providing a reason
|
||||
- Merging with the intention to rewrite that code soon after
|
||||
|
||||
Before merging a PR, make sure it follows the [contributing rules](CONTRIBUTING.md#rules-and-recommendations), but more importantly:
|
||||
- Make sure the author has specified a real e-mail in all PR commits
|
||||
- If PR contains code or translations, make sure the author has not specified a nickname or alias, but a full legal name in all PR commits
|
||||
- If PR contains media (wallpapers, themes, icons, sounds) or out-of-code documentation, make sure the author has specified the name or alias in all PR commits
|
||||
- If PR contains mixed code with media changes, handle it as PR with code
|
||||
- Important notes before using "Squash and merge" strategy on a PR:
|
||||
- Make sure the author's name in GitHub profile matches one in commits. If this is not the case, ask the author to set it accordingly.
|
||||
- If the author does not want to set the name in GitHub profile:
|
||||
- "no squash merge" label needs to be added to a PR.
|
||||
- Make sure every commit message is formatted correctly as in [.gitmessage](https://github.com/reactos/reactos/blob/master/.gitmessage).
|
||||
- Finally in this case a PR has to be merged either using "Rebase and merge" strategy or manually.
|
||||
- By pressing "Squash and merge" button in a PR you can make sure the author does not use no-reply e-mail -
|
||||
under the commit message there will be a text label saying: `This commit will be authored by <address@email.com>`
|
||||
|
@@ -127,10 +127,10 @@ The main development is done on [GitHub](https://github.com/reactos/reactos). We
|
||||
There is also an obsolete [SVN archive repository](https://svn.reactos.org/reactos/) that is kept for historical purposes.
|
||||
|
||||
[coverity.badge]: https://scan.coverity.com/projects/205/badge.svg?flat=1
|
||||
[rosbewin.badge]: https://img.shields.io/badge/RosBE_Windows-2.2.1-0688CB.svg
|
||||
[rosbeunix.badge]: https://img.shields.io/badge/RosBE_Unix-2.2.1-0688CB.svg
|
||||
[rosbewin.badge]: https://img.shields.io/badge/RosBE_Windows-2.2.0-0688CB.svg
|
||||
[rosbeunix.badge]: https://img.shields.io/badge/RosBE_Unix-2.2-0688CB.svg
|
||||
[prwelcome.badge]: https://img.shields.io/badge/PR-welcome-0688CB.svg
|
||||
|
||||
[coverity.link]: https://scan.coverity.com/projects/205
|
||||
[rosbewin.link]: https://sourceforge.net/projects/reactos/files/RosBE-Windows/i386/2.2.1/
|
||||
[rosbeunix.link]: https://sourceforge.net/projects/reactos/files/RosBE-Unix/2.2.1/
|
||||
[rosbewin.link]: https://sourceforge.net/projects/reactos/files/RosBE-Windows/i386/2.2.0/
|
||||
[rosbeunix.link]: https://sourceforge.net/projects/reactos/files/RosBE-Unix/2.2/
|
||||
|
@@ -6,7 +6,6 @@ add_subdirectory(charmap)
|
||||
add_subdirectory(clipbrd)
|
||||
add_subdirectory(cmdutils)
|
||||
add_subdirectory(control)
|
||||
add_subdirectory(ctfmon)
|
||||
add_subdirectory(drwtsn32)
|
||||
add_subdirectory(dxdiag)
|
||||
add_subdirectory(extrac32)
|
||||
|
@@ -1,11 +1,4 @@
|
||||
/*
|
||||
* PROJECT: ReactOS CACLS
|
||||
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
|
||||
* PURPOSE: Romanian resource file
|
||||
* TRANSLATORS: Copyright 2011-2018 Ștefan Fulea <stefan.fulea@mail.com>
|
||||
* Copyright 2024 Andrei Miloiu <miloiuandrei@gmail.com>
|
||||
*/
|
||||
|
||||
/* Translator: Ștefan Fulea (stefan dot fulea at mail dot com) */
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
@@ -41,7 +34,7 @@ Abrevieri:\n\
|
||||
OI - Moștenire obiecte.\n\
|
||||
ACE moștenită de fișiere.\n\
|
||||
IO - Moștenire simplă.\n\
|
||||
ACE neaplicată folderelor/fișierelor curente.\n"
|
||||
ACE neaplicată dosarelor/fișierelor curente.\n"
|
||||
IDS_ABBR_CI "(CI)"
|
||||
IDS_ABBR_OI "(OI)"
|
||||
IDS_ABBR_IO "(IO)"
|
||||
|
@@ -1,4 +1,5 @@
|
||||
#pragma once
|
||||
#ifndef __CALC_H__
|
||||
#define __CALC_H__
|
||||
|
||||
#define WIN32_LEAN_AND_MEAN
|
||||
#include <windows.h>
|
||||
@@ -15,7 +16,6 @@
|
||||
#include <htmlhelp.h>
|
||||
#endif
|
||||
#include <limits.h>
|
||||
#include <strsafe.h>
|
||||
|
||||
/* RESOURCES */
|
||||
#include "resource.h"
|
||||
@@ -280,3 +280,5 @@ INT_PTR CALLBACK AboutDlgProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp);
|
||||
void ConvExecute(HWND hWnd);
|
||||
void ConvAdjust(HWND hWnd, int n_cat);
|
||||
void ConvInit(HWND hWnd);
|
||||
|
||||
#endif /* __CALC_H__ */
|
||||
|
@@ -8,7 +8,7 @@ LANGUAGE LANG_BULGARIAN, SUBLANG_DEFAULT
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
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
|
||||
@@ -156,7 +156,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
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
|
||||
@@ -221,7 +221,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
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
|
||||
|
@@ -7,7 +7,7 @@ LANGUAGE LANG_CZECH, SUBLANG_DEFAULT
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS kalkulačka"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
@@ -155,7 +155,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Kalkulačka"
|
||||
MENU IDR_MENU_STANDARD
|
||||
@@ -220,7 +220,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Kalkulačka"
|
||||
MENU IDR_MENU_STANDARD
|
||||
|
@@ -2,7 +2,7 @@ LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Rechner"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
@@ -150,7 +150,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Rechner"
|
||||
MENU IDR_MENU_STANDARD
|
||||
@@ -215,7 +215,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Rechner"
|
||||
MENU IDR_MENU_STANDARD
|
||||
|
@@ -2,7 +2,7 @@ LANGUAGE LANG_GREEK, SUBLANG_DEFAULT
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Αριθμομηχανή"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
@@ -150,7 +150,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Αριθμομηχανή"
|
||||
MENU IDR_MENU_STANDARD
|
||||
@@ -215,7 +215,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Αριθμομηχανή"
|
||||
MENU IDR_MENU_STANDARD
|
||||
|
@@ -2,7 +2,7 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Calculator"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
@@ -150,7 +150,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Calculator"
|
||||
MENU IDR_MENU_STANDARD
|
||||
@@ -215,7 +215,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Calculator"
|
||||
MENU IDR_MENU_STANDARD
|
||||
|
@@ -8,7 +8,7 @@ LANGUAGE LANG_SPANISH, SUBLANG_NEUTRAL
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Calculadora de ReactOS"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
@@ -156,7 +156,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Calculadora de ReactOS"
|
||||
MENU IDR_MENU_STANDARD
|
||||
@@ -221,7 +221,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Calculadora de ReactOS"
|
||||
MENU IDR_MENU_STANDARD
|
||||
|
@@ -2,7 +2,7 @@ LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Calculatrice ReactOS"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
@@ -150,7 +150,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Calculatrice ReactOS"
|
||||
MENU IDR_MENU_STANDARD
|
||||
@@ -215,7 +215,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Calculatrice ReactOS"
|
||||
MENU IDR_MENU_STANDARD
|
||||
|
@@ -4,7 +4,7 @@ LANGUAGE LANG_HEBREW, SUBLANG_DEFAULT
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
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"
|
||||
@@ -153,7 +153,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
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"
|
||||
@@ -219,7 +219,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
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"
|
||||
|
@@ -10,7 +10,7 @@ LANGUAGE LANG_HUNGARIAN, SUBLANG_DEFAULT
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Számológép"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
@@ -158,7 +158,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Számológép"
|
||||
MENU IDR_MENU_STANDARD
|
||||
@@ -223,7 +223,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Számológép"
|
||||
MENU IDR_MENU_STANDARD
|
||||
|
@@ -9,7 +9,7 @@ LANGUAGE LANG_INDONESIAN, SUBLANG_DEFAULT
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Kalkulator ReactOS"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
@@ -157,7 +157,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Kalkulator ReactOS"
|
||||
MENU IDR_MENU_STANDARD
|
||||
@@ -222,7 +222,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Kalkulator ReactOS"
|
||||
MENU IDR_MENU_STANDARD
|
||||
|
@@ -2,7 +2,7 @@ LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Calcolatrice ReactOS"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
@@ -150,7 +150,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Calcolatrice ReactOS"
|
||||
MENU IDR_MENU_STANDARD
|
||||
@@ -215,7 +215,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Calcolatrice ReactOS"
|
||||
MENU IDR_MENU_STANDARD
|
||||
|
@@ -2,7 +2,7 @@ LANGUAGE LANG_JAPANESE, SUBLANG_DEFAULT
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
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
|
||||
@@ -150,7 +150,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
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
|
||||
@@ -215,7 +215,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
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
|
||||
|
@@ -4,7 +4,7 @@ LANGUAGE LANG_KOREAN, SUBLANG_DEFAULT
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
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
|
||||
@@ -152,7 +152,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
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
|
||||
@@ -217,7 +217,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
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
|
||||
|
@@ -2,7 +2,7 @@ LANGUAGE LANG_DUTCH, SUBLANG_NEUTRAL
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Rekenmachine"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
@@ -150,7 +150,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Rekenmachine"
|
||||
MENU IDR_MENU_STANDARD
|
||||
@@ -215,7 +215,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Rekenmachine"
|
||||
MENU IDR_MENU_STANDARD
|
||||
|
@@ -2,7 +2,7 @@ LANGUAGE LANG_NORWEGIAN, SUBLANG_NEUTRAL
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Kalkulator"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
@@ -150,7 +150,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Kalkulator"
|
||||
MENU IDR_MENU_STANDARD
|
||||
@@ -215,7 +215,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Kalkulator"
|
||||
MENU IDR_MENU_STANDARD
|
||||
|
@@ -11,7 +11,7 @@ LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Kalkulator ReactOS"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
@@ -159,7 +159,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Kalkulator ReactOS"
|
||||
MENU IDR_MENU_STANDARD
|
||||
@@ -224,7 +224,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Kalkulator ReactOS"
|
||||
MENU IDR_MENU_STANDARD
|
||||
|
@@ -4,7 +4,7 @@ LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE_BRAZILIAN
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Calculadora ReactOS"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
@@ -152,7 +152,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Calculadora ReactOS"
|
||||
MENU IDR_MENU_STANDARD
|
||||
@@ -217,7 +217,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Calculadora ReactOS"
|
||||
MENU IDR_MENU_STANDARD
|
||||
|
@@ -4,7 +4,7 @@ LANGUAGE LANG_PORTUGUESE, SUBLANG_NEUTRAL
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Calculadora ReactOS"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
@@ -152,7 +152,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Calculadora ReactOS"
|
||||
MENU IDR_MENU_STANDARD
|
||||
@@ -217,7 +217,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Calculadora ReactOS"
|
||||
MENU IDR_MENU_STANDARD
|
||||
|
@@ -4,16 +4,16 @@
|
||||
* PURPOSE: Romanian resource file
|
||||
* TRANSLATORS: Copyright 2009 Petru Dimitriu <petrimetri@gmail.com>
|
||||
* Copyright 2011-2018 Ștefan Fulea <stefan.fulea@mail.com>
|
||||
* Copyright 2022-2024 Andrei Miloiu <miloiuandrei@gmail.com>
|
||||
* Copyright 2022 Andrei Miloiu <miloiuandrei@gmail.com>
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Calculator"
|
||||
CAPTION "Minicalculator"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
FONT 8, "MS Shell Dlg", 0, 0, 0x1
|
||||
BEGIN
|
||||
@@ -153,15 +153,15 @@ BEGIN
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
|
||||
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
PUSHBUTTON "Backspace", IDC_BUTTON_BACK, 177, 38, 43, 18, BS_CENTER |
|
||||
PUSHBUTTON "Înapoi", IDC_BUTTON_BACK, 177, 38, 43, 18, BS_CENTER |
|
||||
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
|
||||
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 305, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Calculator"
|
||||
CAPTION "Minicalculator"
|
||||
MENU IDR_MENU_STANDARD
|
||||
FONT 8, "MS Shell Dlg", 0, 0, 0x1
|
||||
BEGIN
|
||||
@@ -169,7 +169,7 @@ 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 "Backspace", IDC_BUTTON_BACK, 36, 23, 42, 18, BS_CENTER | BS_VCENTER |
|
||||
PUSHBUTTON "Înapoi", 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 "7", IDC_BUTTON_7, 36, 45, 24, 18, BS_CENTER | BS_VCENTER |
|
||||
@@ -224,9 +224,9 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Calculator"
|
||||
CAPTION "Minicalculator"
|
||||
MENU IDR_MENU_STANDARD
|
||||
FONT 8, "MS Shell Dlg"
|
||||
BEGIN
|
||||
@@ -244,7 +244,7 @@ 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 "Backspace", IDC_BUTTON_BACK, "Button", BS_OWNERDRAW | BS_CENTER |
|
||||
CONTROL "Înapoi", 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 "7", IDC_BUTTON_7, "Button", BS_OWNERDRAW | BS_CENTER |
|
||||
@@ -318,31 +318,31 @@ IDR_MENU_SCIENTIFIC_1 MENU
|
||||
BEGIN
|
||||
POPUP "&Editare"
|
||||
BEGIN
|
||||
MENUITEM "&Copiere\tCtrl-C", IDM_EDIT_COPY
|
||||
MENUITEM "&Lipire\tCtrl-V", IDM_EDIT_PASTE
|
||||
MENUITEM "&Copiază\tCtrl-C", IDM_EDIT_COPY
|
||||
MENUITEM "&Lipește\tCtrl-V", IDM_EDIT_PASTE
|
||||
END
|
||||
POPUP "&Vizualizare"
|
||||
POPUP "&Afișare"
|
||||
BEGIN
|
||||
MENUITEM "&Standard", IDM_VIEW_STANDARD
|
||||
MENUITEM "&Ştiinţific", IDM_VIEW_SCIENTIFIC
|
||||
MENUITEM "Co&nversie", IDM_VIEW_CONVERSION
|
||||
MENUITEM "Mod st&andard", IDM_VIEW_STANDARD
|
||||
MENUITEM "Mod știi&nțific", IDM_VIEW_SCIENTIFIC
|
||||
MENUITEM "Con&versie", IDM_VIEW_CONVERSION
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Hexazecimal\tF5", IDM_VIEW_HEX, CHECKED
|
||||
MENUITEM "&Zecimal\tF6", IDM_VIEW_DEC, CHECKED
|
||||
MENUITEM "O&ctal\tF7", IDM_VIEW_OCT, CHECKED
|
||||
MENUITEM "&Octal\tF7", IDM_VIEW_OCT, CHECKED
|
||||
MENUITEM "&Binar\tF8", IDM_VIEW_BIN, CHECKED
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Grade\tF2", IDM_VIEW_DEG, CHECKED
|
||||
MENUITEM "&Radiani\tF3", IDM_VIEW_RAD, CHECKED
|
||||
MENUITEM "Gra&diani\tF4", IDM_VIEW_GRAD, CHECKED
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "G&ruparea cifrelor", IDM_VIEW_GROUP, CHECKED
|
||||
MENUITEM "Grupează &cifrele", IDM_VIEW_GROUP, CHECKED
|
||||
END
|
||||
POPUP "Aj&utor"
|
||||
BEGIN
|
||||
MENUITEM "&Termeni din Ajutor", IDM_HELP_HELP
|
||||
MENUITEM "&Manual…", IDM_HELP_HELP
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Despre Calculator ReactOS", IDM_HELP_ABOUT
|
||||
MENUITEM "&Despre…", IDM_HELP_ABOUT
|
||||
END
|
||||
END
|
||||
|
||||
@@ -350,32 +350,32 @@ IDR_MENU_SCIENTIFIC_2 MENU
|
||||
BEGIN
|
||||
POPUP "&Editare"
|
||||
BEGIN
|
||||
MENUITEM "&Copiere\tCTRL-C", IDM_EDIT_COPY
|
||||
MENUITEM "&Lipire\tCTRL-V", IDM_EDIT_PASTE
|
||||
MENUITEM "&Copiază\tCTRL-C", IDM_EDIT_COPY
|
||||
MENUITEM "&Lipește\tCTRL-V", IDM_EDIT_PASTE
|
||||
END
|
||||
POPUP "&Vizualizare"
|
||||
POPUP "&Afișare"
|
||||
BEGIN
|
||||
MENUITEM "&Standard", IDM_VIEW_STANDARD
|
||||
MENUITEM "&Ştiinţific", IDM_VIEW_SCIENTIFIC
|
||||
MENUITEM "G&ruparea cifrelor", IDM_VIEW_CONVERSION
|
||||
MENUITEM "Mod st&andard", IDM_VIEW_STANDARD
|
||||
MENUITEM "Mod știi&nțific", IDM_VIEW_SCIENTIFIC
|
||||
MENUITEM "Con&versie", IDM_VIEW_CONVERSION
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Hexazecimal\tF5", IDM_VIEW_HEX, CHECKED
|
||||
MENUITEM "&Zecimal\tF6", IDM_VIEW_DEC, CHECKED
|
||||
MENUITEM "&Octal\tF7", IDM_VIEW_OCT, CHECKED
|
||||
MENUITEM "&Binar\tF8", IDM_VIEW_BIN, CHECKED
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&64 de biți\tF12", IDM_VIEW_QWORD, CHECKED
|
||||
MENUITEM "&32 de biți\tF2", IDM_VIEW_DWORD, CHECKED
|
||||
MENUITEM "&64 biți\tF12", IDM_VIEW_QWORD, CHECKED
|
||||
MENUITEM "&32 biți\tF2", IDM_VIEW_DWORD, CHECKED
|
||||
MENUITEM "&16 biți\tF3", IDM_VIEW_WORD, CHECKED
|
||||
MENUITEM "&8 biți\tF4", IDM_VIEW_BYTE, CHECKED
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Gr&uparea cifrelor", IDM_VIEW_GROUP, CHECKED
|
||||
MENUITEM "Grupează &cifrele", IDM_VIEW_GROUP, CHECKED
|
||||
END
|
||||
POPUP "Aj&utor"
|
||||
BEGIN
|
||||
MENUITEM "&Termeni din Ajutor", IDM_HELP_HELP
|
||||
MENUITEM "&Manual…", IDM_HELP_HELP
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Despre Calculator ReactOS", IDM_HELP_ABOUT
|
||||
MENUITEM "&Despre…", IDM_HELP_ABOUT
|
||||
END
|
||||
END
|
||||
|
||||
@@ -383,22 +383,22 @@ IDR_MENU_STANDARD MENU
|
||||
BEGIN
|
||||
POPUP "&Editare"
|
||||
BEGIN
|
||||
MENUITEM "&Copiere\tCTRL-C", IDM_EDIT_COPY
|
||||
MENUITEM "&Lipire\tCTRL-V", IDM_EDIT_PASTE
|
||||
MENUITEM "&Copiază\tCTRL-C", IDM_EDIT_COPY
|
||||
MENUITEM "&Lipește\tCTRL-V", IDM_EDIT_PASTE
|
||||
END
|
||||
POPUP "&Vizualizare"
|
||||
POPUP "&Afișare"
|
||||
BEGIN
|
||||
MENUITEM "&Standard", IDM_VIEW_STANDARD
|
||||
MENUITEM "&Ştiinţific", IDM_VIEW_SCIENTIFIC
|
||||
MENUITEM "Co&nversie", IDM_VIEW_CONVERSION
|
||||
MENUITEM "Mod st&andard", IDM_VIEW_STANDARD
|
||||
MENUITEM "Mod știi&nțific", IDM_VIEW_SCIENTIFIC
|
||||
MENUITEM "Con&versie", IDM_VIEW_CONVERSION
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Gr&uparea cifrelor", IDM_VIEW_GROUP, CHECKED
|
||||
MENUITEM "Grupează &cifre", IDM_VIEW_GROUP, CHECKED
|
||||
END
|
||||
POPUP "Aj&utor"
|
||||
BEGIN
|
||||
MENUITEM "&Termeni din Ajutor", IDM_HELP_HELP
|
||||
MENUITEM "&Manual…", IDM_HELP_HELP
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Despre Calculator ReactOS", IDM_HELP_ABOUT
|
||||
MENUITEM "&Despre…", IDM_HELP_ABOUT
|
||||
END
|
||||
END
|
||||
|
||||
@@ -407,13 +407,13 @@ END
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_MATH_ERROR "Eroare"
|
||||
IDS_QUICKHELP "Termeni din Ajutor"
|
||||
IDS_QUICKHELP "Manual"
|
||||
END
|
||||
|
||||
/* About */
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_CALC_NAME "Calculator ReactOS"
|
||||
IDS_CALC_NAME "Minicalculator ReactOS"
|
||||
IDS_AUTHOR "Scris de Carlo Bramini"
|
||||
END
|
||||
|
||||
@@ -438,8 +438,8 @@ END
|
||||
/* Angles */
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_ANGLE_ARCMINUTES "Minut de arc"
|
||||
IDS_ANGLE_ARCSECONDS "Secundă de arc"
|
||||
IDS_ANGLE_ARCMINUTES "Minute of arc"
|
||||
IDS_ANGLE_ARCSECONDS "Second of arc"
|
||||
IDS_ANGLE_DEGREES "Grade"
|
||||
IDS_ANGLE_GRADIANS "Gradiani"
|
||||
IDS_ANGLE_RADIANS "Radiani"
|
||||
@@ -470,7 +470,7 @@ BEGIN
|
||||
IDS_AREA_SQUARE_FATHOMS "Fathomi pătrați"
|
||||
IDS_AREA_SQUARE_FATHOMS_HUNGARY "Fathomi pătrați (Ungaria)"
|
||||
IDS_AREA_SQUARE_FEET "Picioare pătrate"
|
||||
IDS_AREA_SQUARE_INCHES "Inci pătrați"
|
||||
IDS_AREA_SQUARE_INCHES "Țoli pătrați"
|
||||
IDS_AREA_SQUARE_KILOMETERS "Kilometri pătrați"
|
||||
IDS_AREA_SQUARE_LAR "Lar pătrați"
|
||||
IDS_AREA_SQUARE_METER "Metri pătrați"
|
||||
@@ -524,7 +524,7 @@ STRINGTABLE
|
||||
BEGIN
|
||||
IDS_ENERGY_15_C_CALORIES "Calorii 15 °C"
|
||||
IDS_ENERGY_BTUS "Unități termale britanice"
|
||||
IDS_ENERGY_ERGS "Ergi"
|
||||
IDS_ENERGY_ERGS "Erg"
|
||||
IDS_ENERGY_EVS "Electroni-Volt"
|
||||
IDS_ENERGY_FOOT_POUNDS "Picioare-Livră"
|
||||
IDS_ENERGY_IT_CALORIES "Calorii Tabel Internațional"
|
||||
@@ -555,7 +555,7 @@ BEGIN
|
||||
IDS_LENGTH_GAN "Gan"
|
||||
IDS_LENGTH_HANDS "Palme"
|
||||
IDS_LENGTH_HUNH "Hunh"
|
||||
IDS_LENGTH_INCHES "Inci"
|
||||
IDS_LENGTH_INCHES "Țoli"
|
||||
IDS_LENGTH_JA "Ja"
|
||||
IDS_LENGTH_JEONG "Jeong"
|
||||
IDS_LENGTH_KABIET "Kabiet"
|
||||
@@ -592,7 +592,7 @@ END
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_POWER_BTUS_PER_MINUTE "Unități termice britanice pe minut"
|
||||
IDS_POWER_FPS_PER_MINUTE "Picior-lire pe minut"
|
||||
IDS_POWER_FPS_PER_MINUTE "Picior-livre pe minut"
|
||||
IDS_POWER_HORSEPOWER "Cai putere"
|
||||
IDS_POWER_KILOWATTS "Kilowați"
|
||||
IDS_POWER_MEGAWATTS "Megawați"
|
||||
@@ -608,7 +608,7 @@ BEGIN
|
||||
IDS_PRESSURE_KILOPASCALS "Kilopascali"
|
||||
IDS_PRESSURE_MM_OF_MERCURY "Milimetri coloană de mercur"
|
||||
IDS_PRESSURE_PASCALS "Pascali"
|
||||
IDS_PRESSURE_PSI "Livre-forță pe inci pătrați"
|
||||
IDS_PRESSURE_PSI "Livre-forță pe țol pătrat"
|
||||
END
|
||||
|
||||
/* Temperatures */
|
||||
@@ -657,7 +657,7 @@ BEGIN
|
||||
IDS_VOLUME_BUSHELS_US "Bushel (SUA)"
|
||||
IDS_VOLUME_CUBIC_CENTIMETERS "Centrimetri cubi"
|
||||
IDS_VOLUME_CUBIC_FEET "Picioare^3"
|
||||
IDS_VOLUME_CUBIC_INCHES "Inci cubi"
|
||||
IDS_VOLUME_CUBIC_INCHES "Țoli cubi"
|
||||
IDS_VOLUME_CUBIC_METERS "Metri cubi"
|
||||
IDS_VOLUME_CUBIC_YARDS "Yarzi cubi"
|
||||
IDS_VOLUME_DOE "Doe"
|
||||
@@ -708,11 +708,11 @@ BEGIN
|
||||
IDS_WEIGHT_OUNCES_AVOIRDUPOIS "Uncii, avoirdupois"
|
||||
IDS_WEIGHT_OUNCES_TROY "Uncii, troy"
|
||||
IDS_WEIGHT_POUNDS "Livre"
|
||||
IDS_WEIGHT_QUINTAL_METRIC "Quintale (metric)"
|
||||
IDS_WEIGHT_QUINTAL_METRIC "Chintale (metric)"
|
||||
IDS_WEIGHT_SALOUNG "Saloung"
|
||||
IDS_WEIGHT_STONES "Stones"
|
||||
IDS_WEIGHT_TAMLUNG "Tamlung"
|
||||
IDS_WEIGHT_TONNES "Tone"
|
||||
IDS_WEIGHT_TONNES "Tonni"
|
||||
IDS_WEIGHT_TONS_UK "Tone (Marea Britanie)"
|
||||
IDS_WEIGHT_TONS_US "Tone (SUA)"
|
||||
END
|
||||
|
@@ -2,7 +2,7 @@ LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
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
|
||||
@@ -150,7 +150,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
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
|
||||
@@ -215,7 +215,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
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
|
||||
@@ -429,8 +429,8 @@ END
|
||||
/* Angles */
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_ANGLE_ARCMINUTES "Угловая минута"
|
||||
IDS_ANGLE_ARCSECONDS "Угловая секунда"
|
||||
IDS_ANGLE_ARCMINUTES "Minute of arc"
|
||||
IDS_ANGLE_ARCSECONDS "Second of arc"
|
||||
IDS_ANGLE_DEGREES "градус"
|
||||
IDS_ANGLE_GRADIANS "град"
|
||||
IDS_ANGLE_RADIANS "радиан"
|
||||
|
@@ -9,7 +9,7 @@ LANGUAGE LANG_SLOVAK, SUBLANG_DEFAULT
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Kalkulačka systému ReactOS"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
@@ -157,7 +157,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Kalkulačka systému ReactOS"
|
||||
MENU IDR_MENU_STANDARD
|
||||
@@ -222,7 +222,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Kalkulačka systému ReactOS"
|
||||
MENU IDR_MENU_STANDARD
|
||||
|
@@ -6,7 +6,7 @@ LANGUAGE LANG_ALBANIAN, SUBLANG_NEUTRAL
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Makine Llogaritje"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
@@ -154,7 +154,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Makine Llogaritje"
|
||||
MENU IDR_MENU_STANDARD
|
||||
@@ -219,7 +219,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Makine Llogaritje"
|
||||
MENU IDR_MENU_STANDARD
|
||||
|
@@ -9,7 +9,7 @@ LANGUAGE LANG_SWEDISH, SUBLANG_NEUTRAL
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Kalkylator"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
@@ -157,7 +157,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Kalkylator"
|
||||
MENU IDR_MENU_STANDARD
|
||||
@@ -222,7 +222,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Kalkylator"
|
||||
MENU IDR_MENU_STANDARD
|
||||
|
@@ -2,7 +2,7 @@ LANGUAGE LANG_THAI, SUBLANG_DEFAULT
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
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
|
||||
@@ -150,7 +150,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "สถานภาพทั่วไป"
|
||||
MENU IDR_MENU_STANDARD
|
||||
@@ -215,7 +215,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
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
|
||||
|
@@ -7,7 +7,7 @@ LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Hesap Makinesi"
|
||||
MENU IDR_MENU_SCIENTIFIC_1
|
||||
@@ -155,7 +155,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Hesap Makinesi"
|
||||
MENU IDR_MENU_STANDARD
|
||||
@@ -220,7 +220,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
|
||||
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "ReactOS Hesap Makinesi"
|
||||
MENU IDR_MENU_STANDARD
|
||||
|
@@ -10,7 +10,7 @@ LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
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
|
||||
@@ -158,7 +158,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
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
|
||||
@@ -223,7 +223,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
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
|
||||
|
@@ -10,7 +10,7 @@ LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
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
|
||||
@@ -158,7 +158,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
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
|
||||
@@ -223,7 +223,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
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
|
||||
|
@@ -10,7 +10,7 @@ LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_HONGKONG
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
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
|
||||
@@ -158,7 +158,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
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
|
||||
@@ -223,7 +223,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
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
|
||||
|
@@ -4,7 +4,7 @@ LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
|
||||
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
|
||||
@@ -152,7 +152,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
|
||||
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
|
||||
@@ -217,7 +217,7 @@ BEGIN
|
||||
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
|
||||
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
|
||||
|
@@ -4,8 +4,6 @@
|
||||
#define IDC_STATIC -1
|
||||
#endif
|
||||
|
||||
#define CW_USEDEFAULT16 0x8000
|
||||
|
||||
#define IDS_CALC_NAME 1
|
||||
#define IDS_MATH_ERROR 2
|
||||
#define IDS_QUICKHELP 3
|
||||
|
@@ -19,7 +19,7 @@
|
||||
*/
|
||||
|
||||
#include <windef.h>
|
||||
#include <winuser.rh>
|
||||
#include <winuser.h>
|
||||
|
||||
#include "resource.h"
|
||||
|
||||
|
@@ -27,7 +27,7 @@ void prepare_rpn_result_2(calc_number_t *rpn, TCHAR *buffer, int size, int base)
|
||||
|
||||
switch (base) {
|
||||
case IDC_RADIO_HEX:
|
||||
StringCchPrintf(buffer, size, _T("%I64X"), rpn->i);
|
||||
_stprintf(buffer, _T("%I64X"), rpn->i);
|
||||
break;
|
||||
case IDC_RADIO_DEC:
|
||||
/*
|
||||
@@ -40,11 +40,11 @@ void prepare_rpn_result_2(calc_number_t *rpn, TCHAR *buffer, int size, int base)
|
||||
/* calculate the width of integer number */
|
||||
width = (rpn->f==0) ? 1 : (int)log10(fabs(rpn->f))+1;
|
||||
if (calc.sci_out == TRUE || width > MAX_LD_WIDTH || width < -MAX_LD_WIDTH)
|
||||
StringCchPrintf(buffer, size, _T("%#.*e"), MAX_LD_WIDTH-1, rpn->f);
|
||||
_stprintf(buffer, _T("%#.*e"), MAX_LD_WIDTH-1, rpn->f);
|
||||
else {
|
||||
TCHAR *ptr, *dst;
|
||||
|
||||
StringCchPrintfEx(buffer, size, &ptr, NULL, 0, _T("%#*.*f"), width, ((MAX_LD_WIDTH-width-1)>=0) ? MAX_LD_WIDTH-width-1 : 0, rpn->f);
|
||||
ptr = buffer + _stprintf(buffer, _T("%#*.*f"), width, ((MAX_LD_WIDTH-width-1)>=0) ? MAX_LD_WIDTH-width-1 : 0, rpn->f);
|
||||
/* format string ensures there is a '.': */
|
||||
dst = _tcschr(buffer, _T('.'));
|
||||
while (--ptr > dst)
|
||||
@@ -61,7 +61,7 @@ void prepare_rpn_result_2(calc_number_t *rpn, TCHAR *buffer, int size, int base)
|
||||
#undef MAX_LD_WIDTH
|
||||
break;
|
||||
case IDC_RADIO_OCT:
|
||||
StringCchPrintf(buffer, size, _T("%I64o"), rpn->i);
|
||||
_stprintf(buffer, _T("%I64o"), rpn->i);
|
||||
break;
|
||||
case IDC_RADIO_BIN:
|
||||
if (rpn->i == 0) {
|
||||
|
@@ -107,7 +107,7 @@ void prepare_rpn_result_2(calc_number_t *rpn, TCHAR *buffer, int size, int base)
|
||||
}
|
||||
mpz_clear(zz);
|
||||
mpf_clear(ff);
|
||||
StringCchPrintf(buffer, size, _T("%hs"), temp);
|
||||
_sntprintf(buffer, SIZEOF(calc.buffer), _T("%hs"), temp);
|
||||
}
|
||||
|
||||
void convert_text2number_2(calc_number_t *a)
|
||||
|
@@ -254,10 +254,10 @@ static void UpdateNumberIntl(void)
|
||||
{
|
||||
/* Get current user defaults */
|
||||
if (!GetLocaleInfo(LOCALE_USER_DEFAULT, LOCALE_SDECIMAL, calc.sDecimal, SIZEOF(calc.sDecimal)))
|
||||
StringCbCopy(calc.sDecimal, sizeof(calc.sDecimal), _T("."));
|
||||
_tcscpy(calc.sDecimal, _T("."));
|
||||
|
||||
if (!GetLocaleInfo(LOCALE_USER_DEFAULT, LOCALE_STHOUSAND, calc.sThousand, SIZEOF(calc.sThousand)))
|
||||
StringCbCopy(calc.sThousand, sizeof(calc.sThousand), _T(","));
|
||||
_tcscpy(calc.sThousand, _T(","));
|
||||
|
||||
/* get the string lengths */
|
||||
calc.sDecimal_len = _tcslen(calc.sDecimal);
|
||||
@@ -342,7 +342,7 @@ static void save_config(void)
|
||||
switch (osvi.dwPlatformId) {
|
||||
case VER_PLATFORM_WIN32s:
|
||||
case VER_PLATFORM_WIN32_WINDOWS:
|
||||
StringCbPrintf(buf, sizeof(buf), _T("%lu"), calc.layout);
|
||||
_stprintf(buf, _T("%lu"), calc.layout);
|
||||
WriteProfileString(_T("SciCalc"), _T("layout"), buf);
|
||||
WriteProfileString(_T("SciCalc"), _T("UseSep"), (calc.usesep==TRUE) ? _T("1") : _T("0"));
|
||||
break;
|
||||
@@ -496,16 +496,16 @@ static void update_lcd_display(HWND hwnd)
|
||||
TCHAR tmp[MAX_CALC_SIZE * 2 + 2];
|
||||
|
||||
if (calc.buffer[0] == _T('\0'))
|
||||
StringCbCopy(tmp, sizeof(tmp), _T("0"));
|
||||
_tcscpy(tmp, _T("0"));
|
||||
else
|
||||
StringCbCopy(tmp, sizeof(tmp), calc.buffer);
|
||||
_tcscpy(tmp, calc.buffer);
|
||||
|
||||
/* Add final '.' in decimal mode (if it's missing), but
|
||||
* only if it's a result: no append if it prints "ERROR".
|
||||
*/
|
||||
if (calc.base == IDC_RADIO_DEC && !calc.is_nan) {
|
||||
if (_tcschr(tmp, _T('.')) == NULL)
|
||||
StringCbCat(tmp, sizeof(tmp), _T("."));
|
||||
_tcscat(tmp, _T("."));
|
||||
}
|
||||
/* if separator mode is on, let's add an additional space */
|
||||
if (calc.usesep && !calc.sci_in && !calc.sci_out && !calc.is_nan) {
|
||||
@@ -573,14 +573,13 @@ static void update_parent_display(HWND hWnd)
|
||||
if (!n)
|
||||
str[0] = _T('\0');
|
||||
else
|
||||
StringCbPrintf(str, sizeof(str), _T("(=%d"), n);
|
||||
_stprintf(str,_T("(=%d"), n);
|
||||
SetDlgItemText(hWnd, IDC_TEXT_PARENT, str);
|
||||
}
|
||||
|
||||
static void build_operand(HWND hwnd, DWORD idc)
|
||||
{
|
||||
unsigned int i = 0, n;
|
||||
size_t cbPtr;
|
||||
|
||||
if (idc == IDC_BUTTON_DOT) {
|
||||
/* if dot is the first char, it's added automatically */
|
||||
@@ -618,14 +617,12 @@ static void build_operand(HWND hwnd, DWORD idc)
|
||||
if (idc != IDC_STATIC)
|
||||
calc.esp = (calc.esp * 10 + (key2code[i].key-'0')) % LOCAL_EXP_SIZE;
|
||||
if (calc.ptr == calc.buffer)
|
||||
StringCbPrintf(calc.ptr, sizeof(calc.buffer), _T("0.e%+d"), calc.esp);
|
||||
_stprintf(calc.ptr, _T("0.e%+d"), calc.esp);
|
||||
else {
|
||||
/* adds the dot at the end if the number has no decimal part */
|
||||
if (!_tcschr(calc.buffer, _T('.')))
|
||||
*calc.ptr++ = _T('.');
|
||||
|
||||
cbPtr = sizeof(calc.buffer) - ((BYTE*)calc.ptr - (BYTE*)calc.buffer);
|
||||
StringCbPrintf(calc.ptr, cbPtr, _T("e%+d"), calc.esp);
|
||||
_stprintf(calc.ptr, _T("e%+d"), calc.esp);
|
||||
}
|
||||
update_lcd_display(hwnd);
|
||||
return;
|
||||
@@ -640,11 +637,7 @@ static void build_operand(HWND hwnd, DWORD idc)
|
||||
return;
|
||||
break;
|
||||
}
|
||||
|
||||
cbPtr = sizeof(calc.buffer) - ((BYTE*)calc.ptr - (BYTE*)calc.buffer);
|
||||
StringCbPrintfEx(calc.ptr, cbPtr, &calc.ptr, NULL, STRSAFE_FILL_ON_FAILURE,
|
||||
_T("%C"), key2code[i].key);
|
||||
|
||||
calc.ptr += _stprintf(calc.ptr, _T("%C"), key2code[i].key);
|
||||
update_lcd_display(hwnd);
|
||||
}
|
||||
|
||||
@@ -857,11 +850,11 @@ static void update_memory_flag(HWND hWnd, BOOL mem_flag)
|
||||
SetDlgItemText(hWnd, IDC_TEXT_MEMORY, mem_flag ? _T("M") : _T(""));
|
||||
}
|
||||
|
||||
static void update_n_stats_items(HWND hWnd, TCHAR *buffer, size_t cbBuffer)
|
||||
static void update_n_stats_items(HWND hWnd, TCHAR *buffer)
|
||||
{
|
||||
unsigned int n = SendDlgItemMessage(hWnd, IDC_LIST_STAT, LB_GETCOUNT, 0, 0);
|
||||
|
||||
StringCbPrintf(buffer, cbBuffer, _T("n=%u"), n);
|
||||
_stprintf(buffer, _T("n=%u"), n);
|
||||
SetDlgItemText(hWnd, IDC_TEXT_NITEMS, buffer);
|
||||
}
|
||||
|
||||
@@ -912,7 +905,7 @@ static char *ReadConversion(const char *formula)
|
||||
str[len+1] = ')';
|
||||
str[len+2] = '\0';
|
||||
|
||||
StringCbCopy(calc.source, sizeof(calc.source), (*calc.buffer == _T('\0')) ? _T("0") : calc.buffer);
|
||||
_tcscpy(calc.source, (*calc.buffer == _T('\0')) ? _T("0") : calc.buffer);
|
||||
|
||||
/* clear display content before proceeding */
|
||||
calc.ptr = calc.buffer;
|
||||
@@ -949,13 +942,13 @@ static INT_PTR CALLBACK DlgStatProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp)
|
||||
if (n == LB_ERR)
|
||||
return TRUE;
|
||||
SendDlgItemMessage(hWnd, IDC_LIST_STAT, LB_DELETESTRING, (WPARAM)n, 0);
|
||||
update_n_stats_items(hWnd, buffer, sizeof(buffer));
|
||||
update_n_stats_items(hWnd, buffer);
|
||||
delete_stat_item(n);
|
||||
return TRUE;
|
||||
case IDC_BUTTON_CAD:
|
||||
SendDlgItemMessage(hWnd, IDC_LIST_STAT, LB_RESETCONTENT, 0, 0);
|
||||
clean_stat_list();
|
||||
update_n_stats_items(hWnd, buffer, sizeof(buffer));
|
||||
update_n_stats_items(hWnd, buffer);
|
||||
return TRUE;
|
||||
}
|
||||
break;
|
||||
@@ -971,7 +964,7 @@ static INT_PTR CALLBACK DlgStatProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp)
|
||||
buffer, SIZEOF(buffer),
|
||||
((statistic_t *)lp)->base);
|
||||
SendDlgItemMessage(hWnd, IDC_LIST_STAT, LB_ADDSTRING, 0, (LPARAM)buffer);
|
||||
update_n_stats_items(hWnd, buffer, sizeof(buffer));
|
||||
update_n_stats_items(hWnd, buffer);
|
||||
return TRUE;
|
||||
}
|
||||
return FALSE;
|
||||
@@ -993,13 +986,11 @@ static void CopyMemToClipboard(void *ptr)
|
||||
if(OpenClipboard(NULL)) {
|
||||
HGLOBAL clipbuffer;
|
||||
TCHAR *buffer;
|
||||
size_t cbBuffer;
|
||||
|
||||
EmptyClipboard();
|
||||
cbBuffer = (_tcslen(ptr) + 1) * sizeof(TCHAR);
|
||||
clipbuffer = GlobalAlloc(GMEM_DDESHARE, cbBuffer);
|
||||
clipbuffer = GlobalAlloc(GMEM_DDESHARE, (_tcslen(ptr)+1)*sizeof(TCHAR));
|
||||
buffer = (TCHAR *)GlobalLock(clipbuffer);
|
||||
StringCbCopy(buffer, cbBuffer, ptr);
|
||||
_tcscpy(buffer, ptr);
|
||||
GlobalUnlock(clipbuffer);
|
||||
#ifdef UNICODE
|
||||
SetClipboardData(CF_UNICODETEXT,clipbuffer);
|
||||
@@ -1065,8 +1056,9 @@ static char *handle_sequence_input(HWND hwnd, sequence_t *seq)
|
||||
}
|
||||
} else
|
||||
if (ch == '$') {
|
||||
StringCbCopyEx(calc.buffer, sizeof(calc.buffer), calc.source, &calc.ptr, NULL,
|
||||
STRSAFE_FILL_ON_FAILURE);
|
||||
calc.ptr =
|
||||
_tcscpy(calc.buffer, calc.source) +
|
||||
_tcslen(calc.source);
|
||||
} else {
|
||||
for (x=0; x<SIZEOF(key2code); x++) {
|
||||
if (!(key2code[x].mask & BITMASK_IS_ASCII) ||
|
||||
@@ -1635,7 +1627,7 @@ static INT_PTR CALLBACK DlgMainProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp)
|
||||
case IDC_BUTTON_D:
|
||||
case IDC_BUTTON_E:
|
||||
case IDC_BUTTON_F:
|
||||
if (calc.is_nan) break;
|
||||
calc.is_nan = FALSE;
|
||||
build_operand(hWnd, LOWORD(wp));
|
||||
return TRUE;
|
||||
case IDC_BUTTON_PERCENT:
|
||||
@@ -1701,7 +1693,6 @@ static INT_PTR CALLBACK DlgMainProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp)
|
||||
}
|
||||
return TRUE;
|
||||
case IDC_BUTTON_BACK:
|
||||
if (calc.is_nan) break;
|
||||
if (calc.sci_in) {
|
||||
if (calc.esp == 0) {
|
||||
TCHAR *ptr;
|
||||
@@ -1954,9 +1945,9 @@ int WINAPI _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdL
|
||||
hInstance,
|
||||
MAKEINTRESOURCE(IDI_CALC),
|
||||
IMAGE_ICON,
|
||||
0,
|
||||
0,
|
||||
LR_DEFAULTSIZE | LR_SHARED);
|
||||
GetSystemMetrics(SM_CXICON),
|
||||
GetSystemMetrics(SM_CYICON),
|
||||
0);
|
||||
|
||||
calc.hSmIcon = LoadImage(
|
||||
hInstance,
|
||||
@@ -1964,7 +1955,7 @@ int WINAPI _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdL
|
||||
IMAGE_ICON,
|
||||
GetSystemMetrics(SM_CXSMICON),
|
||||
GetSystemMetrics(SM_CYSMICON),
|
||||
LR_SHARED);
|
||||
0);
|
||||
|
||||
do {
|
||||
/* ignore hwnd: dialogs are already visible! */
|
||||
@@ -1994,6 +1985,12 @@ int WINAPI _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdL
|
||||
save_config();
|
||||
} while (calc.action != IDC_STATIC);
|
||||
|
||||
if (calc.hBgIcon != NULL)
|
||||
DestroyIcon(calc.hBgIcon);
|
||||
|
||||
if (calc.hSmIcon != NULL)
|
||||
DestroyIcon(calc.hSmIcon);
|
||||
|
||||
stop_rpn_engine();
|
||||
|
||||
Theme_Stop();
|
||||
|
@@ -2,7 +2,7 @@
|
||||
* FILE: base/applications/charmap/lang/ro-RO.rc
|
||||
* ReactOS Project (https://reactos.org)
|
||||
* TRANSLATORS: Copyright 2011-2018 Ștefan Fulea <stefan.fulea@mail.com>
|
||||
* Copyright 2023-2024 Andrei Miloiu <miloiuandrei@gmail.com>
|
||||
* Copyright 2023 Andrei Miloiu <miloiuandrei@gmail.com>
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
|
||||
@@ -46,7 +46,7 @@ CAPTION "Despre"
|
||||
FONT 8, "MS Shell Dlg", 0, 0
|
||||
STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
||||
BEGIN
|
||||
LTEXT "Plan caractere v0.1\nDrept de autor (C) 2007 Ged Murphy (gedmurphy@reactos.org)\nTraducere de Ștefan Fulea (stefan.fulea@mail.com)", IDC_STATIC, 48, 7, 210, 36
|
||||
LTEXT "Hartă de caractere v0.1\nDrept de autor (C) 2007 Ged Murphy (gedmurphy@reactos.org)\nTraducere de Ștefan Fulea (stefan.fulea@mail.com)", IDC_STATIC, 48, 7, 210, 36
|
||||
PUSHBUTTON "Î&nchide", IDOK, 105, 162, 44, 15
|
||||
ICON IDI_ICON, IDC_STATIC, 10, 10, 7, 30
|
||||
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 254, 107, WS_VISIBLE | WS_VSCROLL |
|
||||
@@ -57,7 +57,7 @@ STRINGTABLE
|
||||
BEGIN
|
||||
IDS_LICENSE "Această aplicație este publică; fiind permisă modificarea și/sau (re)distribuția sa în termenii Licenței Publice Generale GNU publicată de Free Software Foundation; sau versiunea 2 a Licenței, sau (la alegere) a oricărei versiuni ulterioare.\r\n\r\nAceastă aplicație este distribuită doar în speranța de a fi utilă, FĂRĂ însă NICI O GARANȚIE; nici măcar cu garanția implicită a VANDABILITĂȚII sau a UTILITĂȚII ÎNTR-UN SCOP ANUME. Pentru mai multe detalii consultați Licența Publică Generală GNU.\r\n\r\nPuteți vedea această licență aici:\r\nhttp://www.gnu.org/licenses/gpl.html\r\n\r\nDe asemenea puteți consulta traduceri neoficiale ale acestei licențe aici:\r\nhttp://www.gnu.org/licenses/translations.html"
|
||||
IDS_ABOUT "&Despre…"
|
||||
IDS_TITLE "Plan caractere"
|
||||
IDS_TITLE "Hartă de caractere"
|
||||
IDS_UNICODE "Unicode"
|
||||
IDS_ALL "Toate"
|
||||
END
|
||||
|
@@ -54,5 +54,5 @@ BEGIN
|
||||
IDS_ABOUT "&О программе..."
|
||||
IDS_TITLE "Таблица символов"
|
||||
IDS_UNICODE "Unicode"
|
||||
IDS_ALL "Все"
|
||||
IDS_ALL "All"
|
||||
END
|
||||
|
@@ -93,7 +93,7 @@ extern void LoadSettings(void)
|
||||
lstatus = RegQueryValueEx(hKey, _T("Advanced"), NULL, &type, (LPBYTE)&dwAdvancedChecked, &size);
|
||||
if (lstatus == ERROR_SUCCESS && type == REG_DWORD && dwAdvancedChecked != FALSE)
|
||||
{
|
||||
SendDlgItemMessage(hCharmapDlg, IDC_CHECK_ADVANCED, BM_CLICK, 0, 0);
|
||||
SendDlgItemMessage(hCharmapDlg, IDC_CHECK_ADVANCED, BM_CLICK, MF_CHECKED, 0);
|
||||
}
|
||||
|
||||
RegCloseKey(hKey);
|
||||
|
@@ -248,11 +248,13 @@ static int OnCommand(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
||||
|
||||
case CMD_ABOUT:
|
||||
{
|
||||
HICON hIcon;
|
||||
WCHAR szTitle[MAX_STRING_LEN];
|
||||
|
||||
hIcon = LoadIconW(Globals.hInstance, MAKEINTRESOURCE(CLIPBRD_ICON));
|
||||
LoadStringW(Globals.hInstance, STRING_CLIPBOARD, szTitle, ARRAYSIZE(szTitle));
|
||||
ShellAboutW(Globals.hMainWnd, szTitle, NULL,
|
||||
LoadIconW(Globals.hInstance, MAKEINTRESOURCEW(CLIPBRD_ICON)));
|
||||
ShellAboutW(Globals.hMainWnd, szTitle, NULL, hIcon);
|
||||
DeleteObject(hIcon);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -358,13 +360,6 @@ static void OnPaint(HWND hWnd, WPARAM wParam, LPARAM lParam)
|
||||
break;
|
||||
}
|
||||
|
||||
case CF_HDROP:
|
||||
{
|
||||
GetClientRect(hWnd, &rc);
|
||||
HDropFromClipboard(hdc, &rc);
|
||||
break;
|
||||
}
|
||||
|
||||
default:
|
||||
{
|
||||
GetClientRect(hWnd, &rc);
|
||||
|
@@ -50,9 +50,6 @@ CLPFILE_ICON ICON "res/clpfile.ico"
|
||||
#ifdef LANGUAGE_IT_IT
|
||||
#include "lang/it-IT.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_JA_JP
|
||||
#include "lang/ja-JP.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_PL_PL
|
||||
#include "lang/pl-PL.rc"
|
||||
#endif
|
||||
|
@@ -164,8 +164,7 @@ UINT GetAutomaticClipboardFormat(void)
|
||||
CF_DSPBITMAP,
|
||||
CF_DSPMETAFILEPICT,
|
||||
CF_DSPENHMETAFILE,
|
||||
CF_PALETTE,
|
||||
CF_HDROP
|
||||
CF_PALETTE
|
||||
};
|
||||
|
||||
return GetPriorityClipboardFormat(uFormatList, ARRAYSIZE(uFormatList));
|
||||
|
@@ -1,65 +0,0 @@
|
||||
LANGUAGE LANG_JAPANESE, SUBLANG_DEFAULT
|
||||
|
||||
ID_ACCEL ACCELERATORS
|
||||
BEGIN
|
||||
VK_DELETE, CMD_DELETE, VIRTKEY
|
||||
END
|
||||
|
||||
MAIN_MENU MENU
|
||||
BEGIN
|
||||
POPUP "ファイル(&F)"
|
||||
BEGIN
|
||||
MENUITEM "開く(&O)...", CMD_OPEN
|
||||
MENUITEM "名前を付けて保存(&A)...", CMD_SAVE_AS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "終了(&X)", CMD_EXIT
|
||||
END
|
||||
POPUP "編集(&E)"
|
||||
BEGIN
|
||||
MENUITEM "削除(&D)\tDel", CMD_DELETE
|
||||
END
|
||||
POPUP "表示(&D)"
|
||||
BEGIN
|
||||
MENUITEM "自動(&A)", CMD_AUTOMATIC
|
||||
END
|
||||
POPUP "ヘルプ(&H)"
|
||||
BEGIN
|
||||
MENUITEM "ヘルプ トピック(&H)", CMD_HELP
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "バージョン情報(&A)", CMD_ABOUT
|
||||
END
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
STRING_CLIPBOARD "クリップボード ビュア"
|
||||
STRING_CLIPFILE "クリップボードの要素"
|
||||
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 "Unicode テキスト"
|
||||
STRING_CF_DIB "DIB ビットマップ"
|
||||
STRING_CF_LOCALE "ロケール データ"
|
||||
STRING_CF_ENHMETAFILE "拡張メタファイル"
|
||||
STRING_CF_METAFILEPICT "メタファイル"
|
||||
STRING_CF_PALETTE "カラー パレット"
|
||||
STRING_CF_DIBV5 "DIB ビットマップ (バージョン 5)"
|
||||
STRING_CF_SYLK "シンボリック リンク形式"
|
||||
STRING_CF_DIF "データ交換フォーマット"
|
||||
STRING_CF_HDROP "ドロップ データ"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
ERROR_UNSUPPORTED_FORMAT "表示できない形式のデータがクリップボードにあります。"
|
||||
ERROR_INVALID_FILE_FORMAT "選択したファイルは有効なクリップボードファイルではありません。"
|
||||
END
|
@@ -1,11 +1,4 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Clipboard
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Romanian resource file
|
||||
* TRANSLATORS: Copyright 2011-2019 Ștefan Fulea <stefan.fulea@mail.com>
|
||||
* Copyright 2023-2024 Andrei Miloiu <miloiuandrei@gmail.com>
|
||||
*/
|
||||
|
||||
/* Translator: Ștefan Fulea (stefan dot fulea at mail dot com) */
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
|
||||
|
||||
ID_ACCEL ACCELERATORS
|
||||
@@ -18,13 +11,13 @@ BEGIN
|
||||
POPUP "&Fișier"
|
||||
BEGIN
|
||||
MENUITEM "&Deschidere…", CMD_OPEN
|
||||
MENUITEM "S&alvare ca…", CMD_SAVE_AS
|
||||
MENUITEM "Păst&rare ca…", CMD_SAVE_AS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "I&eșire", CMD_EXIT
|
||||
END
|
||||
POPUP "&Editare"
|
||||
BEGIN
|
||||
MENUITEM "Șt&ergere\tDel", CMD_DELETE
|
||||
MENUITEM "Șt&erge\tDel", CMD_DELETE
|
||||
END
|
||||
POPUP "&Afișare"
|
||||
BEGIN
|
||||
@@ -42,8 +35,8 @@ STRINGTABLE
|
||||
BEGIN
|
||||
STRING_CLIPBOARD "Inspector de Clipboard"
|
||||
STRING_CLIPFILE "Element de Clipboard"
|
||||
STRING_DELETE_MSG "Eliminare conținut din Clipboard?"
|
||||
STRING_DELETE_TITLE "Curățare Clipboard"
|
||||
STRING_DELETE_MSG "Elimină conținutul din Clipboard?"
|
||||
STRING_DELETE_TITLE "Curăță Clipboard"
|
||||
STRING_FORMAT_NT "Fișiere clipboard pentru ReactOS (*.clp)"
|
||||
STRING_FORMAT_GEN "Fișiere clipboard (*.clp)"
|
||||
END
|
||||
|
@@ -331,45 +331,6 @@ void PlayEnhMetaFileFromClipboard(HDC hdc, const RECT *lpRect)
|
||||
PlayEnhMetaFile(hdc, hEmf, lpRect);
|
||||
}
|
||||
|
||||
static LPWSTR AllocStrCat(LPWSTR psz, LPCWSTR cat)
|
||||
{
|
||||
INT cch;
|
||||
LPWSTR pszNew;
|
||||
|
||||
if (psz == NULL)
|
||||
return _wcsdup(cat);
|
||||
|
||||
cch = lstrlenW(psz) + lstrlenW(cat) + 1;
|
||||
pszNew = realloc(psz, cch * sizeof(WCHAR));
|
||||
if (!pszNew)
|
||||
return psz;
|
||||
|
||||
lstrcatW(pszNew, cat);
|
||||
return pszNew;
|
||||
}
|
||||
|
||||
void HDropFromClipboard(HDC hdc, const RECT *lpRect)
|
||||
{
|
||||
LPWSTR pszAlloc = NULL;
|
||||
WCHAR szFile[MAX_PATH + 2];
|
||||
HDROP hDrop = (HDROP)GetClipboardData(CF_HDROP);
|
||||
UINT iFile, cFiles = DragQueryFileW(hDrop, 0xFFFFFFFF, NULL, 0);
|
||||
RECT rc = *lpRect;
|
||||
|
||||
FillRect(hdc, &rc, (HBRUSH)(COLOR_WINDOW + 1));
|
||||
|
||||
for (iFile = 0; iFile < cFiles; ++iFile)
|
||||
{
|
||||
DragQueryFileW(hDrop, iFile, szFile, _countof(szFile));
|
||||
lstrcatW(szFile, L"\r\n");
|
||||
pszAlloc = AllocStrCat(pszAlloc, szFile);
|
||||
}
|
||||
|
||||
DrawTextW(hdc, pszAlloc, -1, &rc,
|
||||
DT_LEFT | DT_NOPREFIX | DT_EXTERNALLEADING | DT_WORD_ELLIPSIS);
|
||||
free(pszAlloc);
|
||||
}
|
||||
|
||||
BOOL RealizeClipboardPalette(HDC hdc)
|
||||
{
|
||||
BOOL Success;
|
||||
|
@@ -17,5 +17,4 @@ void BitBltFromClipboard(PAINTSTRUCT ps, SCROLLSTATE state, DWORD dwRop);
|
||||
void SetDIBitsToDeviceFromClipboard(UINT uFormat, PAINTSTRUCT ps, SCROLLSTATE state, UINT fuColorUse);
|
||||
void PlayMetaFileFromClipboard(HDC hdc, const RECT *lpRect);
|
||||
void PlayEnhMetaFileFromClipboard(HDC hdc, const RECT *lpRect);
|
||||
void HDropFromClipboard(HDC hdc, const RECT *lpRect);
|
||||
BOOL RealizeClipboardPalette(HDC hdc);
|
||||
|
@@ -1,10 +1,4 @@
|
||||
/*
|
||||
* PROJECT: ReactOS AT utility
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Romanian resource file
|
||||
* TRANSLATORS: Copyright 2011-2019 Ștefan Fulea <stefan.fulea@mail.com>
|
||||
* Copyright 2023 Andrei Miloiu <miloiuandrei@gmail.com>
|
||||
*/
|
||||
/* Translator: Ștefan Fulea (stefan dot fulea at mail dot com) */
|
||||
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
|
||||
|
||||
@@ -39,7 +33,7 @@ timp Specifică timpul de lansare a comenzii.\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_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"
|
||||
|
@@ -31,7 +31,7 @@ id Порядковый номер запланированно
|
||||
IDS_CONFIRM_YES "Y"
|
||||
IDS_CONFIRM_NO "N"
|
||||
|
||||
IDS_DELETE_ALL "Эта операция удалит все запланированные задачи.\n"
|
||||
IDS_DELETE_ALL "This operation will delete all scheduled jobs.\n"
|
||||
IDS_NEW_JOB "Добавлено новое задание с ID = %lu\n"
|
||||
IDS_JOBS_LIST "Статус ID День Время Команда\n"
|
||||
IDS_NO_ENTRIES "В списке нет запланированных задач.\n"
|
||||
|
@@ -1,10 +1,35 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Attrib Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Displays or changes file attributes recursively.
|
||||
* COPYRIGHT: Copyright 1998-2019 Eric Kohl <eric.kohl@reactos.org>
|
||||
* Copyright 2021 Doug Lyons <douglyons@douglyons.com>
|
||||
* Copyright 2021-2023 Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
|
||||
* ATTRIB.C - attrib internal command.
|
||||
*
|
||||
*
|
||||
* History:
|
||||
*
|
||||
* 04-Dec-1998 Eric Kohl
|
||||
* started
|
||||
*
|
||||
* 09-Dec-1998 Eric Kohl
|
||||
* implementation works, except recursion ("attrib /s").
|
||||
*
|
||||
* 05-Jan-1999 Eric Kohl
|
||||
* major rewrite.
|
||||
* fixed recursion ("attrib /s").
|
||||
* started directory support ("attrib /s /d").
|
||||
* updated help text.
|
||||
*
|
||||
* 14-Jan-1999 Eric Kohl
|
||||
* Unicode ready!
|
||||
*
|
||||
* 19-Jan-1999 Eric Kohl
|
||||
* Redirection ready!
|
||||
*
|
||||
* 21-Jan-1999 Eric Kohl
|
||||
* Added check for invalid filenames.
|
||||
*
|
||||
* 23-Jan-1999 Eric Kohl
|
||||
* Added handling of multiple filenames.
|
||||
*
|
||||
* 02-Apr-2005 (Magnus Olsen <magnus@greatlord.com>)
|
||||
* Remove all hardcoded strings in En.rc
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
@@ -14,22 +39,15 @@
|
||||
#include <winbase.h>
|
||||
#include <wincon.h>
|
||||
#include <winuser.h>
|
||||
#include <strsafe.h>
|
||||
|
||||
#include <conutils.h>
|
||||
|
||||
#include "resource.h"
|
||||
|
||||
/* Enable to support extended attributes.
|
||||
* See https://ss64.com/nt/attrib.html for an exhaustive list. */
|
||||
// TODO: If you enable this, translations need to be updated as well!
|
||||
//#define EXTENDED_ATTRIBUTES
|
||||
|
||||
#define ALL_FILES_PATTERN L"*.*" // It may also be possible to use L"*" (shorter)
|
||||
|
||||
CON_SCREEN StdOutScreen = INIT_CON_SCREEN(StdOut);
|
||||
|
||||
static VOID
|
||||
static
|
||||
VOID
|
||||
ErrorMessage(
|
||||
_In_ DWORD dwErrorCode,
|
||||
_In_opt_ PCWSTR pszMsg,
|
||||
@@ -59,257 +77,217 @@ ErrorMessage(
|
||||
ConPrintf(StdErr, L" %s\n", pszMsg);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief Displays attributes for the given file.
|
||||
* @return Always TRUE (success).
|
||||
**/
|
||||
static BOOL
|
||||
PrintAttributes(
|
||||
_In_ PWIN32_FIND_DATAW pFindData,
|
||||
_In_ PCWSTR pszFullName,
|
||||
_Inout_opt_ PVOID Context)
|
||||
/* Returns TRUE if anything is printed, FALSE otherwise */
|
||||
static
|
||||
BOOL
|
||||
PrintAttribute(
|
||||
LPWSTR pszPath,
|
||||
LPWSTR pszFile,
|
||||
BOOL bRecurse,
|
||||
BOOL bDirectories)
|
||||
{
|
||||
DWORD dwAttributes = pFindData->dwFileAttributes;
|
||||
|
||||
UNREFERENCED_PARAMETER(Context);
|
||||
|
||||
ConPrintf(StdOut,
|
||||
#ifdef EXTENDED_ATTRIBUTES
|
||||
L"%c %c%c%c %c %s\n",
|
||||
#else
|
||||
L"%c %c%c%c %s\n",
|
||||
#endif
|
||||
(dwAttributes & FILE_ATTRIBUTE_ARCHIVE) ? L'A' : L' ',
|
||||
(dwAttributes & FILE_ATTRIBUTE_SYSTEM) ? L'S' : L' ',
|
||||
(dwAttributes & FILE_ATTRIBUTE_HIDDEN) ? L'H' : L' ',
|
||||
(dwAttributes & FILE_ATTRIBUTE_READONLY) ? L'R' : L' ',
|
||||
#ifdef EXTENDED_ATTRIBUTES
|
||||
(dwAttributes & FILE_ATTRIBUTE_NOT_CONTENT_INDEXED) ? L'I' : L' ',
|
||||
#endif
|
||||
pszFullName);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
typedef struct _ATTRIBS_MASKS
|
||||
{
|
||||
DWORD dwMask;
|
||||
DWORD dwAttrib;
|
||||
} ATTRIBS_MASKS, *PATTRIBS_MASKS;
|
||||
|
||||
/**
|
||||
* @brief Changes attributes for the given file.
|
||||
* @return TRUE if anything changed, FALSE otherwise.
|
||||
**/
|
||||
static BOOL
|
||||
ChangeAttributes(
|
||||
_In_ PWIN32_FIND_DATAW pFindData,
|
||||
_In_ PCWSTR pszFullName,
|
||||
_Inout_opt_ PVOID Context)
|
||||
{
|
||||
PATTRIBS_MASKS AttribsMasks = (PATTRIBS_MASKS)Context;
|
||||
DWORD dwAttributes;
|
||||
|
||||
dwAttributes = ((pFindData->dwFileAttributes & ~AttribsMasks->dwMask) | AttribsMasks->dwAttrib);
|
||||
return SetFileAttributesW(pszFullName, dwAttributes);
|
||||
}
|
||||
|
||||
|
||||
#define ENUM_RECURSE 0x01
|
||||
#define ENUM_DIRECTORIES 0x02
|
||||
|
||||
typedef BOOL
|
||||
(*PENUMFILES_CALLBACK)(
|
||||
_In_ PWIN32_FIND_DATAW pFindData,
|
||||
_In_ PCWSTR pszFullName,
|
||||
_Inout_opt_ PVOID Context);
|
||||
|
||||
typedef struct _ENUMFILES_CTX
|
||||
{
|
||||
/* Fixed data */
|
||||
_In_ PCWSTR FileName;
|
||||
_In_ DWORD Flags;
|
||||
|
||||
/* Callback invoked on each enumerated file/directory */
|
||||
_In_ PENUMFILES_CALLBACK Callback;
|
||||
_In_ PVOID Context;
|
||||
|
||||
/* Dynamic data */
|
||||
WIN32_FIND_DATAW findData;
|
||||
ULONG uReparseLevel;
|
||||
|
||||
/* The full path buffer the function will act recursively */
|
||||
// PWSTR FullPath; // Use a relocated buffer once long paths become supported!
|
||||
size_t cchBuffer; // Buffer size
|
||||
WCHAR FullPathBuffer[MAX_PATH + _countof("\\" ALL_FILES_PATTERN)];
|
||||
|
||||
} ENUMFILES_CTX, *PENUMFILES_CTX;
|
||||
|
||||
/* Returns TRUE if anything is done, FALSE otherwise */
|
||||
static BOOL
|
||||
EnumFilesWorker(
|
||||
_Inout_ PENUMFILES_CTX EnumCtx,
|
||||
_Inout_ off_t offFilePart) // Offset to the file name inside FullPathBuffer
|
||||
{
|
||||
BOOL bFound = FALSE;
|
||||
HRESULT hRes;
|
||||
HANDLE hFind;
|
||||
PWSTR findFileName = EnumCtx->findData.cFileName;
|
||||
PWSTR pFilePart = EnumCtx->FullPathBuffer + offFilePart;
|
||||
size_t cchRemaining = EnumCtx->cchBuffer - offFilePart;
|
||||
WCHAR szFullName[MAX_PATH];
|
||||
LPWSTR pszFileName;
|
||||
BOOL bFound = FALSE;
|
||||
BOOL bIsDir;
|
||||
BOOL bExactMatch;
|
||||
DWORD Error;
|
||||
|
||||
/* Recurse over all subdirectories */
|
||||
if (EnumCtx->Flags & ENUM_RECURSE)
|
||||
/* prepare full file name buffer */
|
||||
wcscpy(szFullName, pszPath);
|
||||
pszFileName = szFullName + wcslen(szFullName);
|
||||
|
||||
/* display all subdirectories */
|
||||
if (bRecurse)
|
||||
{
|
||||
/* Append '*.*' */
|
||||
hRes = StringCchCopyW(pFilePart, cchRemaining, ALL_FILES_PATTERN);
|
||||
if (hRes != S_OK)
|
||||
{
|
||||
if (hRes == STRSAFE_E_INSUFFICIENT_BUFFER)
|
||||
{
|
||||
// TODO: If this fails, try to reallocate EnumCtx->FullPathBuffer by
|
||||
// increasing its size by _countof(EnumCtx->findData.cFileName) + 1
|
||||
// to satisfy this copy, as well as the one made in the loop below.
|
||||
}
|
||||
// else
|
||||
ConPrintf(StdErr, L"Directory level too deep: %s\n", EnumCtx->FullPathBuffer);
|
||||
return FALSE;
|
||||
}
|
||||
/* append *.* */
|
||||
wcscpy(pszFileName, L"*.*");
|
||||
|
||||
hFind = FindFirstFileW(EnumCtx->FullPathBuffer, &EnumCtx->findData);
|
||||
hFind = FindFirstFileW(szFullName, &findData);
|
||||
if (hFind == INVALID_HANDLE_VALUE)
|
||||
{
|
||||
DWORD Error = GetLastError();
|
||||
if ((Error != ERROR_DIRECTORY) &&
|
||||
(Error != ERROR_SHARING_VIOLATION) &&
|
||||
(Error != ERROR_FILE_NOT_FOUND))
|
||||
Error = GetLastError();
|
||||
if ((Error != ERROR_DIRECTORY) && (Error != ERROR_SHARING_VIOLATION)
|
||||
&& (Error != ERROR_FILE_NOT_FOUND))
|
||||
{
|
||||
ErrorMessage(Error, EnumCtx->FullPathBuffer);
|
||||
ErrorMessage(Error, pszFile);
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
do
|
||||
{
|
||||
BOOL bIsReparse;
|
||||
size_t offNewFilePart;
|
||||
|
||||
if (!(EnumCtx->findData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY))
|
||||
if (!(findData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY))
|
||||
continue;
|
||||
|
||||
if (!wcscmp(findFileName, L".") || !wcscmp(findFileName, L".."))
|
||||
continue;
|
||||
|
||||
/* Allow at most 2 levels of reparse points / symbolic links */
|
||||
bIsReparse = !!(EnumCtx->findData.dwFileAttributes & FILE_ATTRIBUTE_REPARSE_POINT);
|
||||
if (bIsReparse)
|
||||
if (!wcscmp(findData.cFileName, L".") ||
|
||||
!wcscmp(findData.cFileName, L".."))
|
||||
{
|
||||
if (EnumCtx->uReparseLevel < 2)
|
||||
EnumCtx->uReparseLevel++;
|
||||
else
|
||||
continue;
|
||||
continue;
|
||||
}
|
||||
|
||||
hRes = StringCchPrintfExW(pFilePart, cchRemaining,
|
||||
NULL, &offNewFilePart, 0,
|
||||
L"%s\\", findFileName);
|
||||
/* Offset to the new file name part */
|
||||
offNewFilePart = EnumCtx->cchBuffer - offNewFilePart;
|
||||
|
||||
bFound |= EnumFilesWorker(EnumCtx, offNewFilePart);
|
||||
|
||||
/* Recalculate the file part pointer and the number of characters
|
||||
* remaining: the buffer may have been enlarged and relocated. */
|
||||
pFilePart = EnumCtx->FullPathBuffer + offFilePart;
|
||||
cchRemaining = EnumCtx->cchBuffer - offFilePart;
|
||||
|
||||
/* If we went through a reparse point / symbolic link, decrease level */
|
||||
if (bIsReparse)
|
||||
EnumCtx->uReparseLevel--;
|
||||
wcscpy(pszFileName, findData.cFileName);
|
||||
wcscat(pszFileName, L"\\");
|
||||
bFound |= PrintAttribute(szFullName, pszFile, bRecurse, bDirectories);
|
||||
}
|
||||
while (FindNextFileW(hFind, &EnumCtx->findData));
|
||||
while (FindNextFileW(hFind, &findData));
|
||||
FindClose(hFind);
|
||||
}
|
||||
|
||||
/* Append the file name pattern to search for */
|
||||
hRes = StringCchCopyW(pFilePart, cchRemaining, EnumCtx->FileName);
|
||||
/* append file name */
|
||||
wcscpy(pszFileName, pszFile);
|
||||
|
||||
/* Search in the current directory */
|
||||
hFind = FindFirstFileW(EnumCtx->FullPathBuffer, &EnumCtx->findData);
|
||||
/* search current directory */
|
||||
hFind = FindFirstFileW(szFullName, &findData);
|
||||
if (hFind == INVALID_HANDLE_VALUE)
|
||||
{
|
||||
return bFound;
|
||||
}
|
||||
|
||||
do
|
||||
{
|
||||
BOOL bIsDir = !!(EnumCtx->findData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY);
|
||||
BOOL bExactMatch = (wcsicmp(findFileName, EnumCtx->FileName) == 0);
|
||||
bIsDir = findData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY;
|
||||
bExactMatch = wcsicmp(findData.cFileName, pszFile) == 0;
|
||||
|
||||
if (bIsDir && !(EnumCtx->Flags & ENUM_DIRECTORIES) && !bExactMatch)
|
||||
if (bIsDir && !bDirectories && !bExactMatch)
|
||||
continue;
|
||||
|
||||
if (!wcscmp(findFileName, L".") || !wcscmp(findFileName, L".."))
|
||||
if (!wcscmp(findData.cFileName, L".") ||
|
||||
!wcscmp(findData.cFileName, L".."))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
/* If we recursively enumerate files excluding directories,
|
||||
* exclude any directory from the enumeration. */
|
||||
if (bIsDir && !(EnumCtx->Flags & ENUM_DIRECTORIES) && (EnumCtx->Flags & ENUM_RECURSE))
|
||||
continue;
|
||||
wcscpy(pszFileName, findData.cFileName);
|
||||
|
||||
StringCchCopyW(pFilePart, cchRemaining, findFileName);
|
||||
/* bFound = */ EnumCtx->Callback(&EnumCtx->findData, EnumCtx->FullPathBuffer, EnumCtx->Context);
|
||||
ConPrintf(StdOut,
|
||||
L"%c %c%c%c %s\n",
|
||||
(findData.dwFileAttributes & FILE_ATTRIBUTE_ARCHIVE) ? L'A' : L' ',
|
||||
(findData.dwFileAttributes & FILE_ATTRIBUTE_SYSTEM) ? L'S' : L' ',
|
||||
(findData.dwFileAttributes & FILE_ATTRIBUTE_HIDDEN) ? L'H' : L' ',
|
||||
(findData.dwFileAttributes & FILE_ATTRIBUTE_READONLY) ? L'R' : L' ',
|
||||
szFullName);
|
||||
bFound = TRUE;
|
||||
}
|
||||
while (FindNextFileW(hFind, &EnumCtx->findData));
|
||||
while (FindNextFileW(hFind, &findData));
|
||||
FindClose(hFind);
|
||||
|
||||
return bFound;
|
||||
}
|
||||
|
||||
static BOOL
|
||||
AttribEnumFiles(
|
||||
_In_ PCWSTR pszPath,
|
||||
_In_ PCWSTR pszFile,
|
||||
_In_ DWORD fFlags,
|
||||
_In_ PATTRIBS_MASKS AttribsMasks)
|
||||
|
||||
/* Returns TRUE if anything changed, FALSE otherwise */
|
||||
static
|
||||
BOOL
|
||||
ChangeAttribute(
|
||||
LPWSTR pszPath,
|
||||
LPWSTR pszFile,
|
||||
BOOL bRecurse,
|
||||
BOOL bDirectories,
|
||||
DWORD dwMask,
|
||||
DWORD dwAttrib)
|
||||
{
|
||||
ENUMFILES_CTX EnumContext = {0};
|
||||
size_t offFilePart;
|
||||
HRESULT hRes;
|
||||
WIN32_FIND_DATAW findData;
|
||||
HANDLE hFind;
|
||||
WCHAR szFullName[MAX_PATH];
|
||||
LPWSTR pszFileName;
|
||||
BOOL bFound = FALSE;
|
||||
BOOL bIsDir;
|
||||
BOOL bExactMatch;
|
||||
DWORD dwAttribute;
|
||||
DWORD Error;
|
||||
|
||||
EnumContext.FileName = pszFile;
|
||||
EnumContext.Flags = fFlags;
|
||||
EnumContext.Callback = (AttribsMasks->dwMask == 0 ? PrintAttributes : ChangeAttributes);
|
||||
EnumContext.Context = (AttribsMasks->dwMask == 0 ? NULL : AttribsMasks);
|
||||
/* prepare full file name buffer */
|
||||
wcscpy(szFullName, pszPath);
|
||||
pszFileName = szFullName + wcslen(szFullName);
|
||||
|
||||
/* Prepare the full file path buffer */
|
||||
EnumContext.cchBuffer = _countof(EnumContext.FullPathBuffer);
|
||||
hRes = StringCchCopyExW(EnumContext.FullPathBuffer,
|
||||
EnumContext.cchBuffer,
|
||||
pszPath,
|
||||
NULL,
|
||||
&offFilePart,
|
||||
0);
|
||||
if (hRes != S_OK)
|
||||
return FALSE;
|
||||
|
||||
/* Offset to the file name part */
|
||||
offFilePart = EnumContext.cchBuffer - offFilePart;
|
||||
if (EnumContext.FullPathBuffer[offFilePart - 1] != L'\\')
|
||||
/* display all subdirectories */
|
||||
if (bRecurse)
|
||||
{
|
||||
EnumContext.FullPathBuffer[offFilePart] = L'\\';
|
||||
EnumContext.FullPathBuffer[offFilePart + 1] = UNICODE_NULL;
|
||||
offFilePart++;
|
||||
/* append *.* */
|
||||
wcscpy(pszFileName, L"*.*");
|
||||
|
||||
hFind = FindFirstFileW(szFullName, &findData);
|
||||
if (hFind == INVALID_HANDLE_VALUE)
|
||||
{
|
||||
Error = GetLastError();
|
||||
if ((Error != ERROR_DIRECTORY) && (Error != ERROR_SHARING_VIOLATION)
|
||||
&& (Error != ERROR_FILE_NOT_FOUND))
|
||||
{
|
||||
ErrorMessage(Error, pszFile);
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
do
|
||||
{
|
||||
if (!(findData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY))
|
||||
continue;
|
||||
|
||||
if (!wcscmp(findData.cFileName, L".") ||
|
||||
!wcscmp(findData.cFileName, L".."))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
wcscpy(pszFileName, findData.cFileName);
|
||||
wcscat(pszFileName, L"\\");
|
||||
bFound |= ChangeAttribute(szFullName, pszFile, bRecurse, bDirectories,
|
||||
dwMask, dwAttrib);
|
||||
}
|
||||
while (FindNextFileW(hFind, &findData));
|
||||
FindClose(hFind);
|
||||
}
|
||||
|
||||
return EnumFilesWorker(&EnumContext, offFilePart);
|
||||
/* append file name */
|
||||
wcscpy(pszFileName, pszFile);
|
||||
|
||||
/* search current directory */
|
||||
hFind = FindFirstFileW(szFullName, &findData);
|
||||
if (hFind == INVALID_HANDLE_VALUE)
|
||||
{
|
||||
return bFound;
|
||||
}
|
||||
|
||||
do
|
||||
{
|
||||
bIsDir = findData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY;
|
||||
bExactMatch = wcsicmp(findData.cFileName, pszFile) == 0;
|
||||
|
||||
if (bIsDir && !bDirectories && !bExactMatch)
|
||||
continue;
|
||||
|
||||
if (!wcscmp(findData.cFileName, L".") ||
|
||||
!wcscmp(findData.cFileName, L".."))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
if (bRecurse && bIsDir && !bDirectories)
|
||||
continue;
|
||||
|
||||
wcscpy(pszFileName, findData.cFileName);
|
||||
|
||||
dwAttribute = (findData.dwFileAttributes & ~dwMask) | dwAttrib;
|
||||
|
||||
SetFileAttributes(szFullName, dwAttribute);
|
||||
bFound = TRUE;
|
||||
}
|
||||
while (FindNextFileW(hFind, &findData));
|
||||
FindClose(hFind);
|
||||
|
||||
return bFound;
|
||||
}
|
||||
|
||||
int wmain(int argc, WCHAR *argv[])
|
||||
{
|
||||
INT i;
|
||||
DWORD dwEnumFlags = 0;
|
||||
ATTRIBS_MASKS AttribsMasks = {0};
|
||||
BOOL bRecurse = FALSE;
|
||||
BOOL bDirectories = FALSE;
|
||||
DWORD dwAttrib = 0;
|
||||
DWORD dwMask = 0;
|
||||
BOOL bFound = FALSE;
|
||||
PWSTR pszFileName;
|
||||
WCHAR szFilePath[MAX_PATH + 2] = L""; // + 2 to reserve an extra path separator and a NULL-terminator.
|
||||
@@ -331,9 +309,9 @@ int wmain(int argc, WCHAR *argv[])
|
||||
else
|
||||
/* Retrieve the enumeration modes */
|
||||
if (wcsicmp(argv[i], L"/s") == 0)
|
||||
dwEnumFlags |= ENUM_RECURSE;
|
||||
bRecurse = TRUE;
|
||||
else if (wcsicmp(argv[i], L"/d") == 0)
|
||||
dwEnumFlags |= ENUM_DIRECTORIES;
|
||||
bDirectories = TRUE;
|
||||
else
|
||||
{
|
||||
/* Unknown option */
|
||||
@@ -356,47 +334,37 @@ int wmain(int argc, WCHAR *argv[])
|
||||
switch (towupper(argv[i][1]))
|
||||
{
|
||||
case L'A':
|
||||
AttribsMasks.dwMask |= FILE_ATTRIBUTE_ARCHIVE;
|
||||
dwMask |= FILE_ATTRIBUTE_ARCHIVE;
|
||||
if (bAdd)
|
||||
AttribsMasks.dwAttrib |= FILE_ATTRIBUTE_ARCHIVE;
|
||||
dwAttrib |= FILE_ATTRIBUTE_ARCHIVE;
|
||||
else
|
||||
AttribsMasks.dwAttrib &= ~FILE_ATTRIBUTE_ARCHIVE;
|
||||
dwAttrib &= ~FILE_ATTRIBUTE_ARCHIVE;
|
||||
break;
|
||||
|
||||
case L'S':
|
||||
AttribsMasks.dwMask |= FILE_ATTRIBUTE_SYSTEM;
|
||||
dwMask |= FILE_ATTRIBUTE_SYSTEM;
|
||||
if (bAdd)
|
||||
AttribsMasks.dwAttrib |= FILE_ATTRIBUTE_SYSTEM;
|
||||
dwAttrib |= FILE_ATTRIBUTE_SYSTEM;
|
||||
else
|
||||
AttribsMasks.dwAttrib &= ~FILE_ATTRIBUTE_SYSTEM;
|
||||
dwAttrib &= ~FILE_ATTRIBUTE_SYSTEM;
|
||||
break;
|
||||
|
||||
case L'H':
|
||||
AttribsMasks.dwMask |= FILE_ATTRIBUTE_HIDDEN;
|
||||
dwMask |= FILE_ATTRIBUTE_HIDDEN;
|
||||
if (bAdd)
|
||||
AttribsMasks.dwAttrib |= FILE_ATTRIBUTE_HIDDEN;
|
||||
dwAttrib |= FILE_ATTRIBUTE_HIDDEN;
|
||||
else
|
||||
AttribsMasks.dwAttrib &= ~FILE_ATTRIBUTE_HIDDEN;
|
||||
dwAttrib &= ~FILE_ATTRIBUTE_HIDDEN;
|
||||
break;
|
||||
|
||||
case L'R':
|
||||
AttribsMasks.dwMask |= FILE_ATTRIBUTE_READONLY;
|
||||
dwMask |= FILE_ATTRIBUTE_READONLY;
|
||||
if (bAdd)
|
||||
AttribsMasks.dwAttrib |= FILE_ATTRIBUTE_READONLY;
|
||||
dwAttrib |= FILE_ATTRIBUTE_READONLY;
|
||||
else
|
||||
AttribsMasks.dwAttrib &= ~FILE_ATTRIBUTE_READONLY;
|
||||
dwAttrib &= ~FILE_ATTRIBUTE_READONLY;
|
||||
break;
|
||||
|
||||
#ifdef EXTENDED_ATTRIBUTES
|
||||
case L'I':
|
||||
AttribsMasks.dwMask |= FILE_ATTRIBUTE_NOT_CONTENT_INDEXED;
|
||||
if (bAdd)
|
||||
AttribsMasks.dwAttrib |= FILE_ATTRIBUTE_NOT_CONTENT_INDEXED;
|
||||
else
|
||||
AttribsMasks.dwAttrib &= ~FILE_ATTRIBUTE_NOT_CONTENT_INDEXED;
|
||||
break;
|
||||
#endif
|
||||
|
||||
default:
|
||||
ConResPrintf(StdErr, STRING_ERROR_INVALID_PARAM_FORMAT, argv[i]);
|
||||
return -1;
|
||||
@@ -412,10 +380,19 @@ int wmain(int argc, WCHAR *argv[])
|
||||
/* If no file specification was found, operate on all files of the current directory */
|
||||
if (!bFound)
|
||||
{
|
||||
GetCurrentDirectoryW(_countof(szFilePath) - 2, szFilePath);
|
||||
pszFileName = ALL_FILES_PATTERN;
|
||||
DWORD len = GetCurrentDirectoryW(_countof(szFilePath) - 2, szFilePath);
|
||||
if (szFilePath[len - 1] != L'\\')
|
||||
{
|
||||
szFilePath[len] = L'\\';
|
||||
szFilePath[len + 1] = UNICODE_NULL;
|
||||
}
|
||||
pszFileName = L"*.*";
|
||||
|
||||
if (dwMask == 0)
|
||||
bFound = PrintAttribute(szFilePath, pszFileName, bRecurse, bDirectories);
|
||||
else
|
||||
bFound = ChangeAttribute(szFilePath, pszFileName, bRecurse, bDirectories, dwMask, dwAttrib);
|
||||
|
||||
bFound = AttribEnumFiles(szFilePath, pszFileName, dwEnumFlags, &AttribsMasks);
|
||||
if (!bFound)
|
||||
ConResPrintf(StdOut, STRING_FILE_NOT_FOUND, pszFileName);
|
||||
|
||||
@@ -442,7 +419,11 @@ int wmain(int argc, WCHAR *argv[])
|
||||
pszFileName = L"";
|
||||
}
|
||||
|
||||
bFound = AttribEnumFiles(szFilePath, pszFileName, dwEnumFlags, &AttribsMasks);
|
||||
if (dwMask == 0)
|
||||
bFound = PrintAttribute(szFilePath, pszFileName, bRecurse, bDirectories);
|
||||
else
|
||||
bFound = ChangeAttribute(szFilePath, pszFileName, bRecurse, bDirectories, dwMask, dwAttrib);
|
||||
|
||||
if (!bFound)
|
||||
ConResPrintf(StdOut, STRING_FILE_NOT_FOUND, argv[i]);
|
||||
}
|
||||
|
@@ -3,7 +3,6 @@
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Romanian resource file
|
||||
* TRANSLATORS: Copyright 2011-2014 Ștefan Fulea <stefan.fulea@mail.com>
|
||||
* Copyright 2023 Andrei Miloiu <miloiuandrei@gmail.com>
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
|
||||
@@ -24,6 +23,6 @@ ATTRIB [+R | -R] [+A | -A] [+S | -S] [+H | -H] fișier ...\n\
|
||||
Tastați ATTRIB fără argumente pentru afișarea atributelor pentru\n\
|
||||
toate fișierele.\n"
|
||||
STRING_CONSOLE_ERROR "Eroare necunoscută: %d\n"
|
||||
STRING_FILE_NOT_FOUND "Fișierul nu a fost găsit - '%s'\n"
|
||||
STRING_FILE_NOT_FOUND "File not found - '%s'\n"
|
||||
STRING_ERROR_INVALID_PARAM_FORMAT "Formatul argumentului este eronat - %s\n"
|
||||
END
|
||||
|
@@ -26,6 +26,6 @@ ATTRIB [+R | -R] [+A | -A] [+S | -S] [+H | -H] файл ...\n\
|
||||
/D Обработка и файлов, и папок.\n\n\
|
||||
Команда ATTRIB без параметров выводит атрибуты всех файлов.\n"
|
||||
STRING_CONSOLE_ERROR "Неизвестная ошибка: %d\n"
|
||||
STRING_FILE_NOT_FOUND "Файл не найден - '%s'\n"
|
||||
STRING_FILE_NOT_FOUND "File not found - '%s'\n"
|
||||
STRING_ERROR_INVALID_PARAM_FORMAT "Неверный формат параметра - %s\n"
|
||||
END
|
||||
|
@@ -9,7 +9,7 @@ COMP [/L] [/A] [данные1] [данные2]\n\n\
|
||||
/A Вывод различий в формате ASCII (по умолчанию: шестнадцатиричный).\n\
|
||||
/L Вывод номеров строк, в которых обнаружены различия.\n"
|
||||
IDS_INVALIDSWITCH "Недопустимый ключ - /%c\n"
|
||||
IDS_BADSYNTAX "Неверный формат командной строки\n"
|
||||
IDS_BADSYNTAX "Не верный формат командной строки\n"
|
||||
IDS_FILEERROR "Не удалось найти/открыть файл: %s\n"
|
||||
IDS_COMPARING "Сравнение %s и %s...\n"
|
||||
IDS_FILESIZEERROR "Не удалось определить размер файла: %s\n"
|
||||
|
@@ -2,7 +2,7 @@
|
||||
* PROJECT: ReactOS FC Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Romanian resource file
|
||||
* TRANSLATORS: Copyright 2022-2024 Andrei Miloiu <miloiuandrei@gmail.com>
|
||||
* TRANSLATORS: Copyright 2022 Andrei Miloiu <miloiuandrei@gmail.com>
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
|
||||
@@ -39,7 +39,7 @@ FC /B [discul1:][calea1]numele fișierului1 [drive2:][path2]numele fișierului2\
|
||||
IDS_OUT_OF_MEMORY "FC: Fără memorie\n"
|
||||
IDS_CANNOT_READ "FC: nu poate fi citit din %ls\n"
|
||||
IDS_INVALID_SWITCH "FC: Comutator nevalidh\n"
|
||||
IDS_CANNOT_OPEN "FC: nu poate fi deschis %ls - Nu există un astfel de fișier sau folder\n"
|
||||
IDS_CANNOT_OPEN "FC: nu poate fi deschis %ls - Nu există un astfel de fișier sau dosar\n"
|
||||
IDS_NEEDS_FILES "FC: Număr insuficient de specificații pentru fișiere\n"
|
||||
IDS_CANT_USE_WILDCARD "Semnele speciale ('*' și '?') nu sunt acceptate deocamdată\n"
|
||||
IDS_DIFFERENT "FC: Fișierele %ls și %ls sunt diferite\n"
|
||||
|
@@ -30,9 +30,9 @@ FC /B [диск1:][путь1]имя_файла1 [диск2:][путь2]имя_ф
|
||||
IDS_LONGER_THAN "FC: %ls длиннее, чем %ls\n"
|
||||
IDS_COMPARING "Сравнение файлов %ls и %ls\n"
|
||||
IDS_OUT_OF_MEMORY "FC: Недостаточно памяти\n"
|
||||
IDS_CANNOT_READ "FC: Не удаётся прочитать %ls\n"
|
||||
IDS_CANNOT_READ "FC: не удаётся прочитать %ls\n"
|
||||
IDS_INVALID_SWITCH "FC: Недопустимый ключ\n"
|
||||
IDS_CANNOT_OPEN "FC: Не удаётся открыть %ls - файл либо папка не существует\n"
|
||||
IDS_CANNOT_OPEN "FC: не удаётся открыть %ls - файл либо папка не существует\n"
|
||||
IDS_NEEDS_FILES "FC: Недостаточное количество имён файлов\n"
|
||||
IDS_CANT_USE_WILDCARD "Подстановочные знаки ('*' и '?') пока не поддерживаются\n"
|
||||
IDS_DIFFERENT "FC: Файлы %ls и %ls различны\n"
|
||||
|
@@ -1,9 +1,9 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Find Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Romanian resource file
|
||||
* TRANSLATORS: Copyright 2011-2019 Ștefan Fulea <stefan.fulea@mail.com>
|
||||
* Copyright 2023 Andrei Miloiu <miloiuandrei@gmail.com>
|
||||
* FILE: base/applications/cmdutils/find/lang/ro-RO.rc
|
||||
* ReactOS Project (https://reactos.org)
|
||||
* TRANSLATOR: Fulea Ștefan (PM on ReactOS Forum at fulea.stefan)
|
||||
* CHANGE LOG: 2011-08-20 initial translation
|
||||
* 2011-10-17 diacritics change, other minor changes
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
|
||||
@@ -16,9 +16,8 @@ FIND [/V] [/C] [/N] [/I] [/OFF[LINE]] ""șir"" [fișier...]\n\
|
||||
/C Numără liniile ce conțin șirul.\n\
|
||||
/N Numără rândurile afișate, începând cu 1.\n\
|
||||
/I Ignoră diferențele între majuscule și minuscule.\n\
|
||||
/OFF[LINE] Nu omite fișierele care au configurate atributul\n\
|
||||
offline (deconectat)."
|
||||
/OFF[LINE] Do not skip files that have the offline attribute set."
|
||||
IDS_NO_SUCH_FILE "FIND: Fișierul «%s» nu există!\n"
|
||||
IDS_CANNOT_OPEN "FIND: Fișierul «%s» nu poate fi deschis!\n"
|
||||
IDS_INVALID_SWITCH "FIND: Comutare nevalidă\n"
|
||||
IDS_INVALID_SWITCH "FIND: Invalid switch\n"
|
||||
END
|
||||
|
@@ -8,11 +8,11 @@ FIND [/V] [/C] [/N] [/I] [/OFF[LINE]] ""строка"" [[диск:][путь]и
|
||||
/C Вывод только общего числа строк, содержащих заданную строку.\n\
|
||||
/N Вывод номеров отображаемых строк.\n\
|
||||
/I Поиск без учета регистра символов.\n\
|
||||
/OFF[LINE] Не пропускать файлы, у которых установлен атрибут offline.\n\
|
||||
/OFF[LINE] Do not skip files that have the offline attribute set.\n\
|
||||
""строка"" Искомая строка.\n\
|
||||
[диск:][путь]имя_файла\n\
|
||||
Один или несколько файлов, в которых выполняется поиск."
|
||||
IDS_NO_SUCH_FILE "FIND: %s: Файл не существует.\n"
|
||||
IDS_CANNOT_OPEN "FIND: %s: Невозможно открыть файл.\n"
|
||||
IDS_INVALID_SWITCH "FIND: Недопустимый ключ\n"
|
||||
IDS_INVALID_SWITCH "FIND: Invalid switch\n"
|
||||
END
|
||||
|
@@ -1,9 +1,8 @@
|
||||
/*
|
||||
* PROJECT: ReactOS help utility
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Romanian resource file
|
||||
* TRANSLATORS: Copyright 2014-2018 Ștefan Fulea <stefan.fulea@mail.com>
|
||||
* Copyright 2023 Andrei Miloiu <miloiuandrei@gmail.com>
|
||||
* FILE: base/applications/cmdutils/help/lang/ro-RO.rc
|
||||
* ReactOS Project (https://reactos.org)
|
||||
* AUTHOR: Magnus Olsen, 2005
|
||||
* TRANSLATOR: Ștefan Fulea (stefan dot fulea at mail dot com)
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
|
||||
@@ -22,7 +21,7 @@ HELP [comandă]\n\n\
|
||||
help comandă\n\
|
||||
comandă /? Pentru mai multe informații referitoare la o anume comandă.\n\n\
|
||||
? Enumeră toate comenzile disponibile (fără descriere).\n\
|
||||
ALIAS Setează, șterge sau afișează aliasuri.\n\
|
||||
ALIAS Instituie, destituie sau afișează alias.\n\
|
||||
ASSOC Modifică asocierile extensiilor de fișiere.\n\
|
||||
ATTRIB Afișează sau modifică atributele fișierelor.\n\
|
||||
BEEP Semnalizează utilizând difuzorul intern.\n\
|
||||
|
@@ -1,25 +1,20 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Label Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Romanian resource file
|
||||
* TRANSLATORS: Copyright 2011-2019 Ștefan Fulea <stefan.fulea@mail.com>
|
||||
* Copyright 2023-2024 Andrei Miloiu <miloiuandrei@gmail.com>
|
||||
*/
|
||||
/* Translator: Ștefan Fulea (stefan dot fulea at mail dot com) */
|
||||
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
STRING_LABEL_HELP "Crează, schimbă sau șterge denumirea unui disc.\n\n\
|
||||
LABEL [disc:][denumire]\n\n\
|
||||
disc: Specifică litera unui disc.\n\
|
||||
denumire Specifică denumirea unui disc."
|
||||
STRING_LABEL_TEXT1 "Volumul discului %c: este %s\n"
|
||||
STRING_LABEL_TEXT2 "Volumul discului %c: nu are denumire.\n"
|
||||
// STRING_LABEL_HELP "Afișează sau modifică eticheta unei unități (de stocare).\n\nLABEL [unitate:][etichetă]\n"
|
||||
STRING_LABEL_HELP "Creates, changes or deletes the volume label of a disk.\n\n\
|
||||
LABEL [drive:][label]\n\n\
|
||||
drive: Specifies the drive letter of a drive.\n\
|
||||
label Specifies the label of the drive."
|
||||
STRING_LABEL_TEXT1 "Volumul unității %c: este etichetat ca %s\n"
|
||||
STRING_LABEL_TEXT2 "Volumul unității %c: nu este etichetat.\n"
|
||||
STRING_LABEL_TEXT3 "Numărul de serie al volumului este %04X-%04X\n"
|
||||
STRING_LABEL_TEXT4 "Denumirea volumului (32 de caractere, ENTER dacă dacă nu există)?"
|
||||
STRING_LABEL_PROMPT "Ștergeți denumirea actuală a volumului (D/N)? "
|
||||
STRING_LABEL_OPTIONS "DN"
|
||||
STRING_ERROR_INVALID_DRIVE "Specificarea discului este nevalidă\n"
|
||||
STRING_ERROR_INVALID_LABEL "Denumirea volumului e nevalidă\n"
|
||||
STRING_LABEL_TEXT4 "Introduceți eticheta unității (opțională, de 32 caractere), apoi ENTER "
|
||||
STRING_LABEL_PROMPT "Delete current volume label (Y/N)? "
|
||||
STRING_LABEL_OPTIONS "YN"
|
||||
STRING_ERROR_INVALID_DRIVE "Specificarea unității este eronată\n"
|
||||
STRING_ERROR_INVALID_LABEL "Invalid volume label\n"
|
||||
END
|
||||
|
@@ -1,10 +1,4 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Mode Utility
|
||||
* LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
|
||||
* PURPOSE: Romanian resource file
|
||||
* TRANSLATORS: Copyright 2011-2018 Ștefan Fulea <stefan.fulea@mail.com>
|
||||
* Copyright 2023 Andrei Miloiu <miloiuandrei@gmail.com>
|
||||
*/
|
||||
/* Translator: Ștefan Fulea (stefan dot fulea at mail dot com) */
|
||||
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
|
||||
|
||||
@@ -33,12 +27,12 @@ Rata de repetiție la menținerea unei taste apăsate:\n\
|
||||
IDS_QUERY_PRINTER_FOUND "Depistat dispozitiv de imprimare - %s\n"
|
||||
IDS_QUERY_PARALLEL_FOUND "Depistat dispozitiv la portul paralel - %s\n"
|
||||
IDS_QUERY_DOSDEV_FOUND "Depistat dispozitiv de tip DOS - %s\n"
|
||||
// IDS_QUERY_MISC_FOUND "A fost găsit alt dispozitiv - %s\n"
|
||||
// IDS_QUERY_MISC_FOUND "Found other device - %s\n"
|
||||
|
||||
// IDS_QUERY_DEVICE_FOUND "A fost găsit dispozitivul %s - %s\n"
|
||||
// IDS_QUERY_DEVICE_FOUND "Found %s device - %s\n"
|
||||
// IDS_SERIAL "serial"
|
||||
// IDS_PRINTER "paralel"
|
||||
// IDS_OTHER "altul"
|
||||
// IDS_PRINTER "parallel"
|
||||
// IDS_OTHER "other"
|
||||
END
|
||||
|
||||
STRINGTABLE
|
||||
@@ -81,7 +75,7 @@ BEGIN
|
||||
IDS_ERROR_TIMEOUT_SET_DEVICE "Eșec la stabilirea perioadei de expirare pentru dispozitivul %s:\n"
|
||||
IDS_ERROR_INVALID_PARITY_BITS "EROARE: Valoare eronată pentru biții de paritate %d:\n"
|
||||
IDS_ERROR_INVALID_STOP_BITS "EROARE: Valoare eronată pentru biții delimitori %d:\n"
|
||||
IDS_ERROR_NO_MEMORY "EROARE: Nu există suficientă memorie.\n"
|
||||
IDS_ERROR_NO_MEMORY "ERAORE: Nu există suficientă memorie.\n"
|
||||
IDS_ERROR_SCREEN_LINES_COL "Ecranul nu poate fi stabilit cu numărul de linii sau coloane specificate.\n"
|
||||
IDS_ERROR_INVALID_CODEPAGE "Pagina de cod specificată nu e validă.\n"
|
||||
IDS_ERROR_INVALID_CODEPAGE "The code page specified is not valid.\n"
|
||||
END
|
||||
|
@@ -1,65 +1,60 @@
|
||||
/*
|
||||
* PROJECT: ReactOS More Command
|
||||
* LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
|
||||
* PURPOSE: Romanian resource file
|
||||
* TRANSLATORS: Copyright 2011-2019 Ștefan Fulea <stefan.fulea@mail.com>
|
||||
* Copyright 2023-2024 Andrei Miloiu <miloiuandrei@gmail.com>
|
||||
* FILE: base/applications/cmdutils/more/lang/ro-RO.rc
|
||||
* ReactOS Project (https://reactos.org)
|
||||
* TRANSLATOR: Fulea Ștefan (PM on ReactOS Forum at fulea.stefan)
|
||||
* CHANGE LOG: 2011-08-20 initial translation
|
||||
* 2011-10-17 diacritics change, other minor changes
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_USAGE "Afișarea datelor pe ecran, pagină cu pagină.\n\
|
||||
IDS_USAGE "Afișează date pe ecran, pagină-cu-pagină.\n\
|
||||
\n\
|
||||
MORE [/E [opțiuni]] < [disc:][cale]numele fișierului\n\
|
||||
command | MORE [/E [opțiuni]\n\
|
||||
MORE [/E [options]] < [drive:][path]filename\n\
|
||||
command | MORE [/E [options]]\n\
|
||||
\n\
|
||||
[disc:][cale]numele fișierului Un fișier al cărui conținut\n\
|
||||
urmează să fie afișat.\n\
|
||||
comandă O comandă a cărei ieșire\n\
|
||||
urmează să fie afișată.\n\
|
||||
[drive:][path]filename A file whose contents are to be displayed.\n\
|
||||
command A command whose output is to be displayed.\n\
|
||||
\n\
|
||||
Atunci când Caracteristicile extinse sunt activate,\n\
|
||||
următoarea formă este acceptată:\n\
|
||||
MORE [/E] [opțiuni] [fișiere]\n\
|
||||
When Extended Features are enabled, the following form is supported:\n\
|
||||
MORE [/E] [options] [files]\n\
|
||||
\n\
|
||||
Opțiuni:\n\
|
||||
/E Activarea opțiunii Caracteristici extinse.\n\
|
||||
Stadiul implicit al Caracteristicilor extinse e controlat de setările\n\
|
||||
implicite de registru pentru programul CMD.EXE. Pentru mai multe detalii\n\
|
||||
legate de cum pot fi schimbate aceste setări, vedeți secțiunea\n\
|
||||
""Extensii de comenzi"" în secțiunea de ajutor a programului CMD.EXE.\n\
|
||||
Options:\n\
|
||||
/E Enable Extended Features.\n\
|
||||
The default state of the Extended Features is controlled by the default\n\
|
||||
registry settings for CMD.EXE. For more details on how to change these\n\
|
||||
settings, see the section ""Command Extensions"" in CMD.EXE help.\n\
|
||||
\n\
|
||||
Atunci când opțiunea Caracteristici extinse e activată, sunt disponibile\n\
|
||||
următoarele opțiuni:\n\
|
||||
/C Curățarea ecranului înainte de a se afișa o pagină.\n\
|
||||
/P Extinderea caracterelor Form-Feed (de alimentare de formulare).\n\
|
||||
/S Reducerea liniilor goale succesive la o singură linie.\n\
|
||||
/Tn Extinderea tab-urilor la n spații (implicit: 8).\n\
|
||||
When Extended Features are enabled, the following options are available:\n\
|
||||
/C Clear the screen before displaying a page.\n\
|
||||
/P Expand Form-Feed characters.\n\
|
||||
/S Shrink successive blank lines to a single line.\n\
|
||||
/Tn Expand tabs to n spaces (default: 8).\n\
|
||||
\n\
|
||||
Aceste opțiuni pot fi specificate în variabila de mediu MORE.\n\
|
||||
These options can be specified in the MORE environment variable.\n\
|
||||
\n\
|
||||
+n Începerea afișării primului fișier la linia n.\n\
|
||||
fișiere Lista fișierelor de afișat, separate prin spații libere.\n\
|
||||
+n Start displaying the first file at line n.\n\
|
||||
files List of files to display, separated by blanks.\n\
|
||||
\n\
|
||||
Atunci când opțiunea Caracteristici extinse e activată, sunt disponibile\n\
|
||||
următoarele comenzi la panoul ""-- Continuă --"":\n\
|
||||
When Extended Features are enabled, the following commands are available\n\
|
||||
at the ""-- Continue --"" prompt:\n\
|
||||
\n\
|
||||
P n Afișarea următoarelor n linii.\n\
|
||||
S n Omiterea următoarelor n linii.\n\
|
||||
F Afișarea următorului fișier.\n\
|
||||
Q Ieșire.\n\
|
||||
= Afișarea numărului de linie.\n\
|
||||
? Afișarea liniei de ajutor.\n\
|
||||
<Space> Afișarea următoarei pagini.\n\
|
||||
<Enter> Afișarea următoari linii.\n"
|
||||
P n Display the next n lines.\n\
|
||||
S n Skip the next n lines.\n\
|
||||
F Display the next file.\n\
|
||||
Q Quit.\n\
|
||||
= Show the line number.\n\
|
||||
? Show the help line.\n\
|
||||
<Space> Display the next page.\n\
|
||||
<Enter> Display the next line.\n"
|
||||
|
||||
IDS_BAD_FLAG "Argument nevalid - '%s'\n"
|
||||
IDS_BAD_FLAG "Invalid argument - '%s'\n"
|
||||
IDS_FILE_ACCESS "Fișierul «%s» nu poate fi accesat!\n"
|
||||
IDS_CONTINUE_PROMPT "-- Continuă%1%2%3 --%4"
|
||||
IDS_CONTINUE_PERCENT " (%d%%)"
|
||||
IDS_CONTINUE_LINE_AT " [Linie: %d]"
|
||||
IDS_CONTINUE_OPTIONS " [Opțiuni: psfq=<Space><Enter>]"
|
||||
IDS_CONTINUE_LINES " Linii: "
|
||||
IDS_CONTINUE_LINE_AT " [Line: %d]"
|
||||
IDS_CONTINUE_OPTIONS " [Options: psfq=<Space><Enter>]"
|
||||
IDS_CONTINUE_LINES " Lines: "
|
||||
END
|
||||
|
@@ -276,12 +276,7 @@ static BOOL parse_data_type(struct parser *parser, WCHAR **line)
|
||||
|
||||
/* "hex(xx):" is special */
|
||||
val = wcstoul(*line, &end, 16);
|
||||
#ifdef __REACTOS__
|
||||
/* Up to 8 hex digits, "hex(000000002)" is invalid */
|
||||
if (*end != ')' || *(end + 1) != ':' || (val == ~0u && errno == ERANGE) || end - *line > 8)
|
||||
#else
|
||||
if (*end != ')' || *(end + 1) != ':' || (val == ~0u && errno == ERANGE))
|
||||
#endif
|
||||
return FALSE;
|
||||
|
||||
parser->data_type = val;
|
||||
|
@@ -1,104 +1,100 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Registry Console Tool
|
||||
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
|
||||
* PURPOSE: Romanian resource file
|
||||
* TRANSLATORS: Copyright 2010 Claudia Cotună <special4ti@gmail.com>
|
||||
* Copyright 2010 Michael Stefaniuc <mstefani@redhat.com>
|
||||
* Copyright 2014-2018 Ștefan Fulea <stefan.fulea@mail.com>
|
||||
* Copyright 2023 Andrei Miloiu <miloiuandrei@gmail.com>
|
||||
* Translators: Claudia Cotună
|
||||
* Michael Stefaniuc
|
||||
* Ștefan Fulea (stefan dot fulea at mail dot com)
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
{
|
||||
STRING_USAGE, "Utilizare:\n\
|
||||
REG [operațiune] [parametri]\n\n\
|
||||
Operațiuni suportate:\n\
|
||||
STRING_USAGE, "Usage:\n\
|
||||
REG [operation] [parameters]\n\n\
|
||||
Supported operations:\n\
|
||||
ADD | COPY | DELETE | EXPORT | IMPORT | QUERY\n\n\
|
||||
Pentru ajutor la o operațiune specifică, tastați:\n\
|
||||
REG [operațiune] /?\n\n"
|
||||
For help on a specific operation, type:\n\
|
||||
REG [operation] /?\n\n"
|
||||
|
||||
STRING_ADD_USAGE, "REG ADD <cheie> [/v numele_valorii | /ve] [/t tip] [/s separator] [/d date] [/f]\n\n\
|
||||
Adaugă o cheie la registru sau adaugă o valoare nouă la o cheie dată a registrului.\n\n\
|
||||
<cheie>\n\
|
||||
Cheia registrului de adăugat sau dacă e specificat fie [/v], fie [/ve],\n\
|
||||
cheia în care urmează să fie adăugate noile date de registru.\n\n\
|
||||
Format: ROOT\\Subcheie\n\n\
|
||||
ROOT: O cheie de registru predefinită. Aceasta trebuie să fie una dintre următoarele:\n\n\
|
||||
STRING_ADD_USAGE, "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/f]\n\n\
|
||||
Adds a key to the registry or adds a new value to a given registry key.\n\n\
|
||||
<key>\n\
|
||||
The registry key to add or, if either [/v] or [/ve] is specified,\n\
|
||||
the key in which to add the new registry data.\n\n\
|
||||
Format: ROOT\\Subkey\n\n\
|
||||
ROOT: A predefined registry key. This must be one of the following:\n\n\
|
||||
HKEY_LOCAL_MACHINE | HKLM\n\
|
||||
HKEY_CURRENT_USER | HKCU\n\
|
||||
HKEY_CLASSES_ROOT | HKCR\n\
|
||||
HKEY_USERS | HKU\n\
|
||||
HKEY_CURRENT_CONFIG | HKCC\n\n\
|
||||
Subcheie: Calea completă către o cheie de registru de sub o anumită cheie dată ROOT.\n\n\
|
||||
/v <numele_valorii>\n\
|
||||
Numele valorii registrului de adăugat.\n\n\
|
||||
Subkey: The full path to a registry key under a given ROOT key.\n\n\
|
||||
/v <value_name>\n\
|
||||
The name of the registry value to add.\n\n\
|
||||
/ve\n\
|
||||
Adaugă o valoare de registru fără nume. Această opțiune modifică valoarea\n\
|
||||
(Implicită) a registrului.\n\n\
|
||||
/t <tip>\n\
|
||||
Tipul de date ce urmează să fie adăugate în registru. Dacă [/t] e specificat,\n\
|
||||
<tip> trebuie să fie una din următoarele:\n\n\
|
||||
Add an unnamed registry value. This option modifies the (Default)\n\
|
||||
registry value.\n\n\
|
||||
/t <type>\n\
|
||||
The type of data to add to the registry. If [/t] is specified,\n\
|
||||
<type> must be one of the following:\n\n\
|
||||
REG_SZ | REG_MULTI_SZ | REG_EXPAND_SZ\n\
|
||||
REG_DWORD | REG_BINARY | REG_NONE\n\n\
|
||||
Dacă [/t] nu e specificat, tipul implicit de date este REG_SZ.\n\n\
|
||||
If [/t] is not specified, the default data type is REG_SZ.\n\n\
|
||||
/s <separator>\n\
|
||||
Caracterul folosit ca să separe șiruri în datele REG_MULTI_SZ.\n\
|
||||
Dacă [/s] nu e specificat, separatorul implicit este \\0.\n\n\
|
||||
/d <date>\n\
|
||||
Datele ce urmează să fie adăugate la noua valoare a registrului.\n\n\
|
||||
The character used to separate strings in REG_MULTI_SZ data.\n\
|
||||
If [/s] is not specified, the default separator is \\0.\n\n\
|
||||
/d <data>\n\
|
||||
The data to add to the new registry value.\n\n\
|
||||
/f\n\
|
||||
Modifică regiștrul fără să fie cerută vreo confirmare.\n\n"
|
||||
Modify the registry without prompting for confirmation.\n\n"
|
||||
|
||||
STRING_DELETE_USAGE, "REG DELETE <cheie> [/v numele_valorii | /ve | /va] [/f]\n\n\
|
||||
Șterge o cheie de registru (incluzând toate subcheile și valorile) sau șterge\n\
|
||||
una sau mai multe valori dintr-o cheie de registru dată.\n\n\
|
||||
<cheie>\n\
|
||||
Cheia de registru ce urmează să fie ștearsă sau dacă una din [/v], [/ve] sau [/va] e\n\
|
||||
specificată, cheia de registru în care urmează să fie ștearsă/șterse una sau mai multe valori.\n\n\
|
||||
Format: ROOT\\Subcheie\n\n\
|
||||
ROOT: O cheie de registru predefinită. Aceasta trebuie să fie una dintre următoarele:\n\n\
|
||||
STRING_DELETE_USAGE, "REG DELETE <key> [/v value_name | /ve | /va] [/f]\n\n\
|
||||
Deletes a registry key (including all subkeys and values), or deletes\n\
|
||||
one or more values from a given registry key.\n\n\
|
||||
<key>\n\
|
||||
The registry key to delete or, if one of [/v], [/ve] or [/va] is\n\
|
||||
specified, the registry key in which to delete one or more values.\n\n\
|
||||
Format: ROOT\\Subkey\n\n\
|
||||
ROOT: A predefined registry key. This must be one of the following:\n\n\
|
||||
HKEY_LOCAL_MACHINE | HKLM\n\
|
||||
HKEY_CURRENT_USER | HKCU\n\
|
||||
HKEY_CLASSES_ROOT | HKCR\n\
|
||||
HKEY_USERS | HKU\n\
|
||||
HKEY_CURRENT_CONFIG | HKCC\n\n\
|
||||
Subcheie: Calea completă a cheii de registru cu o cheie ROOT dată.\n\n\
|
||||
Subkey: The full path to a registry key under a given ROOT key.\n\n\
|
||||
/v <value_name>\n\
|
||||
Numele valorii de registru ce urmează să fie ștearsă\n\n\
|
||||
The name of the registry value to delete.\n\n\
|
||||
/ve\n\
|
||||
Șterge o valoare de registru nedenumită. Această opțiune șterge\n\
|
||||
valoarea (Implicită) a registrului.\n\n\
|
||||
Delete an unnamed registry value. This option deletes the (Default)\n\
|
||||
registry value.\n\n\
|
||||
/va\n\
|
||||
Șterge toate valorile dintr-o cheie de registru.\n\n\
|
||||
Delete all values from a registry key.\n\n\
|
||||
/f\n\
|
||||
Șterge o cheie de registru (incluzând toate subcheile și valorile) fără\n\
|
||||
să necesite confirmare.\n\n"
|
||||
Delete a registry key (including all subkeys and values) without\n\
|
||||
prompting for confirmation.\n\n"
|
||||
|
||||
STRING_QUERY_USAGE, "REG QUERY <cheie> [/v numele_valorii | /ve] [/s]\n\n\
|
||||
Interoghează o cheie de registru specificată și listează toate subcheile, valorile și datele\n\
|
||||
ce urmează imediat în acea cheie. Folosiți [/s] pentru a interoga recursiv fiecare subcheie.\n\n\
|
||||
<cheie>\n\
|
||||
Cheia de registru de interogat.\n\n\
|
||||
Format: ROOT\\Subcheie\n\n\
|
||||
ROOT: O cheie de registru predefinită. Aceasta trebuie să aibă una dintre următoarele:\n\n\
|
||||
STRING_QUERY_USAGE, "REG QUERY <key> [/v value_name | /ve] [/s]\n\n\
|
||||
Queries a specified registry key and lists all immediate subkeys, values\n\
|
||||
and data within that key. Use [/s] to recursively query each subkey.\n\n\
|
||||
<key>\n\
|
||||
The registry key to query.\n\n\
|
||||
Format: ROOT\\Subkey\n\n\
|
||||
ROOT: A predefined registry key. This must be one of the following:\n\n\
|
||||
HKEY_LOCAL_MACHINE | HKLM\n\
|
||||
HKEY_CURRENT_USER | HKCU\n\
|
||||
HKEY_CLASSES_ROOT | HKCR\n\
|
||||
HKEY_USERS | HKU\n\
|
||||
HKEY_CURRENT_CONFIG | HKCC\n\n\
|
||||
Subcheie: Calea completă către o cheie de registru de sub o anumită cheie dată ROOT.\n\n\
|
||||
/v <numele_valorii>\n\
|
||||
Numele valorii de registru ce urmează să fie interogată. Dacă nu se specifică nici [/v],\n\
|
||||
nici [/ve], toate valorile de sub <cheie> sunt listate.\n\n\
|
||||
Subkey: The full path to a registry key under a given ROOT key.\n\n\
|
||||
/v <value_name>\n\
|
||||
The name of the registry value to query. If neither [/v] nor [/ve] is\n\
|
||||
specified, all values under <key> are listed.\n\n\
|
||||
/ve\n\
|
||||
Interoghează o valoare de registru nedenumită. Această opțiune interoghează\n\
|
||||
valoarea (Implicită) a registrului.\n\n\
|
||||
Query an unnamed registry value. This option queries the (Default)\n\
|
||||
registry value.\n\n\
|
||||
/s\n\
|
||||
Listează toate intrările registrului de sub <cheie> și subcheile sale.\n\n"
|
||||
List all registry entries under <key> and its subkeys.\n\n"
|
||||
|
||||
STRING_SUCCESS, "Operațiunea a fost îndeplinită cu succes\n"
|
||||
STRING_SUCCESS, "Operația a fost îndeplinită cu succes\n"
|
||||
STRING_INVALID_KEY, "Eroare: Nume de cheie nevalid\n"
|
||||
STRING_INVALID_CMDLINE, "Eroare: Parametri nevalizi pentru linia de comandă\n"
|
||||
STRING_NO_REMOTE, "Eroare: Nu pot fi adăugate chei într-un calculator la distanță\n"
|
||||
@@ -108,18 +104,18 @@ Pentru ajutor la o operațiune specifică, tastați:\n\
|
||||
STRING_MISSING_HEXDATA, "reg: Opțiunea [/d] trebuie să fie urmată de o valoare hexezecimală\n"
|
||||
STRING_UNHANDLED_TYPE, "reg: Tip de dată nerecunoscut [/t 0x%1!x!, /d %2]\n"
|
||||
STRING_OVERWRITE_VALUE, "Valoarea de registru «%1» deja există. Doriți s-o suprascrieți?"
|
||||
STRING_YES, "D"
|
||||
STRING_YES, "Y"
|
||||
STRING_NO, "N"
|
||||
STRING_ALL, "T"
|
||||
STRING_YESNO, " (Da|Nu)"
|
||||
STRING_YESNOALL, " (Da|Nu|Toate)"
|
||||
STRING_CANCELLED, "Operațiunea de registru a fost anulată\n"
|
||||
STRING_ALL, "A"
|
||||
STRING_YESNO, " (Yes|No)"
|
||||
STRING_YESNOALL, " (Yes|No|All)"
|
||||
STRING_CANCELLED, "Operația de registru a fost anulată\n"
|
||||
STRING_DEFAULT_VALUE, "(Implicită)"
|
||||
STRING_DELETE_VALUE, "Sigur doriți ștergerea valorii de registru «%1»?"
|
||||
STRING_DELETE_VALUEALL, "Sigur doriți ștergerea tuturor valorilor de registru din «%1»?"
|
||||
STRING_DELETE_SUBKEY, "Sigur doriți ștergerea cheii de registru «%1»?"
|
||||
STRING_INVALID_STRING, "reg: Opțiunea [/d] trebuie urmată de un șir valid\n"
|
||||
STRING_VALUEALL_FAILED, "reg: Nu au putut fi șterse toate valorile de registru din «%1». A apărut o eroare neașteptată.\n"
|
||||
STRING_VALUEALL_FAILED, "reg: Nu au putut fi șterse toate valorile de registru din «%1». A survenit o eroare neașteptată.\n"
|
||||
STRING_MATCHES_FOUND, "Căutare efectuată. Numărul de potriviri găsite: %1!d!\n"
|
||||
STRING_INVALID_SYNTAX, "reg: Sintaxă nerespectată. "
|
||||
STRING_INVALID_OPTION, "reg: Opțiune nevalidă [%1]. "
|
||||
@@ -127,65 +123,65 @@ Pentru ajutor la o operațiune specifică, tastați:\n\
|
||||
STRING_FUNC_HELP, "Tastați «REG %1 /?» pentru mai multe informații.\n"
|
||||
STRING_VALUE_NOT_SET, "(valoare nealocată)"
|
||||
|
||||
STRING_IMPORT_USAGE, "REG IMPORT <fișier>\n\n\
|
||||
Importă chei, valori și date dintr-un fișier dat în regiștri.\n\n\
|
||||
<fișier>\n\
|
||||
Numele și calea fișierului de regiștri de importat.\n\n"
|
||||
STRING_IMPORT_USAGE, "REG IMPORT <file>\n\n\
|
||||
Imports keys, values and data from a given file into the registry.\n\n\
|
||||
<file>\n\
|
||||
The name and path of the registry file to import.\n\n"
|
||||
|
||||
STRING_FILE_NOT_FOUND, "reg: Fișierul «%1» nu a putut fi găsit.\n"
|
||||
STRING_ESCAPE_SEQUENCE, "reg: Secvența de ieșire [\\%1!c!] nu este recunoscută.\n"
|
||||
STRING_ESCAPE_SEQUENCE, "reg: Secvența de sustracție [\\%1!c!] nu este recunoscută.\n"
|
||||
|
||||
STRING_EXPORT_USAGE, "REG EXPORT <cheie> <fișier> [/y]\n\n\
|
||||
Exportă o cheie de registru specificată (incluzând toate subcheile și valorile)\n\
|
||||
într-un fișier.\n\n\
|
||||
<cheie>\n\
|
||||
Cheia de registru ce urmează să fie exportată.\n\n\
|
||||
Format: ROOT\\Subcheie\n\n\
|
||||
ROOT: O cheie de registru predefinită. Aceasta trebuie să aibă una dintre următoarele:\n\n\
|
||||
STRING_EXPORT_USAGE, "REG EXPORT <key> <file> [/y]\n\n\
|
||||
Exports a specified registry key (including all subkeys and values)\n\
|
||||
to a file.\n\n\
|
||||
<key>\n\
|
||||
The registry key to export.\n\n\
|
||||
Format: ROOT\\Subkey\n\n\
|
||||
ROOT: A predefined registry key. This must be one of the following:\n\n\
|
||||
HKEY_LOCAL_MACHINE | HKLM\n\
|
||||
HKEY_CURRENT_USER | HKCU\n\
|
||||
HKEY_CLASSES_ROOT | HKCR\n\
|
||||
HKEY_USERS | HKU\n\
|
||||
HKEY_CURRENT_CONFIG | HKCC\n\n\
|
||||
Subcheie: Calea completă către o cheie de registru de sub o anumită cheie dată ROOT.\n\n\
|
||||
<fișier>\n\
|
||||
Numele și calea fișierului de regiștri ce urmează să fie creat.\n\
|
||||
Fișierul trebuie să aibă extensia .reg.\n\n\
|
||||
Subkey: The full path to a registry key under a given ROOT key.\n\n\
|
||||
<file>\n\
|
||||
The name and path of the registry file that will be created.\n\
|
||||
This file must have a .reg extension.\n\n\
|
||||
/y\n\
|
||||
Suprascrieți <fișierul> fără să se necesite confirmarea.\n\n"
|
||||
Overwrite <file> without prompting for confirmation.\n\n"
|
||||
|
||||
STRING_INVALID_SYSTEM_KEY, "reg: Cheia de sistem [%1] nu este una validă.\n"
|
||||
STRING_OVERWRITE_FILE, "Fișierul «%1» deja există. Doriți suprascrierea lui?"
|
||||
STRING_KEY_NONEXIST, "reg: Nu a putut fi găsită cheia de registru specificată\n"
|
||||
STRING_KEY_IMPORT_FAILED, "reg: Nu a putut fi importată cheia de registru '%1'\n"
|
||||
STRING_KEY_NONEXIST, "reg: Unable to find the specified registry key\n"
|
||||
STRING_KEY_IMPORT_FAILED, "reg: Unable to import the registry key '%1'\n"
|
||||
|
||||
STRING_REG_VIEW_USAGE, " /reg:32\n\
|
||||
Accesează regiștrii folosind vizualizatorul de 32 de biți.\n\n\
|
||||
Access the registry using the 32-bit view.\n\n\
|
||||
/reg:64\n\
|
||||
Accesează regiștrii folosind vizualizatorul de 64 de biți.\n\n"
|
||||
STRING_ACCESS_DENIED, "reg: Cheia de registru specificată nu a putut fi accesată sau creată\n"
|
||||
Access the registry using the 64-bit view.\n\n"
|
||||
STRING_ACCESS_DENIED, "reg: Unable to access or create the specified registry key\n"
|
||||
|
||||
STRING_COPY_USAGE, "REG COPY <cheia1> <cheia2> [/s] [/f]\n\n\
|
||||
Copiază conținutul unei chei de registru specificată în altă locație.\n\
|
||||
Implicit, această operațiune copiază numai valorile de registru. Folosiți [/s] pentru\n\
|
||||
a copia în mod recursiv toate subcheile și valorile.\n\n\
|
||||
<cheia1>, <cheia2>\n\
|
||||
Cheile de registru care specifică sursa (<cheia1>) și destinația (<cheia2>)\n\
|
||||
a datelor. Dacă <cheia2> nu există, este creată.\n\n\
|
||||
Format: ROOT\\Subcheie\n\n\
|
||||
ROOT: O cheie de registru predefinită. Aceasta trebuie să aibă una dintre următoarele:\n\n\
|
||||
STRING_COPY_USAGE, "REG COPY <key1> <key2> [/s] [/f]\n\n\
|
||||
Copies the contents of a specified registry key to another location.\n\
|
||||
By default, this operation only copies registry values. Use [/s] to\n\
|
||||
recursively copy all subkeys and values.\n\n\
|
||||
<key1>, <key2>\n\
|
||||
Registry keys specifying the source (<key1>) and destination (<key2>)\n\
|
||||
of the data. If <key2> does not exist, it is created.\n\n\
|
||||
Format: ROOT\\Subkey\n\n\
|
||||
ROOT: A predefined registry key. This must be one of the following:\n\n\
|
||||
HKEY_LOCAL_MACHINE | HKLM\n\
|
||||
HKEY_CURRENT_USER | HKCU\n\
|
||||
HKEY_CLASSES_ROOT | HKCR\n\
|
||||
HKEY_USERS | HKU\n\
|
||||
HKEY_CURRENT_CONFIG | HKCC\n\n\
|
||||
Subcheie: Calea completă către o cheie de registru de sub o anumită cheie dată ROOT.\n\n\
|
||||
Subkey: The full path to a registry key under a given ROOT key.\n\n\
|
||||
/s\n\
|
||||
Copiază toate subcheile și valorile din <cheia1> în <cheia2>.\n\n\
|
||||
Copy all subkeys and values from <key1> to <key2>.\n\n\
|
||||
/f\n\
|
||||
Suprascrie toate datele registrului în <cheia2> fără să se necesite confirmare.\n\
|
||||
Această opțiune nu modifică subcheile și valorile ce există doar în <cheia2>.\n\n"
|
||||
Overwrite all registry data in <key2> without prompting for confirmation.\n\
|
||||
This option does not modify subkeys and values that only exist in <key2>.\n\n"
|
||||
|
||||
STRING_COPY_SRC_DEST_SAME, "reg: Cheile sursă și destinație nu pot fi aceleași\n"
|
||||
STRING_COPY_CONFIRM, "Valoarea '%1\\%2' există deja în cheia de destinație. Doriți să o suprascrieți?"
|
||||
STRING_COPY_SRC_DEST_SAME, "reg: The source and destination keys cannot be the same\n"
|
||||
STRING_COPY_CONFIRM, "The value '%1\\%2' already exists in the destination key. Do you want to overwrite it?"
|
||||
}
|
||||
|
@@ -1,10 +1,4 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Taskkill Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Romanian resource file
|
||||
* TRANSLATORS: Copyright 2011-2019 Ștefan Fulea <stefan.fulea@mail.com>
|
||||
* Copyright 2023-2024 Andrei Miloiu <miloiuandrei@gmail.com>
|
||||
*/
|
||||
/* Translator: Ștefan Fulea (stefan dot fulea at mail dot com) */
|
||||
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
|
||||
|
||||
@@ -20,10 +14,10 @@ STRINGTABLE
|
||||
STRING_CLOSE_PROC_SRCH, "Către fereastra procesului «%1» cu PID %2!u! a fost emis un mesaj de închidere.\n"
|
||||
STRING_TERM_PID_SEARCH, "Procesul cu PID %1!u! a fost oprit în mod forțat.\n"
|
||||
STRING_TERM_PROC_SEARCH, "Procesul «%1» cu PID %2!u! a fost oprit în mod forțat.\n"
|
||||
STRING_SEARCH_FAILED, "Eroare: Nu se poate găsi procesul «%1».\n"
|
||||
STRING_ENUM_FAILED, "Eroare: Nu se poate enumera lista de procese.\n"
|
||||
STRING_SEARCH_FAILED, "Eroare: Procesul «%1» nu poate fi găsit.\n"
|
||||
STRING_ENUM_FAILED, "Eroare: Procesele nu au putut fi enumerate.\n"
|
||||
STRING_TERMINATE_FAILED, "Eroare: Procesul «%1» nu poate fi oprit.\n"
|
||||
STRING_SELF_TERMINATION, "Eroare: Auto-terminarea nu este permisă.\n"
|
||||
STRING_PARAM_TOO_MUCH, "Eroare: Sintaxă nevalidă. Opțiunea '%1' nu este permisă mai mult de '%2!d!' dată(dăți).\n"
|
||||
STRING_INVALID_SYNTAX, "Eroare: Sintaxă nevalidă.\n"
|
||||
STRING_PARAM_TOO_MUCH, "Error: Invalid syntax. '%1' option is not allowed more than '%2!d!' time(s).\n"
|
||||
STRING_INVALID_SYNTAX, "Error: Invalid syntax.\n"
|
||||
}
|
||||
|
@@ -1,10 +1,3 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Bulgarian resource file
|
||||
* TRANSLATOR:
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_BULGARIAN, SUBLANG_DEFAULT
|
||||
|
||||
STRINGTABLE
|
||||
|
@@ -1,10 +1,3 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Catalan resource file
|
||||
* TRANSLATOR:
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_CATALAN, SUBLANG_DEFAULT
|
||||
|
||||
STRINGTABLE
|
||||
|
@@ -1,10 +1,3 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Czech resource file
|
||||
* TRANSLATOR:
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_CZECH, SUBLANG_DEFAULT
|
||||
|
||||
STRINGTABLE
|
||||
|
@@ -1,10 +1,3 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: German resource file
|
||||
* TRANSLATOR:
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
|
@@ -1,10 +1,3 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Greek resource file
|
||||
* TRANSLATOR:
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_GREEK, SUBLANG_DEFAULT
|
||||
|
||||
STRINGTABLE
|
||||
|
@@ -1,10 +1,3 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: English (United States) resource file
|
||||
* TRANSLATOR: Copyright 2021 He Yang <1160386205@qq.com>
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||
|
||||
STRINGTABLE
|
||||
|
@@ -1,10 +1,3 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Spanish resource file
|
||||
* TRANSLATOR:
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_SPANISH, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
|
@@ -1,10 +1,3 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Estonian resource file
|
||||
* TRANSLATOR:
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_ESTONIAN, SUBLANG_DEFAULT
|
||||
|
||||
STRINGTABLE
|
||||
|
@@ -1,10 +1,3 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: French resource file
|
||||
* TRANSLATOR:
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
|
@@ -1,10 +1,3 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Italian resource file
|
||||
* TRANSLATOR:
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
|
@@ -1,10 +1,3 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Lithuanian resource file
|
||||
* TRANSLATOR:
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_LITHUANIAN, SUBLANG_DEFAULT
|
||||
|
||||
STRINGTABLE
|
||||
|
@@ -1,10 +1,3 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Norwegian resource file
|
||||
* TRANSLATOR:
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_NORWEGIAN, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
|
@@ -1,27 +1,20 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Polish resource file
|
||||
* TRANSLATOR: Copyright 2023 Piotr Hetnarowicz <piotrhwz@gmail.com>
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_USAGE, "Usage: TASKLIST [/?] [/NH]\n"
|
||||
IDS_DESCRIPTION, "\n\
|
||||
Opis:\
|
||||
To narzędzie wyświetla listę aktualnie uruchomionych procesów\n\
|
||||
na komputerze.\n"
|
||||
IDS_OPTION_TOO_MUCH, "Błąd: Nieprawidłowa składnia. Opcja '%1' nie jest dozwolona więcej niż '%2!d!' raz(y).\n"
|
||||
IDS_INVALID_SYNTAX, "Błąd: Nieprawidłowa składnia.\n"
|
||||
IDS_INVALID_OPTION, "Błąd: Określono nieznaną lub nieprawidłową opcję wiersza polecenia.\n"
|
||||
IDS_ENUM_FAILED, "Błąd: Nie można wyliczyć listy procesów.\n"
|
||||
IDS_OUT_OF_MEMORY, "Błąd: Brak pamięci.\n"
|
||||
IDS_HEADER_IMAGENAME, "Nazwa obrazu"
|
||||
Desciption:\
|
||||
This tool displays a list of currently running processes on\n\
|
||||
the machine.\n"
|
||||
IDS_OPTION_TOO_MUCH, "Error: Invalid syntax. '%1' option is not allowed more than '%2!d!' time(s).\n"
|
||||
IDS_INVALID_SYNTAX, "Error: Invalid syntax.\n"
|
||||
IDS_INVALID_OPTION, "Error: Unknown or invalid command line option specified.\n"
|
||||
IDS_ENUM_FAILED, "Error: Unable to enumerate the process list.\n"
|
||||
IDS_OUT_OF_MEMORY, "Error: Out of memory.\n"
|
||||
IDS_HEADER_IMAGENAME, "Image Name"
|
||||
IDS_HEADER_PID, "PID"
|
||||
IDS_HEADER_SESSION, "Nr Sesji#"
|
||||
IDS_HEADER_MEMUSAGE, "Użycie pam."
|
||||
IDS_HEADER_SESSION, "Session#"
|
||||
IDS_HEADER_MEMUSAGE, "Mem Usage"
|
||||
IDS_MEMORY_STR, "%s K"
|
||||
END
|
||||
|
@@ -1,10 +1,3 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Portuguese (Brazilian) resource file
|
||||
* TRANSLATOR:
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_PORTUGUESE, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
|
@@ -1,27 +1,20 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Romanian resource file
|
||||
* TRANSLATOR: Copyright 2023 Andrei Miloiu <miloiuandrei@gmail.com>
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_USAGE, "Utilizare: TASKLIST [/?] [/NH]\n"
|
||||
IDS_USAGE, "Usage: TASKLIST [/?] [/NH]\n"
|
||||
IDS_DESCRIPTION, "\n\
|
||||
Descriere:\
|
||||
Acest instrument afișează o listă a proceselor curente din\n\
|
||||
calculator.\n"
|
||||
IDS_OPTION_TOO_MUCH, "Eroare: Sintaxă nevalidă. Opțiunea '%1' nu este permisă mai mult de '%2!d!' singură dată (ori).\n"
|
||||
IDS_INVALID_SYNTAX, "Eroare: Sintaxă nevalidă.\n"
|
||||
IDS_INVALID_OPTION, "Eroare: Opțiune de linie de comandă specificată necunoscută sau nevalidă.\n"
|
||||
IDS_ENUM_FAILED, "Eroare: Nu poate fi enumerată lista de procese.\n"
|
||||
IDS_OUT_OF_MEMORY, "Eroare: Fără memorie.\n"
|
||||
IDS_HEADER_IMAGENAME, "Numele imaginii"
|
||||
Desciption:\
|
||||
This tool displays a list of currently running processes on\n\
|
||||
the machine.\n"
|
||||
IDS_OPTION_TOO_MUCH, "Error: Invalid syntax. '%1' option is not allowed more than '%2!d!' time(s).\n"
|
||||
IDS_INVALID_SYNTAX, "Error: Invalid syntax.\n"
|
||||
IDS_INVALID_OPTION, "Error: Unknown or invalid command line option specified.\n"
|
||||
IDS_ENUM_FAILED, "Error: Unable to enumerate the process list.\n"
|
||||
IDS_OUT_OF_MEMORY, "Error: Out of memory.\n"
|
||||
IDS_HEADER_IMAGENAME, "Image Name"
|
||||
IDS_HEADER_PID, "PID"
|
||||
IDS_HEADER_SESSION, "Sesiune#"
|
||||
IDS_HEADER_MEMUSAGE, "Uz mem."
|
||||
IDS_HEADER_SESSION, "Session#"
|
||||
IDS_HEADER_MEMUSAGE, "Mem Usage"
|
||||
IDS_MEMORY_STR, "%s K"
|
||||
END
|
||||
|
@@ -1,10 +1,3 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Slovak resource file
|
||||
* TRANSLATOR:
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_SLOVAK, SUBLANG_DEFAULT
|
||||
|
||||
STRINGTABLE
|
||||
|
@@ -1,10 +1,3 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Albanian resource file
|
||||
* TRANSLATOR:
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_ALBANIAN, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
|
@@ -1,10 +1,3 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Swedish resource file
|
||||
* TRANSLATOR:
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_SWEDISH, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE
|
||||
|
@@ -1,10 +1,3 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Turkish resource file
|
||||
* TRANSLATOR: Copyright 2021 Süleyman Poyraz <zaryob.dev@gmail.com>
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
|
||||
|
||||
STRINGTABLE
|
||||
|
@@ -1,10 +1,3 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Ukrainian resource file
|
||||
* TRANSLATOR:
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT
|
||||
|
||||
STRINGTABLE
|
||||
|
@@ -1,9 +1,4 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Chinese (Traditional) resource file
|
||||
* TRANSLATOR: Copyright 2021 Chan Chilung <eason066@gmail.com>
|
||||
*/
|
||||
// Chinese Traditional (zh-TW) resources by Chan Chilung <eason066@gmail.com> 2021
|
||||
|
||||
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL
|
||||
|
||||
|
@@ -2,7 +2,7 @@
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Displays a list of currently running processes on the computer.
|
||||
* COPYRIGHT: Copyright 2021 He Yang <1160386205@qq.com>
|
||||
* COPYRIGHT: Copyright 2021 He Yang (1160386205@qq.com)
|
||||
*/
|
||||
|
||||
#include "tasklist.h"
|
||||
|
@@ -2,7 +2,7 @@
|
||||
* PROJECT: ReactOS Tasklist Command
|
||||
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
|
||||
* PURPOSE: Displays a list of currently running processes on the computer.
|
||||
* COPYRIGHT: Copyright 2020 He Yang <1160386205@qq.com>
|
||||
* COPYRIGHT: Copyright 2020 He Yang (1160386205@qq.com)
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
@@ -54,15 +54,15 @@
|
||||
#ifdef LANGUAGE_RO_RO
|
||||
#include "lang/ro-RO.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_RU_RU
|
||||
#include "lang/ru-RU.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_SK_SK
|
||||
#include "lang/sk-SK.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_SV_SE
|
||||
#include "lang/sv-SE.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_RU_RU
|
||||
#include "lang/ru-RU.rc"
|
||||
#endif
|
||||
#ifdef LANGUAGE_SQ_AL
|
||||
#include "lang/sq-AL.rc"
|
||||
#endif
|
||||
|
@@ -1,17 +1,11 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Tree Walk Utility
|
||||
* LICENSE: GPL-2.0 (https://spdx.org/licenses/GPL-2.0)
|
||||
* PURPOSE: Romanian resource file
|
||||
* TRANSLATORS: Copyright 2018 Ștefan Fulea <stefan.fulea@mail.com>
|
||||
* Copyright 2024 Andrei Miloiu <miloiuandrei@gmail.com>
|
||||
*/
|
||||
/* Translator: Ștefan Fulea (stefan dot fulea at mail dot com) */
|
||||
|
||||
LANGUAGE LANG_ROMANIAN, SUBLANG_DEFAULT
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_USAGE "Afișează o structură de fișiere a unui director sau unități de stocare.\n\n\
|
||||
TREE [disc:][cale] [/F] [/A]\n\n\
|
||||
TREE [unitate:][cale] [/F] [/A]\n\n\
|
||||
\t/F Afișează numele fișierelor din fiecare director.\n\
|
||||
\t/A Folosește ASCII în loc de caractere extinse.\n"
|
||||
IDS_NO_SUBDIRECTORIES "Nu există subdirectoare"
|
||||
|
@@ -407,16 +407,8 @@ static HRESULT WINAPI Host_DisconnectObject(IHost *iface, IDispatch *Object)
|
||||
|
||||
static HRESULT WINAPI Host_Sleep(IHost *iface, LONG Time)
|
||||
{
|
||||
#ifdef __REACTOS__
|
||||
UNREFERENCED_PARAMETER(iface);
|
||||
if (Time < 0)
|
||||
return E_INVALIDARG;
|
||||
Sleep(Time);
|
||||
return S_OK;
|
||||
#else
|
||||
WINE_FIXME("(%d)\n", Time);
|
||||
return E_NOTIMPL;
|
||||
#endif
|
||||
}
|
||||
|
||||
static HRESULT WINAPI Host_ConnectObject(IHost *iface, IDispatch *Object, BSTR Prefix)
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user