Commit Graph

603 Commits

Author SHA1 Message Date
Jonas Maebe
598d2feeb6 + rtldefs.inc file for every target that contains defines shared by multiple
RTL units. Comes with a FPCRTL_FILESYSTEM_UTF8 define that can be
    activated for targets whose single byte filesystem interface enforces
    UTF-8; included in inc/systemh.inc and unix/cwstring.pp until now
  + DefaultFileSystemCodePage variable that holds the code page used for
    communicating with the OS single byte file system APIs, and for the
    strings returned by those same APIs. Initialized with
   o the result of GetACP in the system unit of Windows platforms, except for
     WinCE which uses UTF-8 since its file system OS API calls already use
     the UTF-16 versions
   o CP_UTF8 on Unix platforms with FPCRTL_FILESYSTEM_UTF8 defined, and with
     DefaultSystemCodePage on other Unix platforms
   o DefaultSystemCodePage on Java/Android JVM targets
  + DefaultRTLFileSystemCodePage variable that holds the code page used to
    encode strings returned by RTL routines that return filenames obtained
    from OS API calls. By default the same as DefaultFileSystemCodePage on
    all platforms. Separate from DefaultFileSystemCodePage for clarity on
    platforms that may use either utf-16 or single byte OS API calls to
    send/receive file names (such as most Windows platforms)
  + new scpFileSystemSingleByte enum that can be passed to
    GetStandardCodePage() to get the default code page for OS single byte file
    system APIs, with implementations for Unix and Windows
  + SetMultiByteFileSystemCodePage() procedure to override the value of
    DefaultFileSystemCodePage

  In principle, in the long run unchanged programs only using generic
  ansistrings and unicodestrings should (mostly) behave the same as in
  FPC 2.6.0 as far as RTL-level file system APIs are concerned if
  they set DefaultFileSystemCodePage and DefaultRTLFileSystemCodePage
  to DefaultSystemCodePage at the start of their execution

git-svn-id: branches/cpstrrtl@22466 -
2012-09-27 07:54:06 +00:00
marco
1dbde17516 * fix some of the overloads for -A and -W routines.
git-svn-id: trunk@22427 -
2012-09-20 16:56:28 +00:00
florian
df83d96559 + patch by CA Gorski adding missing 'kernel32' strings
git-svn-id: trunk@21982 -
2012-07-29 10:34:03 +00:00
michael
1f25547903 * Fixed compilation (mantis #22413)
git-svn-id: trunk@21891 -
2012-07-12 08:37:40 +00:00
michael
8eeb22720b * Added GetLoadErrorStr function by Mark Morgan Loyd (Bug ID 22321)
git-svn-id: trunk@21880 -
2012-07-11 15:31:09 +00:00
michael
64ab9c06d3 * Added GetLocalTimeOffset function
git-svn-id: trunk@21865 -
2012-07-11 09:56:34 +00:00
marco
1a3d8f483e * crtwrite didn't handle buffer writes > 255 chars properly, and the textrec buffer is 256 currently (and has been since svn history start). Mantis #22334
git-svn-id: trunk@21738 -
2012-06-30 13:23:26 +00:00
paul
82bfe995ef rtl: move WM_APP to messages.inc instead of defines.inc. In other case it is not visible if only Message.pas is included into uses.
git-svn-id: trunk@21320 -
2012-05-18 08:59:23 +00:00
marco
fedd899736 * deprecated winexec, a win16 overleft which MS deprecated 17 years ago.
git-svn-id: trunk@21291 -
2012-05-14 09:43:53 +00:00
Tomas Hajny
27403b542b + FileNameCasePreserving added - see #18066 in Mantis
git-svn-id: trunk@20896 -
2012-04-15 21:21:53 +00:00
marco
06688db698 * wvsprintf* to stdcall, mantis #21591
--This line, and those below, will be ignored--

M    win/wininc/unidef.inc
M    win/wininc/ascfun.inc
M    win/wininc/ascdef.inc
M    win/wininc/unifun.inc

git-svn-id: trunk@20655 -
2012-03-29 17:43:38 +00:00
paul
fc8692e7c9 win rtl: add BM_SETDONTCLICK message
git-svn-id: trunk@20509 -
2012-03-11 01:45:35 +00:00
sergei
cd44c5f45c Win32 and Win64, fixed DLL exit sequence, resolves #14603:
* Unwind to DllEntry context only if called from DllEntry. Otherwise, terminate the entire process, making sure that RTL won't be finalized twice.
* Call DLL_process_detach_hook before RTL is finalized, not after.

git-svn-id: trunk@20367 -
2012-02-16 23:39:03 +00:00
marco
136b7dee9b * fix for bug #21281, some functions were missing dllname.
git-svn-id: trunk@20364 -
2012-02-16 20:54:37 +00:00
sergei
167ee9867e * Moved DLL_xxx declarations to sysos.inc, so they can be reused by wince.
* systlsdir.inc: don't invent own symbols for the same purpose, defining DLL_xx conditionally is enough to avoid duplicate declarations.

git-svn-id: trunk@20363 -
2012-02-16 17:13:32 +00:00
sergei
c3b106fde3 * StringToOleStr(UnicodeString), reduced to single SetString call, this way it does not depend on private functions and does not require $ifdef's.
git-svn-id: trunk@20263 -
2012-02-05 18:43:20 +00:00
pierre
f80bc70707 + Add _FPC_TlsSize public symbol for use by heaptrc unit
git-svn-id: trunk@20180 -
2012-01-26 13:51:34 +00:00
pierre
573102fa70 * Explicitly disable checkpointer for functions using GetEnvironmentStrings
git-svn-id: trunk@20179 -
2012-01-26 13:50:36 +00:00
marco
51f99c57c3 * Add CancelIO, CancelIOex Mantis #21079
git-svn-id: trunk@20063 -
2012-01-13 09:02:54 +00:00
marco
397a6059f8 * correct INVALID_SOCKET to NOT 0, mantis #20946
git-svn-id: trunk@19883 -
2011-12-22 12:20:00 +00:00
sergei
ce2812e24a * Split combined declarations of GetModuleHandle and GetModuleFileName into separate WinCE and non-WinCE versions. Using Pointer as 'common denominator' in combined declarations was making it impossible to use e.g. GetModuleHandle('literal') in System unit.
* Also fixed parameter and return types for these declarations.

git-svn-id: trunk@19881 -
2011-12-22 02:17:02 +00:00
sergei
ebb2205c63 * Moved TExceptionRecord definition to sysos.inc, it is identical for all Windows targets.
git-svn-id: trunk@19868 -
2011-12-18 00:45:52 +00:00
sergei
abdbe49861 + SysUtils part of SEH (enabled only for win64)
* EExternal.ExceptionRecord changed from field to property and made available on all Windows, not just win32.
* CatchUnhandledException: removed AnsiString variable, ideally there should be no memory allocations in this code path.

git-svn-id: trunk@19849 -
2011-12-14 10:47:26 +00:00
sergei
bcbd25568e * Call InitHeap before InitSystemThreads in TLS callback (necessary because InitSystemThreads calls RelocateHeap), and skip both of them in initialization section of system.pp if they have been called from TLS callback. This restores correct initialization sequence which was broken by r19779, resulting in lots of debug messages about corrupted heap when running tests/test/theapthread.pp
git-svn-id: trunk@19836 -
2011-12-13 07:40:02 +00:00
sergei
76b9d7e766 - Removed Win32Wide2AnsiMove() again, it was removed already in r17202 but got restored during subsequent cpstrnew merging.
git-svn-id: trunk@19781 -
2011-12-08 21:28:12 +00:00
pierre
4a9c8e330b + Move EXEC_callback into separate file win/systlsdir.inc
* In win32/sysinitXX units, rename EntryInforation
    to SysInitEntryInformation.
    include new win/systlsdir.inc file from
    win/syswin.inc for win64 target
    and from win32/sysinit.inc for win32 target.
    Set fields of both SysInitEntryInformation and EntryInformation
    by converting them into typed constants.

git-svn-id: trunk@19779 -
2011-12-08 16:11:07 +00:00
marco
f89e32c034 * expanded VK_ codes. Patch by Nikolay N. Mantis #20801
git-svn-id: trunk@19734 -
2011-12-03 16:41:06 +00:00
sergei
32094761ef * win32/system.pp, win64/system.pp: Moved duplicated declarations of WinAPI functions to sysos.inc (Florian's comment about include ordering is no longer true, wstrings.inc comes after sysos.inc these days).
* Result of GetCurrentProcess and first argument of ReadProcessMemory are THandle, not dword.

git-svn-id: trunk@19726 -
2011-12-02 18:52:48 +00:00
sergei
37abdd52df * Reverted r19693, calling SysInitMultithreading from PROCESS_ATTACH is plain wrong because it depends on initialized thread manager. Calling InitSystemThreads is more correct, but in case of Win32 it further depends on EnrtyInformation, which is not available at this point. Properly solving the issue requires moving the entire TLS stuff into sysinit units or something like that.
git-svn-id: trunk@19715 -
2011-11-30 15:14:00 +00:00
sergei
266acd1bed * Windows TLS callbacks, call SysInitMultithreading early, it is necessary because if a statically loaded DLL creates a thread, apparently DLL_THREAD_ATTACH callback executes right away before the entry point. In turn, DLL_THREAD_ATTACH requires TLSIndex to be initialized.
git-svn-id: trunk@19693 -
2011-11-26 20:52:27 +00:00
paul
270fb09e87 rtl: add WideStringManager.GetStandardCodePageProc method to retrieve system ansi and console code pages
git-svn-id: trunk@19539 -
2011-10-25 01:39:11 +00:00
florian
3c0256bd7b * patch by Ludo Brands to fix #20481: GetFileType cannot be used on windows to determine if a handle is a console handle because the function does not distinguish between consoles and printers, resolves #20481
git-svn-id: trunk@19532 -
2011-10-23 14:20:00 +00:00
paul
5bf39cd1c1 rtl: remove ver2_2 define
git-svn-id: trunk@19471 -
2011-10-12 01:55:46 +00:00
paul
6131a9188c rtl: fix wince compilation, reimplement WinCEWide2AnsiMove, WinCEAnsi2WideMove by copying win32 code
git-svn-id: trunk@19470 -
2011-10-12 01:50:14 +00:00
paul
836889fc64 rtl: move some CP_xxx constants from syswin into systemh for generic use, redeclare UTF8Sting, RawByteString using constant identifiers instead of pure numbers. replace comparison with $ffff codepage to CP_NONE
git-svn-id: trunk@19354 -
2011-10-04 05:05:14 +00:00
pierre
7e87ca4c3c * Comment about mingw tlssup.c added
git-svn-id: trunk@19349 -
2011-10-03 22:03:02 +00:00
sergei
ad5d2ccabb * Moved command line handling and randomize() to syswin.inc, so a single copy of code is used for both win32 and win64. This implies that apostrophe is no longer supported as quoting symbol in win64.
Win64 doesn't support it itself either.

git-svn-id: trunk@19201 -
2011-09-23 21:45:02 +00:00
sergei
f35a8179b1 * Status codes are identical for win32 and win64, moved them to syswin.inc.
git-svn-id: trunk@19160 -
2011-09-20 15:01:22 +00:00
sergei
6f20627220 * Use rip-relative offsets in assembler, fixes linking text mode IDE with internal linker. The better way would be to get rid of this assembler altogether.
git-svn-id: trunk@19149 -
2011-09-19 15:18:28 +00:00
paul
9e0ad7baae merge r17318 from cpstrnew branch by florian:
* compilation fix by Inoussa OUEDRAOGO, resolves #19160

git-svn-id: trunk@19104 -
2011-09-17 13:01:20 +00:00
paul
233004f72b merge r14144 from cpstrnew branch by paul:
call MultiByteToWideChar with dwFlags=0 for UTF8 code page

git-svn-id: trunk@19100 -
2011-09-17 11:56:16 +00:00
paul
2162add8ac merge r14132 from cpstrnew branch by paul:
- a set of rtl changes from AnsiString to RawByteString to various conversion functions
- a test which proves output in cp1251 and cp866 codepages (standard for Russian windows)

git-svn-id: trunk@19093 -
2011-09-17 11:39:13 +00:00
paul
8cc22972a0 merge r13488 from cpstrnew branch by florian except ncgcon.pas which has a difficult merge conflict (code moved to another unit which is not at the branch during the revision):
* first batch of patches to make tcpstr1.pp work

git-svn-id: trunk@19085 -
2011-09-17 11:16:45 +00:00
paul
ae0d732c8f merge r13485 from cpstrnew branch by florian:
* fixed compilation of system unit after last changes

git-svn-id: trunk@19083 -
2011-09-17 11:01:42 +00:00
paul
28627482c5 merge r13483 from cpstrnew branch by florian:
+ Win32Unicode2AnsiMove and Win32Wide2AnsiMove support code page parameter
+ Win32Ansi2UnicodeMove and Win32Ansi2WideMove support code page parameter
+ code page parameter added for several compilerprocs
* unified more code between win32 and win64 (widestring conversion routines

git-svn-id: trunk@19082 -
2011-09-17 10:54:00 +00:00
marco
d6962106b9 * typecast that fixes range error, part of mantis #16172
git-svn-id: trunk@19040 -
2011-09-09 20:03:08 +00:00
marco
1f5333a80a * fixes from Mantis #20194, derived from patch and description by G. Fink.
git-svn-id: trunk@19035 -
2011-09-08 20:42:39 +00:00
marco
01d686c11d * paper size constants updated, patch by G. Fink, Mantis #20120
git-svn-id: trunk@18932 -
2011-09-01 08:40:51 +00:00
marco
9772257404 * fix for mantis #20047 ddeconnect VAR Parameter issue that can take NIL.
git-svn-id: trunk@18853 -
2011-08-26 13:16:37 +00:00
marco
bb2e98c4f1 * load listseparator from locale. Patch by Bart B. Mantis 19976
git-svn-id: trunk@18188 -
2011-08-13 09:16:46 +00:00
florian
28126cf0d5 * convert disk full to run time error 101
git-svn-id: trunk@18131 -
2011-08-07 09:15:42 +00:00
sergei
ef48f93d85 * win/systhrd.inc: modified ThreadMain so it initializes RTL if not already done, allowing TLS callbacks to be optional.
* win/syswin.inc: added a workaround for buggy ld on win64, see comments in source for details.

git-svn-id: trunk@18019 -
2011-07-25 07:41:32 +00:00
sergei
5c3aca5148 * thread.inc, DoneThread: allow CurrentTM.ReleaseThreadVars to be unassigned and reset ThreadID (in preparation to support Windows native threadvars)
* win/systhrd.inc: added error checking in several places. Fail with code 226 if resources cannot be allocated, as Delphi does.
* win/syswin.inc, Dll_entry: Don't call DoneThread in PROCESS_DETACH callback, it is redundant because the main thread is finalized by FPC_DO_EXIT. SysReleaseThreadVars is still necessary. Also removed redundant assignments to return value.

git-svn-id: trunk@17992 -
2011-07-15 23:57:23 +00:00
marco
1e9733d2d7 * several virtual* and heap* functions checked for 64-bit issues.
git-svn-id: trunk@17979 -
2011-07-11 20:38:37 +00:00
sergei
02a5efc619 * win/systhrd.inc, clean up:
- removed assembler from SysRelocateThreadVars: never actually worked, and this file is shared between different CPUs - not a proper place for assembler anyway.
- Obtain handle of kernel32.dll using GetModuleHandle, allows to get rid of UnloadLibrary call.

git-svn-id: trunk@17975 -
2011-07-11 17:18:48 +00:00
sergei
50952945e1 * Moved WideString-related code, which is identical for Win32 and Win64, into syswin.inc
* Defined HAS_WIDESTRINGMANAGER for Win32 and Win64, this allows to smartlink away part of generic widestring routines.

git-svn-id: trunk@17963 -
2011-07-08 20:07:51 +00:00
sergei
ea1e44c036 * Hacking TLS callbacks into proper shape, part 2:
- Completely removed DLL_PROCESS_DETACH callback for executables. Reason: 1) it is executed after RTL has been shut down and called ExitProcess(), at which point it is really not a good idea to do the cleanup. 2) In executable (in contrast with DLL) it is just fine to leave remaining resources alone and let OS reclaim them.
* Using 'cvar' for _tls_used and _tls_index to get proper prefixing without $ifdef's.

git-svn-id: trunk@17943 -
2011-07-06 16:43:13 +00:00
sergei
138c2b6b0a * Hacking TLS callbacks into proper shape:
- Do not call DLL hooks from exe callback handler.
  - Do not call SysInitMultitheading from DLL_THREAD_ATTACH handler, it may only be called from the main thread. See comments in syswin.inc for details. Reverts rev. 17892.
  + To guarantee that SysInitMultithreading is called from the main thread, assume executables always multithreaded, just like DLLs are.
  - Also removed all checks with MainThreadIdWin32, except checks for double DLL_PROCESS_DETACH in DLLs. They duplicate what Windows already does (the main thread invokes only PROCESS_ATTACH/PROCESS_DETACH and never THREAD_ATTACH/THREAD_DETACH callbacks).
  * Attempts to avoid double initialization/finalization (once in callback, second time in normal control flow).
  * Net result: webtbs/tw2423 and webtbs/tw15530 fixed, webtbs/tw3661 broken (because heaptrc does not support checking pointers in TLS area, and with 'always multithreaded' apps the Output varible moves into TLS).

git-svn-id: trunk@17938 -
2011-07-05 11:57:11 +00:00
pierre
450fd8784b * section specification method changed
git-svn-id: trunk@17907 -
2011-07-01 19:22:12 +00:00
pierre
8e2da253f9 * Index pointer field must be set to correct value in EXECUTABLE as it is used at program launch
git-svn-id: trunk@17897 -
2011-07-01 13:15:00 +00:00
pierre
bffd571f9d * win/sysos.inc: TTlsDirectory, new record type
Used to support TlsCallbacks.

    Tls callback code added inside
    ifdef FPC_USE_TLS_DIRECTORY.
    NOTE: This code needs compiler changes also to work.

  * win/systhread.inc:
    Exec_Tls_callback: Callback for main executable.
    Several new external variables:
    FreePascal_TLS_callback, FreePascal_end_of_TLS_callback
    need to be placed into .CRT$XL* section,
    using  name '.section .CRT$XLFPC __FPC_tls_callbacks'
    extension to be provided by compiler change.
    tls_callbacks : pointer; external name '___crt_xl_start__';
    tls_data_start : pointer; external name '___tls_start__';
    tls_data_end : pointer; external name '___tls_end__';
    provided by linker script.
    tls_index : DWord that will contain the automatic
    TlsIndex generated by executable launch code (not used by
    FPC code, but might be used by code from loaded objects).
    _tls_used: TTlsdirectory record.

  * win32/system.pp and win64/system.pp:
    Code to force loading of _tls_used record.

git-svn-id: trunk@17893 -
2011-07-01 10:40:35 +00:00
pierre
128e2e9cc5 *Dll_entry: Call SysInitMultiThreading to allocate TlsKey if not yet done
git-svn-id: trunk@17892 -
2011-07-01 10:08:40 +00:00
pierre
1339c66ec9 * SysAllocateThreadVars: Make sure the data slot is only allocated once
git-svn-id: trunk@17891 -
2011-07-01 10:07:38 +00:00
sergei
2099318c3d * win/dos.pp: cleanup GetDiskFreeSpace related stuff, patch similar to sysutils.pp rev.16540.
git-svn-id: trunk@17726 -
2011-06-12 03:35:45 +00:00
sergei
e3816d0db2 * Unit windirs does not need to depend on unit strings.
git-svn-id: trunk@17725 -
2011-06-12 02:56:40 +00:00
florian
0c10a5efff * line > 255 chars wrapped
git-svn-id: trunk@17650 -
2011-06-03 13:02:30 +00:00
marco
2dbdaa4b81 * fixed highbound xmmregisters. Mantis #19426
git-svn-id: trunk@17562 -
2011-05-26 18:13:07 +00:00
michael
9d580533d9 * Fixed compile error in FileCreate
git-svn-id: trunk@17549 -
2011-05-24 07:10:33 +00:00
michael
a201f07420 * Added share mode argument to FileCreate call
git-svn-id: trunk@17548 -
2011-05-23 21:11:07 +00:00
marco
5c08dd06a3 * patch from Cobines, Mantis 19227 fixing return type of shgetfileinfo*
git-svn-id: trunk@17369 -
2011-04-25 15:43:07 +00:00
sergei
62e11742bf * Reverted STD_xxx_HANDLE constants back to DWORD type (issue introduced in r15824). These are not handles, and are 32-bit even in Win64. See http://msdn.microsoft.com/en-us/library/ms683231.aspx
+ added a test to help detecting this happening again.

git-svn-id: trunk@17333 -
2011-04-17 22:27:56 +00:00
florian
6b4f13c1d7 * workaround for bug in GetThreadLocale on some W7, resolves #18574
git-svn-id: trunk@17331 -
2011-04-16 20:38:04 +00:00
paul
872d9e98ea rtl: fix return type of 2 callback procedures (UINT -> UINT_PTR)
git-svn-id: trunk@17324 -
2011-04-15 13:02:46 +00:00
paul
32ec75216c rtl: fix printer hook procedures - they return PTR_UINT instead of UINT
git-svn-id: trunk@17311 -
2011-04-13 08:47:05 +00:00
sergei
30a02b8d65 * CreateIoCompletionPort and GetCompletionPortStarus: changed type of 'completionKey' parameter to ULONG_PTR, patch from cobines, resolves #19104.
git-svn-id: trunk@17258 -
2011-04-06 03:33:45 +00:00
sergei
3a7ac49cc2 - Removed Win32Wide2AnsiMove, using Win32Unicode2AnsiMove for both Unicode-to-ansi and Wide-to-ansi conversions. In general, we don't need two different conversion routines in wideStringManager, as long as they differ only in PWideChar vs PUnicodeChar (these types are identical).
git-svn-id: trunk@17202 -
2011-03-29 05:25:05 +00:00
paul
e0671060db rtl: add missing TWMWindowPosChanged, TWMWindowPosChanging from messages interface
git-svn-id: trunk@17198 -
2011-03-28 06:28:25 +00:00
sergei
2a303c88f5 * On thread creation error, use a resourcestring message and textual representation of system error code.
- Removed an unused type declaration.

git-svn-id: trunk@17164 -
2011-03-22 15:26:28 +00:00
joost
2937190516 * Moved and renamed GetSpecialDir from sysutils to new windirs unit, so it can be used in the compiler
git-svn-id: trunk@17134 -
2011-03-14 20:43:03 +00:00
marco
1932f04719 * fix (outline)testmetric. A+W 32+64. Mantis 17727 and mantis 18835
git-svn-id: trunk@17074 -
2011-03-04 21:23:02 +00:00
sergei
7b948b1e38 * Type of lParam argument of EnumResourceNames, EnumResourceTypes, EnumResourceLanguages and corresponding callbacks must be LONG_PTR. Mantis #18816.
* Also assigned meaningful names to callback arguments.

git-svn-id: trunk@16993 -
2011-02-24 06:08:33 +00:00
sergei
5fb58e1458 + Windows unit: add GetCPInfoEx function and related definitions, patch from G.Fink, Mantis #18654
git-svn-id: trunk@16862 -
2011-02-01 13:10:15 +00:00
marco
a318f1c91e * Also changed the redef version of getprocessaffinity.. to dword_ptr.
Mants 18434

git-svn-id: trunk@16735 -
2011-01-08 12:35:10 +00:00
sergei
15e1abddf7 * Windows RTL: Simplify SysUtils.GetLocalTime(). TSystemTime type for these targets matches one defined in Windows unit, so WinAPI function result can be used directly. Resolves #18346.
git-svn-id: trunk@16665 -
2010-12-30 20:40:47 +00:00
pierre
0fabda01a8 * Added code to support Windows 95 again
This code is disabled by default, you need to complie the RTL
  with option -dSUPPORT_WIN95.

    2.4.2 release is already not usable on Windows 95 because
  the kernel32 DLL function TryEnterCriticalSection is loaded
  into system unit unconditionnally, while this function does
  not exist in Winddows 95 kernel32.

    This patch uses LoadLibrary/GetProcAddress coupple to check if
  TryEnterCriticalSection exists and provides an alternate implementation
  that will be used on Windows 95 systems only (Windows 98 kernel32
  DLL does export TryEnterCriticalSection).

git-svn-id: trunk@16579 -
2010-12-17 14:12:43 +00:00
sergei
13bea29253 * win/sysutils.pp, FileOpen and FileCreate, removed manual zero-termination of strings. This unit compiles in {$h+} state, and AnsiString zero-termination is handled automatically these days.
git-svn-id: trunk@16558 -
2010-12-12 15:07:38 +00:00
sergei
179229007e * win/sysutils.pp: fix/clean up loading dll for SHGetFolderPath.
* Don't attempt to load shell32.dll, since every system with shell32.dll that exports SHGetFolderPath also has shfolder.dll present.
  * Load shfolder.dll using a full path in order to prevent loading of malicious code by placing a same-named dll into program directory (Mantis #18185).

git-svn-id: trunk@16549 -
2010-12-11 10:05:10 +00:00
sergei
c5162a7816 * win/sysutils.pp: Use GetModuleHandle for dynamic loading of kernel32.dll instead of LoadLibrary, this is possible because kernel32 is statically linked by RTL and is therefore always loaded with application. Also makes FreeLibrary at finalization unnecessary.
- Removed checks for Windows version, they are redundant. GetProcAddress simply returns nil if the function is not present.

git-svn-id: trunk@16540 -
2010-12-11 04:47:33 +00:00
Jonas Maebe
f4c31ecf3c + widestringmanager.codepointlengthproc added, which can be used to
determine the length of a multi-byte character. The return values
    are defined to be the same as those of POSIX' mblen: -1 =
    invalid/incomplete sequence, 0 = #0, > 0 = length of sequence in
    bytes.
  + default implementation for widestringmanager.codepointlengthproc
    (assumes all code points have length 1) and Unix implementation
    (based on mb(r)len); Windows implementation is still required
  * replaced default implementation of
    widestringmanager.CharLengthPCharProc with strlen() of the input
    instead of an error (correct if all code points have length 1,
    still needs Windows implementation)
  + implemented fpc_text_read_{wide,unicode}str() and
    fpc_text_read_widechar() (mantis #18163); fpc_text_read_widechar()
    uses the new widestringmanager.codepointlengthproc()
  + unicodestring support for readstr/writestr
  * fixed declaration of fpc_Write_Text_UnicodeStr (unicodestring
    instead of widestring parameter)
  * extended test/twide*.pp tests to test the new/fixed functionality

git-svn-id: trunk@16533 -
2010-12-10 14:10:01 +00:00
sergei
4e3cedb492 * VariantInit is a procedure, not a function (according to both MSDN and Delphi docs).
git-svn-id: trunk@16525 -
2010-12-09 01:27:09 +00:00
florian
a0c25dc0f9 - removes Thread_count from the system unit of several OSes: the value of this variable was unpredictable and the hebaviour was not fixable, resolves #18089
git-svn-id: trunk@16472 -
2010-11-28 20:46:50 +00:00
michael
cc0be1be4d * Completely initialize threadvars when an external thread is detected. Needs still cleanup code (or a better thread initialization/finalization).
git-svn-id: trunk@16432 -
2010-11-25 15:50:49 +00:00
sergei
cbdc08b641 * dynlibs.pas: added 'const' modifiers to eliminate unnecessary local string copies
git-svn-id: trunk@16366 -
2010-11-18 22:09:48 +00:00
paul
4036be1221 rtl: add IO_REPARSE_TAG constants
git-svn-id: trunk@16358 -
2010-11-18 04:06:49 +00:00
michael
5cdc3c3a29 * Correction of PAFProtocols (Ivan Shikhalev, bug ID #17924
git-svn-id: trunk@16335 -
2010-11-13 15:51:43 +00:00
sergei
80d69c8a22 * win/sysutils.pp, implement CompareUnicodeString and CompareTextUnicodeString, resolves #17591.
git-svn-id: trunk@16293 -
2010-11-02 07:34:23 +00:00
sergei
a4dd7701d9 * win/sysutils.pp: removed private WinAPI function declarations. Since this unit uses Windows unit, there's no point in re-declaring stuff.
git-svn-id: trunk@16292 -
2010-11-02 07:11:17 +00:00
sergei
ffc357a528 * TThread, Windows implementation: prevent resource leak when destroying an initially suspended and never resumed thread. The thread must be always resumed so that ThreadProc can complete and cleanup. Fixes Mantis #17560.
git-svn-id: trunk@16290 -
2010-11-01 22:37:33 +00:00
sergei
0933bdc045 * win/sysutils.pp, removed an unused variable (forgotten part of r13838)
git-svn-id: trunk@16282 -
2010-11-01 00:38:51 +00:00
florian
27ff441975 o patch from Sven Barth:
- remove critical section from dll initialization, windows allows only one thread at one to run dllmain, resolves #17858

git-svn-id: trunk@16263 -
2010-10-30 14:37:55 +00:00
marco
8304d2c1c5 * adds gwlp and gclp constants, mantis 17656 and 17655
git-svn-id: trunk@16179 -
2010-10-17 19:58:49 +00:00
mazen
b127fc154a * Fixed spell error revealed by lintian.
git-svn-id: trunk@16094 -
2010-10-06 20:33:57 +00:00
sergei
a66876704b * Windows platforms: always start a thread in suspended state and resume it later in AfterConstruction if necessary, prevents race conditions in constructor. Fixes Mantis #16884 on Windows.
git-svn-id: trunk@16091 -
2010-10-06 16:57:15 +00:00
pierre
bdefb849fc * Fix for Bug report 17550
git-svn-id: trunk@16089 -
2010-10-06 16:04:46 +00:00
florian
e9550c62bf * inline original windows macros
git-svn-id: trunk@16054 -
2010-09-27 18:51:10 +00:00
marco
4e06fbf4f0 * corrected wrong register in x86_64 asm
git-svn-id: trunk@15851 -
2010-08-19 08:52:37 +00:00
florian
59702147ff * patch by "Vasil" to fix various WinCE and Win32 API conversion issues
git-svn-id: trunk@15824 -
2010-08-15 19:39:31 +00:00
marco
df19960f41 * simple fix for 16158, avoid crash on duplicate calling of DLL_PROCESS_DETACH
git-svn-id: trunk@15787 -
2010-08-12 15:34:43 +00:00
marco
ecd4b3dc23 * textmetricA variants, delphi compat.
git-svn-id: trunk@15779 -
2010-08-11 11:05:59 +00:00
marco
8caa62618f * support for east asia locale in formatdatetime. Patch from Taka_JP, mantis 14955 modified for recent sysutils rework, and to init eastasia support only once.
git-svn-id: trunk@15776 -
2010-08-11 09:03:13 +00:00
marco
2d8ac256cf * First era patch of Taka_JP.
git-svn-id: trunk@15775 -
2010-08-11 08:29:47 +00:00
marco
1181115baa * getlocalformatsettings, Mantis 10389
git-svn-id: trunk@15691 -
2010-08-02 20:32:50 +00:00
marco
79678bfbe2 * fix for 17008, changed bytes component of mapviewoffile(ex) to size_t
git-svn-id: trunk@15630 -
2010-07-24 19:03:59 +00:00
marco
5564ab3582 * added cdecl to some overloaded wsprintfa/w variants. Mantis 16915
git-svn-id: trunk@15561 -
2010-07-13 03:44:04 +00:00
marco
deb78080ed * fix for Mantis 16564. Raise buffersize of getlocalechar to MSDN limit 4,
so that locales with long dateseparators (time,thousand,decimal) now 
  succeed, even if limited only to first char. (Delphi limit)

git-svn-id: trunk@15328 -
2010-05-26 20:14:08 +00:00
marco
462cb65726 * Several dword_ptr fixes triggered by mantis 16524
git-svn-id: trunk@15299 -
2010-05-20 19:39:54 +00:00
paul
714a7e82d7 rtl: add UDS_HOTTRACK style
git-svn-id: trunk@15234 -
2010-05-06 01:16:44 +00:00
florian
fecd661bcb * fixed COPYDATASTRUCT as suggested by Dmitry Boyarintsev, resolves #16321
git-svn-id: trunk@15166 -
2010-04-24 17:21:55 +00:00
marco
6a7bc76ca0 * later SM_ constants for getmetrics mantis 16138
git-svn-id: trunk@15089 -
2010-03-29 11:25:26 +00:00
marco
8cce3d3f91 * closethread thread manager field/function. Mantis 13160
git-svn-id: trunk@15072 -
2010-03-26 23:31:52 +00:00
marco
c477df5046 * TCriticalSection.Tryenter support (Mantis 15928) + short test/demo
tested on FreeBSD (general Unix) and Windows. Note that Haiku seems 
    to have a native threadmgr rather than the Unix one. Will notify 
    maintainer (Olivier)

git-svn-id: trunk@15026 -
2010-03-21 11:34:05 +00:00
marco
be98b13554 * fix for 11263, changed fileread and fd_zero to out using $modeswitch.
git-svn-id: trunk@14965 -
2010-03-01 22:35:14 +00:00
marco
4ee7f3adee * fix for mantis 15865 add hmonitor
git-svn-id: trunk@14953 -
2010-02-28 12:38:17 +00:00
Tomas Hajny
5c31042f6a * SharedSuffix moved to include files to reduce number of ifdefs
git-svn-id: trunk@14902 -
2010-02-13 15:44:12 +00:00
marco
ef4954f8d9 * Pascal version for asm code in video (Mantis 15700)
git-svn-id: trunk@14901 -
2010-02-13 15:37:07 +00:00
marco
da19c48e05 * initial x86_64 code for compare videobuffer. To be tested later. Mantis 15700
git-svn-id: trunk@14900 -
2010-02-13 14:30:07 +00:00
marco
54b15ba318 * tcursorinfo incorrectly was aliassed to console_cursor_info, which is incorrect for
getcursorinfo in redef.inc. Added cursor_info structs as per MSDN. Mantis 15745

git-svn-id: trunk@14898 -
2010-02-13 14:06:08 +00:00
marco
689094646e * image_file_machine constants
git-svn-id: trunk@14646 -
2010-01-14 20:28:58 +00:00
marco
8e9a7e14ad * Revised yesterday solution to a more general one. Executeprocess gets
another parameter, a set type with flags, default = []

git-svn-id: trunk@14572 -
2010-01-07 20:49:28 +00:00
florian
3f17af3437 * patch by taka_jp to set SysLocale.PriLangID on windows properly, resolves #14872
git-svn-id: trunk@14570 -
2010-01-07 20:06:24 +00:00
florian
e6648da567 * make heaptrc aware of the fact that multi threading could be initialized before heaptrc itself is initialized, this is currently the case for windows dlls
git-svn-id: trunk@14560 -
2010-01-07 13:41:43 +00:00
florian
fb07fe5856 * always assume a multithreaded application when using threadvars in dlls, resolves #14992
git-svn-id: trunk@14557 -
2010-01-06 21:26:49 +00:00
marco
0b4b9b5220 * Windows specific overloads for ExecuteProcess that implements a hack for redir that exists for dos.exec too.
.. but then not using a global variable

git-svn-id: trunk@14556 -
2010-01-06 19:50:09 +00:00
florian
737514c434 * win crt unit returns #13 for numeric enter as well, resolves #13203
git-svn-id: trunk@14459 -
2009-12-21 09:59:04 +00:00
florian
cc0d946f16 * fixes bootstrapping with 2.2.4
git-svn-id: trunk@14442 -
2009-12-14 18:51:57 +00:00
florian
7a82669942 * forgotten part of r14432
git-svn-id: trunk@14433 -
2009-12-13 11:18:49 +00:00
marco
d72c2991e5 * group type to u_long as per mantis 15241
git-svn-id: trunk@14320 -
2009-12-04 08:37:18 +00:00
michael
01ed4a6745 * Implemented OnBeep to install custom beep handler
git-svn-id: trunk@14254 -
2009-11-22 17:33:56 +00:00
marco
c83ee377c1 * some defines from winioctl updated, mantis 15137
git-svn-id: trunk@14216 -
2009-11-19 11:51:03 +00:00
marco
17062d667c * ansistring versions of mk/rm/chdir in objpas, Mantis 15010. The os-dependant routines of *nix/os2/win/dos have been converted
git-svn-id: trunk@14211 -
2009-11-18 18:04:51 +00:00
florian
c288e6c105 * deallocate thread variables for the main thread as well, as described in #15002
git-svn-id: trunk@14201 -
2009-11-16 19:36:32 +00:00
pierre
19cc28d974 * STD_XXX_HANDLE constants are DWORD type
git-svn-id: trunk@14124 -
2009-11-09 15:41:40 +00:00
michael
1cf64c032f * Patch to remove useless process_entry_hook from sven barth
git-svn-id: trunk@14094 -
2009-11-07 10:10:47 +00:00
marco
59811e1012 * Findfirstex and findfirsttransacted as per #14924
git-svn-id: trunk@14080 -
2009-11-06 11:46:25 +00:00
marco
a91e106cde * PWSADAta was missing ^ to make it a pointer.
git-svn-id: trunk@13936 -
2009-10-23 19:01:35 +00:00
florian
cba72c423d * patch by Sergei Gorelkin to use always SetFilePointer, also for files with >2GB, this saves some lines of code, resolves #14630
git-svn-id: trunk@13838 -
2009-10-10 18:52:50 +00:00
michael
12fcb19bf4 * Added comment in SysRelocateThreadVar, not working in Windows Vista
git-svn-id: trunk@13753 -
2009-09-21 09:34:53 +00:00
marco
47e90bbdf3 * typo corrected as per #14578
git-svn-id: trunk@13707 -
2009-09-13 20:20:02 +00:00
florian
2f8e263560 * allow only one thread at a time to attach on a dll so the tls slot is allocated properly, resolves #12987
git-svn-id: trunk@13648 -
2009-09-05 13:41:09 +00:00
florian
a8c6d9ec3a * partially reverted 13571, I didn't get it work on W7 x64 in win32 mode
* use $ffffffff to signal an unsed TLSKey, 0 is a valid TLSKey and could be returned by Windows in theory

git-svn-id: trunk@13608 -
2009-08-29 20:46:06 +00:00
florian
d3d3596cd6 * accelerated/fixed TLS access on win32 by Pierre Muller
git-svn-id: trunk@13571 -
2009-08-21 09:15:11 +00:00
florian
512d66988c * put linebuffer on the stack instead on the heap on windows makes SysUpdateScreen slightly faster
git-svn-id: trunk@13540 -
2009-08-16 10:25:35 +00:00
florian
965828b6de * fix building on wince, resolves #14345
git-svn-id: trunk@13537 -
2009-08-15 20:58:31 +00:00
florian
a2862ce347 * cleaned up mess of r13516
git-svn-id: trunk@13524 -
2009-08-12 19:34:46 +00:00
florian
65690b9eee * forgotten part of r13514
git-svn-id: trunk@13522 -
2009-08-12 18:42:09 +00:00
florian
d34061d7e4 * introduced fmShareDenyNoneFlags on windows because the meaning of fmShareDenyNone is unclear, see also #8898
git-svn-id: trunk@13514 -
2009-08-10 20:33:20 +00:00
florian
380f3ac78f * fix from Nikolay Samofatov for #12987: initialize thread vars in libraries on windows correctly
* unified dll entry code between win32 and win64

git-svn-id: trunk@13445 -
2009-07-25 21:08:36 +00:00
florian
05ff453182 * patch by Dmitry Boyarintsev to fix some parameter names, resolves #14043
git-svn-id: trunk@13442 -
2009-07-25 15:14:14 +00:00
florian
e4e2b5be18 * added overloeaded InterlockedExchangeAdd with first parameter being a pointer, resolves #13282
git-svn-id: trunk@13363 -
2009-07-05 18:57:48 +00:00
marco
0212aa9311 * dss constants from Paul
git-svn-id: trunk@13303 -
2009-06-20 11:17:41 +00:00
florian
b47650960e * patch by Sergei Gorelkin: makes WideCompareText and WideCompareStr work in Windows 9x , resolves #13955
git-svn-id: trunk@13265 -
2009-06-12 18:21:06 +00:00
yury
3b32571557 * Fixed compilation for win64. ThreadID is DWORD on both win32 and win64.
git-svn-id: trunk@13235 -
2009-06-05 14:59:42 +00:00
florian
88f6b8854e * proper error handling in case of thread creation failure on windows, resolves #13768, no test case due because such a test is too sensitive regarding race conditions etc. and might cause false failures
git-svn-id: trunk@13222 -
2009-06-01 14:17:01 +00:00
Jonas Maebe
78c29a33ba * changed the parameters of gotoxy() and the return values of wherex/wherey
from byte into tcrtcoord=1..255, since all crt unit coordinates are
    1-based (not for Window() procedure, see comments in crth.inc;
    mantis #13788)

git-svn-id: trunk@13191 -
2009-05-24 11:48:49 +00:00
marco
82b9749e71 * thread creation failure for win<x>. Mantis 13798
git-svn-id: trunk@13188 -
2009-05-23 15:40:13 +00:00
marco
8fe555afca * some minor vista/w7 related updates to message numbers
git-svn-id: trunk@13183 -
2009-05-21 14:11:16 +00:00
marco
ec364a66e8 * win64 compatibility fix from Vincent. TLibHandle is now equal to system.thandle
git-svn-id: trunk@13182 -
2009-05-21 11:26:54 +00:00
marco
97093e4f2b * fixed 64-bit size of findmatch. (mantis 13504) Tested with $12000001 bytes large file, matched to the byte.
git-svn-id: trunk@13014 -
2009-04-16 05:38:00 +00:00
marco
c63a3723e1 * 64-bit related fix to overlapped structure (Mantis 13443)
git-svn-id: trunk@12994 -
2009-04-02 11:18:11 +00:00
micha
be06f28b18 - win rtl: remove unused thread window (hint by Sergei Gorelkin)
git-svn-id: trunk@12872 -
2009-03-09 19:10:00 +00:00
Vincent Snijders
acba12517b * fixed compilation on win64 by using LResult as result type of a window proc
git-svn-id: trunk@12779 -
2009-02-23 20:29:08 +00:00
micha
3b171cb6fb * windows rtl: fix resource leak when cleaning up last tthread without message loop (fixes issue #13173)
git-svn-id: trunk@12761 -
2009-02-21 17:42:33 +00:00
florian
0c65d53f45 + added register keyword to Interlocked* definitions as suggested by Jonas, resolves #12255
git-svn-id: trunk@12698 -
2009-02-07 16:09:05 +00:00
marco
c13f553b9b * comment added previous commit
git-svn-id: trunk@12683 -
2009-02-04 09:11:25 +00:00
marco
33133d00da * polybezierto and polydraw corrected as per Mantis 13112
git-svn-id: trunk@12677 -
2009-02-03 20:38:27 +00:00
marco
017f7b2528 * log* defines.
git-svn-id: trunk@12665 -
2009-02-02 20:44:18 +00:00
marco
1533599426 * regionsize now ptruint, mantis 13077
git-svn-id: trunk@12638 -
2009-02-01 13:20:21 +00:00
marco
c72c091277 * fix for 12619, security_descriptor_min_length now a sizeof as in the winsdk headers. (win64)
git-svn-id: trunk@12066 -
2008-11-13 08:53:50 +00:00
marco
f042df1bdb * fix for several -W macro's.
git-svn-id: trunk@11989 -
2008-10-28 14:28:38 +00:00
marco
b96c83d5d6 * 64-bit fix for extlogpen
git-svn-id: trunk@11985 -
2008-10-27 13:43:01 +00:00
marco
e5d18aba3e * TLogBrush.lbHatch should be ulong_ptr (win64 problem)
git-svn-id: trunk@11984 -
2008-10-27 12:32:57 +00:00
Almindor
4972ec0ae5 + add missing SHUT_* constants for fpshutdown() (aliases from winsock2)
git-svn-id: trunk@11939 -
2008-10-20 16:57:32 +00:00
marco
15b5f150b4 * getcombobox changes dll. (12200)
git-svn-id: trunk@11818 -
2008-09-23 08:36:56 +00:00
florian
a8804cf2a6 * unified some win32/win64 code
git-svn-id: trunk@11745 -
2008-09-10 21:25:59 +00:00
yury
f020a0a669 * LPMSG is pointer to MSG. Spotted by Vasil Maximov.
git-svn-id: trunk@11577 -
2008-08-14 14:49:36 +00:00
Almindor
4a54f15b47 * fix GetAppConfigDir and GetTmpDir for Windows(R)(c)(TM) and WinCE, unify with unix and provide pathdelim at end
git-svn-id: trunk@11529 -
2008-08-07 10:22:30 +00:00
marco
7e72e81662 * pboolean is now deprecated because it conflicts with system.pboolean. Under ifndef 2_2. (#11380)
Merging not needed, except maybe for documentation purposes?

git-svn-id: trunk@11350 -
2008-07-09 13:43:27 +00:00
michael
26575472b6 * Added GetUSerDir function (ID 11338)
git-svn-id: trunk@11074 -
2008-05-24 11:50:26 +00:00
marco
9d19ee390c * bug #10571, getcompletionstatus was already added, postcompletionstatus in this commit
git-svn-id: trunk@10896 -
2008-05-06 22:12:06 +00:00
marco
ba9e709878 * fix for 11238
git-svn-id: trunk@10849 -
2008-05-01 11:23:04 +00:00
florian
fa6c504041 + variant functions of oleaut32.dll added
git-svn-id: trunk@10815 -
2008-04-27 13:18:40 +00:00
yury
62e616cae0 * Fixed warnings. rtl is warnings and notes free for wince and win32 again.
git-svn-id: trunk@10632 -
2008-04-12 13:34:26 +00:00
florian
6c5471f324 * don't destroy LastError when resolving a threadvar on windows, resolves #10205 (?)
git-svn-id: trunk@10621 -
2008-04-09 21:27:11 +00:00
marco
6e4782a9db * fix for 10766
git-svn-id: trunk@10607 -
2008-04-06 12:28:18 +00:00
michael
174de3eab1 Merged revisions 9693-10480 via svnmerge from
svn+ssh://svn.freepascal.org/FPC/svn/fpc/branches/resources

........
  r9694 | michael | 2008-01-09 21:31:18 +0100 (Wed, 09 Jan 2008) | 1 line
  
  * Initial check-in
........
  r9695 | michael | 2008-01-09 21:35:58 +0100 (Wed, 09 Jan 2008) | 1 line
  
  * New version from Giulio Bernardi
........
  r9697 | michael | 2008-01-09 21:41:54 +0100 (Wed, 09 Jan 2008) | 1 line
  
  * Patch from Giulio Bernardi with resource support
........
  r9698 | michael | 2008-01-09 21:46:33 +0100 (Wed, 09 Jan 2008) | 1 line
  
  * Patch from Giulio Bernardi to add more resource testing
........
  r9699 | michael | 2008-01-09 21:57:26 +0100 (Wed, 09 Jan 2008) | 1 line
  
  * New tool from Giulio Bernardi
........
  r9700 | michael | 2008-01-09 21:58:23 +0100 (Wed, 09 Jan 2008) | 1 line
  
  * New tool from Giulio Bernardi
........
  r9701 | michael | 2008-01-09 22:01:54 +0100 (Wed, 09 Jan 2008) | 1 line
  
  * Added fcl-res
........
  r9702 | michael | 2008-01-09 22:01:58 +0100 (Wed, 09 Jan 2008) | 1 line
  
  * Added fcl-res
........
  r9703 | michael | 2008-01-10 08:54:26 +0100 (Thu, 10 Jan 2008) | 1 line
  
  * Fixed double code
........
  r9704 | jonas | 2008-01-10 10:59:20 +0100 (Thu, 10 Jan 2008) | 2 lines
  
    - removed duplicate code
........
  r9705 | jonas | 2008-01-10 11:25:21 +0100 (Thu, 10 Jan 2008) | 2 lines
  
    + added missing fcl-res dependencies
........
  r9706 | jonas | 2008-01-10 11:58:30 +0100 (Thu, 10 Jan 2008) | 2 lines
  
    + dependencies for fpintres and fpextres
........
  r9707 | yury | 2008-01-10 12:47:51 +0100 (Thu, 10 Jan 2008) | 3 lines
  
  * Fixed compilation of resource, which is included in a unit located in different folder than main source.
  * .res files must be copied to units output folder, otherwise .res files will not be found when only compiled units path is available and compiler does not know anything about sources folder.
  * Improved resource related error messages.
........
  r9708 | michael | 2008-01-10 12:52:13 +0100 (Thu, 10 Jan 2008) | 1 line
  
  * Removed double source after end.
........
  r9709 | michael | 2008-01-10 12:52:48 +0100 (Thu, 10 Jan 2008) | 1 line
  
  * No longer needed
........
  r9710 | tom_at_work | 2008-01-10 22:09:08 +0100 (Thu, 10 Jan 2008) | 1 line
  
  * properly align FPC_RESLOCATION so that linking does not fail on some architectures (e.g. ppc64)
........
  r9711 | tom_at_work | 2008-01-10 23:53:12 +0100 (Thu, 10 Jan 2008) | 1 line
  
  * fix splitting of 64 bit load/stores from/to unaligned memory locations into multiple load/stores, which in some cases generated wrong code
........
  r9712 | michael | 2008-01-11 11:00:08 +0100 (Fri, 11 Jan 2008) | 1 line
  
  * Fixed bug in BSS section on 64-bit platforms
........
  r9720 | giulio | 2008-01-12 10:02:04 +0100 (Sat, 12 Jan 2008) | 1 line
  
  Updated fcl-res documentation: occurrences of reslib changed to fcl-res.
........
  r9740 | giulio | 2008-01-13 19:36:44 +0100 (Sun, 13 Jan 2008) | 3 lines
  
   - Don't try to compile resources on systems with a non windows-like resource support.
   - Don't add the .or file to the list of object files if resource compiling failed.
........
  r10201 | giulio | 2008-02-04 11:35:44 +0100 (Mon, 04 Feb 2008) | 5 lines
  
  * resource compiling supported on OS/2 via wrc
  * CompileResourceFiles and CollectResourceFiles don't do target-specific checks anymore
  * refactored a bit
........
  r10389 | giulio | 2008-02-25 21:32:52 +0100 (Mon, 25 Feb 2008) | 2 lines
  
  Deleted test file which was committed by mistake
........
  r10472 | giulio | 2008-03-10 12:22:18 +0100 (Mon, 10 Mar 2008) | 2 lines
  
  changed define FPC_HAS_RESOURCES to FPC_HAS_WINLIKERESOURCES
........

git-svn-id: trunk@10481 -
2008-03-12 21:33:48 +00:00
florian
ff03c9569d * fixed writing of long strings when using the crt unit on win32, resolves #8843
git-svn-id: trunk@10449 -
2008-03-06 20:20:29 +00:00
marco
4047d76279 win32finddataa
git-svn-id: trunk@10409 -
2008-03-01 16:38:55 +00:00
marco
46acbe2ee0 * moved commdlg functions from windows to commdlg unit. Constants still have to be done.
git-svn-id: trunk@10323 -
2008-02-13 22:21:11 +00:00
marco
2e1682d7a7 * fix for #10772 interlocked now calling convention default (I hope, this modifier is undocumented #10823)
* remove comctl32 functions from windows. In time accctrl and comdlg functions will also go, but for that the respective windows headers must be done first.
      This both for delphi compat, and to avoid duplicate identifiers (and vague errors) as encountered with win32extra merging.

git-svn-id: trunk@10321 -
2008-02-13 21:00:14 +00:00
marco
4774f766e0 * second batch Lazarus' win32extra merging. Basic migration done, though a few discussion items remain open.
git-svn-id: trunk@10269 -
2008-02-10 14:17:11 +00:00
marco
c6c6bbd13a * first batch of lazarus' win32extra enhancements
git-svn-id: trunk@10268 -
2008-02-10 13:45:37 +00:00
marco
e9804d7002 * some more small updates.
git-svn-id: trunk@10258 -
2008-02-09 19:46:14 +00:00
marco
f8f4fc21a3 * More image_ structs from winnt.h
git-svn-id: trunk@10257 -
2008-02-09 18:55:59 +00:00
marco
bdf213a03a * ulong32 + 64 needed for imagehlp.pp
git-svn-id: trunk@10256 -
2008-02-09 12:31:20 +00:00
marco
71a017aca0 * overload fix.
git-svn-id: trunk@10252 -
2008-02-08 19:58:51 +00:00
marco
fe7b1a7f2e * fixed smartlink like Jonas proposed dd 2008-01-06. Also relevant because of 10766
git-svn-id: trunk@10235 -
2008-02-07 09:56:51 +00:00
marco
51dc129916 * lfanew in dosheader aliased with union
git-svn-id: trunk@10229 -
2008-02-05 10:12:30 +00:00
marco
e7e430d2f5 * getfileinfoex + small delphi compat fix (tbstr)
git-svn-id: trunk@10195 -
2008-02-03 21:14:38 +00:00
marco
b527b5948a * TImageSectionHeader without underscores, per delphi compat
git-svn-id: trunk@10194 -
2008-02-03 20:37:13 +00:00
marco
5156dc33b2 * image_* related constants expanded.
git-svn-id: trunk@10193 -
2008-02-03 20:01:03 +00:00
marco
f2d6410812 * More small compat fixes and constants.
git-svn-id: trunk@10190 -
2008-02-03 17:57:56 +00:00
marco
a259154511 * propvariant and friends.
git-svn-id: trunk@10185 -
2008-02-03 17:18:45 +00:00
marco
fc2a1eb190 * minor delphi compat fixes for jcl
git-svn-id: trunk@10175 -
2008-02-03 10:59:39 +00:00
marco
07808fc80f * plresult for IContextMenu<x>
git-svn-id: trunk@10121 -
2008-01-30 22:50:51 +00:00
peter
69363bad5e * quote parameters with spaces
git-svn-id: trunk@10111 -
2008-01-30 00:15:22 +00:00
peter
f4f3ae84d0 * AllowDirectorySeparators and AllowDriveSeparators typed constants
added to allow customization of path and directory parsing in the rtl
  * Use the new sets instead of the hardcoded / and \

git-svn-id: trunk@10105 -
2008-01-29 23:04:56 +00:00
marco
5eb8f7006b * interlockedincrement aliased for delphi compat
git-svn-id: trunk@10101 -
2008-01-29 21:02:13 +00:00
marco
66d08b2586 * Delphi compat overload reenabled.
git-svn-id: trunk@10098 -
2008-01-29 20:06:38 +00:00
marco
d7c9bb88d2 * remove some redundant pbyte definitions.
git-svn-id: trunk@10097 -
2008-01-29 19:37:41 +00:00
peter
95d0ce1270 * VendorName function added to allow an extra subdirectory
to group multiple products
  * OnGetVendorName hook, like OnGetApplicationName
  * use COMMON_APPPATH for global config files under windows

git-svn-id: trunk@10072 -
2008-01-27 21:40:55 +00:00
peter
50a9dcd5f9 * global appconfig dir needs to be common_appdata directory
git-svn-id: trunk@10068 -
2008-01-27 19:55:05 +00:00
marco
4b43848d66 * More fixes for 10522
git-svn-id: trunk@9608 -
2008-01-01 17:41:15 +00:00
marco
29b72c584a * DFCS_* constants for win2000+. Part of #10522
git-svn-id: trunk@9607 -
2008-01-01 17:28:54 +00:00
yury
ff78a443db * Removed user defined warning "TextMode not implemented yet!!", since TextMode will not be implemented for Windows anyway...
git-svn-id: trunk@9544 -
2007-12-27 22:18:48 +00:00
yury
d306e25dc8 * Fixed warnings.
git-svn-id: trunk@9514 -
2007-12-22 12:27:03 +00:00
yury
d7d6b37158 * Fixed warnings.
git-svn-id: trunk@9513 -
2007-12-22 12:12:25 +00:00
florian
e7caecb584 + useunicodefunctions flag added
git-svn-id: trunk@9483 -
2007-12-16 17:48:20 +00:00
florian
86e3e79e67 + WC_NO_BEST_FIT_CHARS
* use WC_NO_BEST_FIT_CHARS when calling WideCharToMultiByte
* made tiwde6 more verbose

git-svn-id: trunk@9481 -
2007-12-16 13:45:09 +00:00
Almindor
a6d8590dc1 * use WINSOCK_VERSION in sockets init in windows
git-svn-id: trunk@9430 -
2007-12-11 20:34:46 +00:00
marco
3e1eba1745 * logon32 constants expanded #10280
git-svn-id: trunk@9338 -
2007-11-27 15:37:23 +00:00
Almindor
b0770c35ef * add WINSOCK_VERSION to old winsock1 unit
git-svn-id: trunk@9316 -
2007-11-22 09:53:35 +00:00
florian
09c9793938 * avoid deadlock when shutting down the event handler thread
git-svn-id: trunk@9212 -
2007-11-11 22:27:29 +00:00
florian
cb2e9c6ac8 * avoid deadlock during ReadConsoleInput, should resolve #10150
git-svn-id: trunk@9205 -
2007-11-11 21:12:32 +00:00
florian
b7cce59ac7 * GetKeyEventFromQueueWait waits always till it gets an event
git-svn-id: trunk@9203 -
2007-11-11 19:22:34 +00:00
Marc Weustink
a67b2a7484 * Added some statusses
git-svn-id: trunk@9160 -
2007-11-07 23:39:33 +00:00
yury
9759a9d9c1 * Reverted r9101, because it causes problems. We must find a better solution to get rid of these warnings.
git-svn-id: trunk@9104 -
2007-11-03 13:09:41 +00:00
yury
cc31f2d720 * Changed LPARAM type to be ptruint instaed of ptrint to fix confusing warnings in SendMessage/PostMessage when pointer is passed in lparam. It should not lead to problems.
git-svn-id: trunk@9101 -
2007-11-03 12:18:16 +00:00
yury
220a37b443 * Do not fill generic upcase and lowcase conversion tables for windows targets, because generic ANSI routines are not used here.
git-svn-id: trunk@9049 -
2007-11-01 16:15:29 +00:00
florian
ea07c6176c - $Log$ killed
git-svn-id: trunk@8995 -
2007-10-29 21:23:14 +00:00
florian
7da7364ee7 * refactored SysResetFPU into SysInitFPU and SysResetFPU
git-svn-id: trunk@8966 -
2007-10-28 12:06:49 +00:00
florian
fd237cd084 * whitespaces fixed
git-svn-id: trunk@8803 -
2007-10-14 18:31:32 +00:00
florian
e4fdb15e3f + added critical section protection for putmouseevent, just in case
* typo fixed

git-svn-id: trunk@8802 -
2007-10-14 18:31:04 +00:00
florian
7f441e0bca + added more FILE_ATTRIBUTE constants, resolves #9669
git-svn-id: trunk@8614 -
2007-09-23 13:10:06 +00:00
florian
ecc45e16db * formatting fixed ;)
git-svn-id: trunk@8613 -
2007-09-23 13:09:24 +00:00
marco
e034788320 * two semi colon's added and compilation checked
git-svn-id: trunk@8342 -
2007-08-30 20:09:35 +00:00
Almindor
9525a96db7 * update winsock2 to version 2.2 regarding SO_ and AF_ constants
git-svn-id: trunk@8329 -
2007-08-29 09:38:01 +00:00
Almindor
8a0eeb5e57 * make the updates also compilable (move struct down, add LPWSAMSG = PWSAMSG)
git-svn-id: trunk@8277 -
2007-08-13 11:01:04 +00:00
Almindor
3f6f91ae79 * adds WSARecvMsg and WSASendMsg along with requires structure to winsock2
git-svn-id: trunk@8276 -
2007-08-13 10:43:22 +00:00
yury
f2df73cfe9 * Patch from Felipe Monteiro de Carvalho.
git-svn-id: trunk@8150 -
2007-07-23 13:25:30 +00:00
michael
7f58252179 * Extra mouse button defines from Pavel Ishenin
git-svn-id: trunk@8102 -
2007-07-19 12:08:41 +00:00