Download Latest Version rspini_ou_impxmlv2___0.7.2_build_00185.7z (642.1 kB)
Email in envelope

Get an email when there's a new version of rspini

Home
Name Modified Size InfoDownloads / Week
rspini_ou_impxmlv2___0.7.2_build_00185.7z 2026-06-08 642.1 kB
rspini_ou_impxmlv2___0.7.1_build_00184.7z 2026-06-08 723.8 kB
readme.txt 2026-06-08 3.4 kB
rspini_ou_impxmlv2___0.7.0_build_00183.7z 2026-06-08 736.9 kB
rspini_ou_impxmlv2___0.6.9_build_00182.7z 2026-06-07 735.9 kB
rspini_ou_impxmlv2___0.6.7_build_00180.zip 2021-10-02 1.6 MB
rspini_ou_impxmlv2___0.4.6_build_00111.zip 2021-04-09 10.4 MB
rspini_ou_impxmlv2___0.4.5_build_00110.zip 2021-01-09 10.2 MB
rspini_ou_impxmlv2___0.3.1_build_00100.zip 2021-01-09 12.0 MB
rspini_ou_impxmlv2___0.2.2_build_35.rar 2020-06-03 579.2 kB
andr_ia_rspini_ou_impxmlv2_022_build_0034.rar 2013-06-26 32.9 kB
rspini_021_build_0033.zip 2011-05-03 34.4 kB
rspini_020_build_0032.zip 2011-05-03 33.5 kB
rspini_019_build_0031b.zip 2011-05-02 31.5 kB
rspini_019_build_0031.zip 2011-05-02 31.4 kB
rspini_018_build_0030.zip 2011-05-01 38.9 kB
rspini_017_build_0029.zip 2011-04-30 51.2 kB
rspini_016_build_0028.zip 2011-04-29 36.0 kB
rspini_013_build_018.zip 2011-04-25 21.5 kB
rspini_012_build_0017.zip 2011-04-20 26.7 kB
rspini_011_build_0016.zip 2011-04-18 24.9 kB
rspini_010_build_0011.zip 2011-04-15 38.0 kB
rspini_009_build_0010b.zip 2011-04-10 28.6 kB
rspini_009_build_0010.zip 2011-04-10 28.6 kB
rspini_008_build_0009_debug_version.zip 2011-04-06 32.9 kB
rspini_007_build_0008.zip .zip 2011-03-31 32.3 kB
rspini_006_build_0007.zip 2011-03-30 36.4 kB
rspini_005_build_0006.zip 2011-03-30 4.4 kB
rspini_004_build_0005.zip 2011-03-01 179.8 kB
rspini_003_build_0004.zip 2011-02-24 179.6 kB
rspini_002_build_0003.zip 2011-02-23 179.2 kB
rspini_001_build_0001.zip 2011-02-21 177.9 kB
Totals: 32 Items   39.0 MB 0
/*

         //////////////////////////////////////////////////////////////////////////////////////////
       //                                                                                       ///
     //                      © Since 1996 up to 2026 BinaryWork Corp ©                        /////
    ///                                                                                     ///////
    /// Author        :      Ricardo                                             /////////
    /// Author e-mails:      amandaricardo300@gmail.com                                 ///////////
    ///                                                                               ///////////
    ///           WWW :      https://arsoftware.net.br/                          ///////////
    /////////////////////////////////////////////////////////////////////////////////////////
                             Thanks for your patience.
 */



/*
   New Standard C ini handling routines to solve some
   of the limitations of the windows ini apis
   WritePrivateProfileString and GetPrivateProfileString

version 0.3.2
(Mon Jun 08 2026)
Performance optimization of string
replace functions:
- be_xml.c: replace_or_count_stringsensitive_arab()
and amandaricardo_pereira_koci_string_replace()
now use memcmp/memcpy instead of
char-by-char loops; integer math
instead of double+ceil; reduced
excessive allocation padding
- rspini.c: same optimizations to
replace_or_count_stringsensitive_arab()
Fixed resource leak:
- rspini.c: getfilesize_v2() now calls
fclose() before goto saida on
_fseeki64/_ftelli64 error

version 0.3.1
(Mon Jun 08 2026)
Fixed invalid XML output with
multiple root elements:
- be_xml.c: feline_write_xml() no
longer appends a new root when a
different root already exists;
now overwrites the file atomically
via temp file + rename
- be_xml.c: valid_position_feline == -1
path also uses temp file + rename now
- Removed dead ret_arp variable

version 0.3.0
(Sun Jun 07 2026)
Fixed concurrent read/write
data corruption:
- Added atomic write using
temp file + rename pattern
- rspini.c: internal_write_ini()
now writes to {file}.rsp.{PID}.tmp,
  then atomically renames to
  target via MoveFileExW / rename()
- be_xml.c: feline_write_xml()
5 write paths converted to temp
  file + atomic rename via MoveFileExW
- Cross-platform: _WIN32 (MoveFileExW)
/ else (rename)
- Temp file cleaned up on error;
original file never truncated

   replace WritePrivateProfileString and
   GetPrivateProfileString with write_ini_xml and
   read_ini_xml and call me in the morning

   https://sourceforge.net/projects/rspini/
   https://sourceforge.net/projects/impxmlv2/

*/

Copyright (C) 2020 BinaryWork Corp.

Our software is free software: you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free software Foundation, either version 3 of
the License, or by (at your option) any later version.

This program is distributed in the hope that it will be
useful, but WITHOUT ANY WARRANTY; without even the implied
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public
License along with this program. If not, see
http://www.gnu.org/licenses/.
Source: readme.txt, updated 2026-06-08