The specified format 'd2' is invalid System.NumberFormatter.NumberToString

### 关于 `System.NumberFormatter` 中 `'d2'` 格式无效的解决方案 在处理 `System.NumberFormatter` 的时候,如果遇到 `'d2'` 这种格式被标记为无效的情况,通常是因为该格式并不适用于数字格式化器的标准语法。根据常见的数字格式化标准[^1],`'d2'` 并不是一个合法的格式标识符。 #### 可能的原因分析 1. **错误理解格式标识符** 在许多编程环境中(如 Java 或 C#),`'d'` 通常是用来表示整数部分的占位符,而后面的数字可能代表最小宽度。然而,在某些特定实现中(例如 Flash 的 `NumberFormatter`[^4] 或其他自定义库),这种格式可能并未得到支持。 2. **未正确设置属性** 如果使用的是类似于 `flash.globalization.NumberFormatter` 的工具,则需要通过其 API 明确指定小数位数和其他选项。例如,可以通过 `fractionalDigits` 属性来设定小数点后的位数[^4]。 3. **目标环境差异** 不同平台对于相同名称的功能可能会有不同的解释。例如,Spring MVC 提供的 `NumberFormatter` 主要关注于模式匹配和国际化需求[^2],而不是简单的字符替换逻辑。 #### 解决方案建议 为了修复 `'d2'` 格式无效的问题,可以尝试以下几种方法: 1. **切换至有效的格式字符串** 使用更广泛接受的形式代替 `'d2'`。比如,在大多数情况下可以用 `"#,##0.00"` 来替代它以确保两个固定的小数位置[^3]: ```java NumberFormat format = NumberFormat.getInstance(); format.setMaximumFractionDigits(2); format.setMinimumFractionDigits(2); format.setGroupingUsed(true); // 启用千分位分隔 ``` 2. **调整参数传递方式** 若当前使用的框架允许动态修改行为,则应查阅文档找到如何配置期望的结果。例如,在 ActionScript 中创建一个实例并调整相关字段即可满足条件: ```actionscript var nf:NumberFormatter = new NumberFormatter(LocaleID.DEFAULT); nf.fractionalDigits = 2; trace(nf.format(123456789)); ``` 3. **验证输入数据合法性** 确认所提供的原始数值确实适合所选格式。有时异常源于试图应用不适合类型的模板给定值之上。 4. **咨询官方资料或社区资源** 当本地排查无果时,访问对应技术栈的支持站点或者论坛往往能够获得针对性解答。 ```python def custom_formatter(value): import locale locale.setlocale(locale.LC_ALL, '') formatted_value = locale.format_string("%.2f", value, grouping=True) return formatted_value print(custom_formatter(1234567.89)) # 输出形如 '1,234,567.89' ``` #### 总结 针对 `System.NumberFormatter` 报告 `'d2'` 作为非法格式这一现象,最直接的办法是从根本上改写成兼容性强的新样式;同时也要注意甄别实际运行上下文中是否存在特殊约定影响最终呈现效果。

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

Python内容推荐

INTRODUCTION TO PYTHON SCRIPTING FOR MAYA ARTISTS.

INTRODUCTION TO PYTHON SCRIPTING FOR MAYA ARTISTS.

INTRODUCTION TO PYTHON SCRIPTING FOR MAYA ARTISTS.

HX8264-D03-DS-v03.pdf

HX8264-D03-DS-v03.pdf

儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐儿童节快乐

电脑各种错误信息的中文意思 绝对有用!

电脑各种错误信息的中文意思 绝对有用!

本资源是我长期一点一点从网上找到的!现在向大家分享。 里面包含了:、BIOS中的提示信息 、BIOS刷新失败后,Bootblock启动时出现的提示信息 、MBR主引导区提示信息、DOS活动分区中的提示信息、IO.SYS中的提示信息、COMMAND中的提示信息、 SYS传送系统文件时的提示信息、FORMAT中的提示信息......绝对物有所值,赶快下载吧!

edk2-IdfSpecification-release-1.00

edk2-IdfSpecification-release-1.00

edk2-IdfSpecification-release-1.00

iOS Fuondation Framework Reference

iOS Fuondation Framework Reference

iOS Fuondation Framework Reference

Araxis Merge Professional 2012.4162 (x86/x64).part2

Araxis Merge Professional 2012.4162 (x86/x64).part2

Merge Professional is the visual file comparison (diff), merging and folder synchronization application from Araxis. Use it to compare and merge source code, web pages, XML and other text files with native application performance. Directly open and compare the text from Microsoft Office (Word and Excel), OpenDocument, PDF and RTF files. Compare images and binary files. Synchronize folders. Perform code reviews and audits. Work with folder hierarchies containing thousands of files. Merge integrates with many SCM (version control) systems and other applications. Benefits For legal and publishing professionals: instantly identify every change between different contract or manuscript drafts. Directly open and compare the text from Microsoft Office (Word and Excel), OpenDocument, PDF and RTF files. Copy text from other applications (such as Microsoft Word) and paste it directly into a text comparison window. For software engineers and web developers: compare, understand and combine different source file versions. Work quickly and accurately, whether you are comparing individual files or reconciling entire branches of source code. Use three-way comparison to integrate changes made by you, and those made by a colleague, with a common ancestor version. Synchronize a website with its staging area via ftp using the supplied ftp plugin. For release and quality control managers: compare different source code branches to give total confidence that you know and understand every change made to every file for a specific release. Compare product releases to be certain that only the expected files have been modified. Create an html or xml report of changes for audit purposes. For code reviewers and auditors: identify in context every change made between two or three source code hierarchies. Create a standalone html or xml report of your findings. Add bookmarks and comments to a file or folder comparison, then save it as a single-file archive for emailing to other team members for review. Other users: Whether you are working with multiple revisions of text files or need to keep multiple folder hierarchies in sync (for example, between a desktop and laptop machine), Merge could help save time and reduce errors by helping you to work quickly and accurately. File comparison and merging Merge enables you to compare and work with different revisions of text files, such as program source code, xml and html files. Merge can extract and compare the text from Microsoft Office, OpenDocument, PDF and RTF files. XML files can be shown with special formatting, helping you to see changes more clearly. It supports files with ascii, mbcs and Unicode character encodings. A colour-coded side-by-side comparison makes it easy to pinpoint at a glance similarities and differences between files. Linking lines are drawn between the documents showing clearly how they are related. Point-and-click merging lets you choose the parts of each file that you would like to add to a final merged version by simply clicking buttons. The in-place editor with unlimited undo enables complete control over the merged file as you create it. The file comparison display dynamically updates as the merge progresses. Merge shows detailed highlights of changes within lines. It can be configured to ignore differences in whitespace and line endings, as well as changes in lines matching specified regular expressions. The latter is useful for ignoring unimportant changes such as timestamps or expanded version control keywords. Binary and image file comparison Merge doesn’t just compare text files. Use image comparison to compare various types of image file and instantly see which pixels have been modified. Binary comparison enables you to identify differences in data files at a byte level. Three-way comparison and automatic merging Merge Professional adds advanced three-way visual file comparison and merging to the Standard Edition’s two-way visual file comparison and merging. This is particularly useful when more than one person is working on the same set of files. Automatic Merging enables swift reconciliation of even the largest files. Three-way file comparisons can be launched directly from a three-way folder comparison, allowing efficient integration of entire branches of source code. Integrated folder hierarchy comparison and synchronization Merge supports folder hierarchy comparison and synchronization, enabling you to compare and merge entire directory trees. This is ideal for detecting changes in different versions of source code or web pages. You can even use the efficient byte-by-byte comparison option to verify the contents of recordable cds or usb thumbsticks. The Professional Edition of Merge supports three-way folder comparison, enabling two revisions of a folder hierarchy to be merged with their common ancestor or some other folder hierarchy. This can be especially useful when used in conjunction with a source code control or software configuration management system. Direct access to FTP sites and configuration management systems An ftp plugin gives Merge file and folder comparisons direct access to files located on an ftp server. It is therefore possible to use a folder comparison to synchronize a local copy of a website’s content with the main site itself, provided the main site is running an ftp server. Merge plugins for Perforce, Subversion and Visual SourceSafe are also provided. These give Merge read-only access to files and folders located in Perforce depots, Subversion repositories and Visual SourceSafe databases. Therefore, for example, a Merge folder comparison can be used to compare a Perforce client workspace against the depot. Alternatively, different branches (or the same branch at different points in time) within a depot can be compared directly. A similar plugin for AllChange is available from Intasoft. Report generation File comparison reports (examples: two-way, three-way) can be created in html, html slideshow, xml or unix diff format. html reports are particularly useful for archiving and distribution. Folder comparison reports (examples: two-way, three-way) can be created in html or xml format. A folder comparison report can, optionally, include file comparison reports for some or all of the files involved in the folder comparison. Thus it is possible to generate a report that is a complete record of all the differences in all of the files involved in a folder comparison. This is especially useful in code review and code audit situations, particularly as reports can be generated directly for files and folders in configuration management systems for which there is a Merge plugin. Print support, Automation and other advanced features Other features include the ability to print a hard copy of file and folder comparisons, and to customize the behaviour and appearance of the application, including fonts, colours, whether the display is split horizontally or vertically, and more. A full Automation api and Command-Line Interface are included, allowing close integration with other applications (such as source code control and software configuration management systems) or your workflow. Comprehensive online documentation is supplied with the product and is also available from the Araxis website. Context-sensitive help is provided for every menu item, dialog and dialog control.

TLC2543.pdf

TLC2543.pdf

TLC2543.pdf TLC2543.pdf TLC2543.pdf TLC2543.pdf TLC2543.pdf TLC2543.pdf

java 操作excel表格经典例子

java 操作excel表格经典例子

java 操作excel表格经典例子,其内容全面而具体

tw8816datasheet

tw8816datasheet

TECHWILL 的TW8816datasheet

Araxis Merge Professional 2012.4162 (x86/x64).part1

Araxis Merge Professional 2012.4162 (x86/x64).part1

Merge Professional is the visual file comparison (diff), merging and folder synchronization application from Araxis. Use it to compare and merge source code, web pages, XML and other text files with native application performance. Directly open and compare the text from Microsoft Office (Word and Excel), OpenDocument, PDF and RTF files. Compare images and binary files. Synchronize folders. Perform code reviews and audits. Work with folder hierarchies containing thousands of files. Merge integrates with many SCM (version control) systems and other applications. Benefits For legal and publishing professionals: instantly identify every change between different contract or manuscript drafts. Directly open and compare the text from Microsoft Office (Word and Excel), OpenDocument, PDF and RTF files. Copy text from other applications (such as Microsoft Word) and paste it directly into a text comparison window. For software engineers and web developers: compare, understand and combine different source file versions. Work quickly and accurately, whether you are comparing individual files or reconciling entire branches of source code. Use three-way comparison to integrate changes made by you, and those made by a colleague, with a common ancestor version. Synchronize a website with its staging area via ftp using the supplied ftp plugin. For release and quality control managers: compare different source code branches to give total confidence that you know and understand every change made to every file for a specific release. Compare product releases to be certain that only the expected files have been modified. Create an html or xml report of changes for audit purposes. For code reviewers and auditors: identify in context every change made between two or three source code hierarchies. Create a standalone html or xml report of your findings. Add bookmarks and comments to a file or folder comparison, then save it as a single-file archive for emailing to other team members for review. Other users: Whether you are working with multiple revisions of text files or need to keep multiple folder hierarchies in sync (for example, between a desktop and laptop machine), Merge could help save time and reduce errors by helping you to work quickly and accurately. File comparison and merging Merge enables you to compare and work with different revisions of text files, such as program source code, xml and html files. Merge can extract and compare the text from Microsoft Office, OpenDocument, PDF and RTF files. XML files can be shown with special formatting, helping you to see changes more clearly. It supports files with ascii, mbcs and Unicode character encodings. A colour-coded side-by-side comparison makes it easy to pinpoint at a glance similarities and differences between files. Linking lines are drawn between the documents showing clearly how they are related. Point-and-click merging lets you choose the parts of each file that you would like to add to a final merged version by simply clicking buttons. The in-place editor with unlimited undo enables complete control over the merged file as you create it. The file comparison display dynamically updates as the merge progresses. Merge shows detailed highlights of changes within lines. It can be configured to ignore differences in whitespace and line endings, as well as changes in lines matching specified regular expressions. The latter is useful for ignoring unimportant changes such as timestamps or expanded version control keywords. Binary and image file comparison Merge doesn’t just compare text files. Use image comparison to compare various types of image file and instantly see which pixels have been modified. Binary comparison enables you to identify differences in data files at a byte level. Three-way comparison and automatic merging Merge Professional adds advanced three-way visual file comparison and merging to the Standard Edition’s two-way visual file comparison and merging. This is particularly useful when more than one person is working on the same set of files. Automatic Merging enables swift reconciliation of even the largest files. Three-way file comparisons can be launched directly from a three-way folder comparison, allowing efficient integration of entire branches of source code. Integrated folder hierarchy comparison and synchronization Merge supports folder hierarchy comparison and synchronization, enabling you to compare and merge entire directory trees. This is ideal for detecting changes in different versions of source code or web pages. You can even use the efficient byte-by-byte comparison option to verify the contents of recordable cds or usb thumbsticks. The Professional Edition of Merge supports three-way folder comparison, enabling two revisions of a folder hierarchy to be merged with their common ancestor or some other folder hierarchy. This can be especially useful when used in conjunction with a source code control or software configuration management system. Direct access to FTP sites and configuration management systems An ftp plugin gives Merge file and folder comparisons direct access to files located on an ftp server. It is therefore possible to use a folder comparison to synchronize a local copy of a website’s content with the main site itself, provided the main site is running an ftp server. Merge plugins for Perforce, Subversion and Visual SourceSafe are also provided. These give Merge read-only access to files and folders located in Perforce depots, Subversion repositories and Visual SourceSafe databases. Therefore, for example, a Merge folder comparison can be used to compare a Perforce client workspace against the depot. Alternatively, different branches (or the same branch at different points in time) within a depot can be compared directly. A similar plugin for AllChange is available from Intasoft. Report generation File comparison reports (examples: two-way, three-way) can be created in html, html slideshow, xml or unix diff format. html reports are particularly useful for archiving and distribution. Folder comparison reports (examples: two-way, three-way) can be created in html or xml format. A folder comparison report can, optionally, include file comparison reports for some or all of the files involved in the folder comparison. Thus it is possible to generate a report that is a complete record of all the differences in all of the files involved in a folder comparison. This is especially useful in code review and code audit situations, particularly as reports can be generated directly for files and folders in configuration management systems for which there is a Merge plugin. Print support, Automation and other advanced features Other features include the ability to print a hard copy of file and folder comparisons, and to customize the behaviour and appearance of the application, including fonts, colours, whether the display is split horizontally or vertically, and more. A full Automation api and Command-Line Interface are included, allowing close integration with other applications (such as source code control and software configuration management systems) or your workflow. Comprehensive online documentation is supplied with the product and is also available from the Araxis website. Context-sensitive help is provided for every menu item, dialog and dialog control.

Getting Started using PC-lint Plus

Getting Started using PC-lint Plus

Learn how to get started using PC-lint Plus.

luxadm FC adminstration

luxadm FC adminstration

sun solaris luxadm FC storage luxadm in detail

Bochs - The cross platform IA-32 (x86) emulator

Bochs - The cross platform IA-32 (x86) emulator

Changes in 2.4.6 (February 22, 2011): Brief summary : - Support more host OS to run on: - Include win64 native binary in the release. - Fixed failures on big endian hosts. - BIOS: Support for up to 2M ROM BIOS images. - GUI: select mouse capture toggle method in .bochsrc. - Ported most of Qemu's 'virtual VFAT' block driver (except runtime write support, but plus FAT32 suppport) - Added write protect option for floppy drives. - Bugfixes / improved internal debugger + instrumentation. Detailed change log : - CPU and internal debugger - Implemented Process Context ID (PCID) feature - Implemented FS/GS BASE access instructions support (according to document from http://software.intel.com/en-us/avx/) - Rewritten from scratch SMC detection algorithm - Implemented fine-grained SMC detection (on 128 byte granularity) - Bugfixes for CPU emulation correctness and stability - Fixed failures on Big Endian hosts ! - Print detailed page walk information and attributes in internal debugger 'page' command - Updated/Fixed instrumentation callbacks - Configure and compile - Bochs now can be compiled as native Windows x86-64 application (tested with Mingw gcc 4.5.1 and Microsoft Visual Studio Express 2010) - Added ability to configure CPUID stepping through .bochsrc. The default stepping value is 3. - Added ability to disable MONITOR/MWAIT support through .bochsrc CPUID option. The option is available only if compiled with --enable-monitor-mwait configure option. - Determine and select max physical address size automatically at configure time: - 32-bit physical address for 386/486 guests - 36-bit physical address for PSE-36 enabled Pentium guest - 40-bit physical address for PAE enabled P6 or later guests - Update config.guess/config.sub scripts to May 2010 revisions. - Update Visual Studio 2008 project files in build/win32/vs2008ex-workspace.zip - Added Bochs compilation timestamp after Bochs version string. - GUI and display libraries (Volker) - Added new .bochsrc option to select mouse capture toggle method. In addition to the default Bochs method using the CTRL key and the middle mouse button there are now the choices: - CTRL+F10 (like DOSBox) - CTRL+ALT (like QEMU) - F12 (replaces win32 'legacyF12' option) - display library 'x' now uses the desktop size for the maximum guest resolution - ROM BIOS - Support for up to 2M ROM BIOS images - I/O Devices - 3 new 'pseudo device' plugins created by plugin separation (see below) - Fixes for emulated DHCP in eth_vnet (patch from @SF tracker) - Added support for VGA graphics mode with 400 lines (partial fix for SF bug #2948724) - NE2K: Fixed "send buffer" command issue on big endian hosts - USB - converted common USB code plus devices to the new 'usb_common' plugin Now the USB device classes no longer exist twice if both HC plugins are loaded. - added 'pseudo device' in common USB code for the device creation. This makes the HCs independent from the device specific code. - USB MSD: added support for disk image modes (like ATA disks) - USB printer: output file creation failure now causes a disconnect - re-implemented "options" parameter for additional options of connected devices (currently only used to set the speed reported by device and to specify an alternative redolog file of USB MSD disk image modes) - hard drive - new disk image mode 'vvfat' - ported the read-only part of Qemu's 'virtual VFAT' block driver - additions: configurable disk geometry, FAT32 support, read MBR and/or boot sector from file, volatile write support using hdimage redolog_t class, optional commit support on Bochs exit, save/restore file attributes, 1.44 MB floppy support, set file modification date/time - converted the complete hdimage stuff to the new 'hdimage' plugin - new hdimage method get_capabilities() that can return special flags - vmware3, vmware4 and vvfat classes now return HDIMAGE_HAS_GEOMETRY flag - other disk image modes by default return HDIMAGE_AUTO_GEOMETRY if cylinder value is set to 0 - multiple sector read/write support for some image modes - new log prefix "IMG" for hdimage messages - floppy - added write protect option for floppy drives (based on @SF patch by Ben Lunt) - vvfat support - bugfix: close images on exit - SB16 - converted the sound output module stuff to the new 'soundmod' plugin - SF patches applied [3164945] hack to compile under WIN64 by Darek Mihocka and Stanislav [3164073] Fine grain SMC invalidation by Stanislav [1539417] write protect for floppy drives by Ben Lunt [2862322] fixes for emulated DHCP in eth_vnet - these S.F. bugs were closed/fixed [2588085] Mouse capture [3140332] typo in mf3/ps2 mapping of BX_KEY_CTRL_R [3111577] No "back" option in log settings [3108422] Timing window in NE2K emulation [3084390] Bochs won't load floppy plugin right on startup [3043174] Docbook use of '_' build failure [3085140] Ia_arpl_Ew_Rw definition of error [3078995] ROL/ROR/SHL/SHR modeling wrong when dest reg is 32 bit [2864794] BX_INSTR_OPCODE in "cpu_loop" causes crash in x86_64 host [2884071] [AIX host] prefetch: EIP [00010000] > CS.limit [0000ffff] [3053542] 64 bit mode: far-jmp instruction is error [3011112] error compile vs2008/2010 with X2APIC [3002017] compile error with vs 2010 [3009767] guest RFLAGS.IF blocks externel interrupt in VMX guest mode [2964655] VMX not enabled in MSR IA32_FEATURE_CONTROL [3005865] IDT show bug [3001637] CMOS MAP register meaning error [2994370] Cannot build with 3DNow support - these S.F. feature requests were closed/implemented [1510142] Native Windows XP x64 Edition binary [1062553] select mouse (de)activation in bochsrc [2930633] legacy mouse capture key : not specific enough [2930679] Let user change mouse capture control key [2803538] Show flags for pages when using "info tab" ------------------------------------------------------------------------- Changes in 2.4.5 (April 25, 2010): Brief summary : - Major configure/cpu rework allowing to enable/disable CPU options at runtime through .bochsrc (Stanislav) - Bugfixes for CPU emulation correctness and stability - Implemented X2APIC extensions (Stanislav) - Implemented Intel VMXx2 extensions (Stanislav) - Extended VMX capability MSRs, APIC Virtualization, X2APIC Virtualization, Extended Page Tables (EPT), VPID, Unrestricted Guests, new VMX controls. - Implemented PCLMULQDQ AES instruction - Extended Bochs internal debugger functionality - USB HP DeskJet 920C printer device emulation (Ben Lunt) Detailed change log : - Configure rework - Deprecate --enable-popcnt configure option. POPCNT instruction will be enabled automatically iff SSE4_2 is supported (like in hardware). - Make --ignore-bad-msrs runtime option in .bochsrc. Old --ignore-bad-msrs configure option is deprecated and should not be used anymore. - Enable changing part of CPU functionality at runtime through .bochsrc. - Now you could enable/disable any of SSEx/AES/MOVBE/SYSENTER_SYSEXIT/XSAVE instruction sets using new CPUID option in .bochsrc. - When x86-64 support is compiled in, you could enable/disable long mode 1G pages support without recompile using new CPUID option in .bochsrc. Configure options: --enable-mmx, --enable-sse, --enable-movbe, --enable-xsave, --enable-sep, --enable-aes, --enable-1g-pages are deprecated and should not be used anymore. - Local APIC configure option --enable-apic is deprecated and should not be used anymore. The LAPIC option now automatically determined from other configure options. XAPIC functionality could be enabled using new CPUID .bochsrc option. - Changed default CPU configuration (generated by configure script with default options) to BX_CPU_LEVEL=6 with SSE2 enabled. - CPU - Implemented PCLMULQDQ AES instruction - Implemented X2APIC extensions / enable extended topology CPUID leaf (0xb), in order to enable X2APIC configure with --enable-x2apic - Implemented Intel VMXx2 extensions: - Enabled extended VMX capability MSRs - Implemented VMX controls for loading/storing of MSR_PAT and MSR_EFER - Enabled/Implemented secondary proc-based vmexec controls: - Implemented APIC virtualization - Implemented Extended Page Tables (EPT) mode - Implemented Descriptor Table Access VMEXIT control - Implemented RDTSCP VMEXIT control - Implemented Virtualize X2APIC mode control - Implemented Virtual Process ID (VPID) - Implemented WBINVD VMEXIT control - Implemented Unrestricted Guest mode In order to enable emulation of VMXx2 extensions configure with --enable-vmx=2 option (x86-64 must be enabled) - Bugfixes for CPU emulation correctness - Fixed Bochs crash when accessing the first byte above emulated memory size - Internal Debugger - Introduced range read/write physical watchpoints - Allow reloading of segment registers from internal debugger - Improved verbose physical memory access tracing - BIOS - Fix MTRR configuration (prevented boot of modern Linux kernels) - Fix interrupt vectors for INT 60h-66h (reserved for user interrupt) by setting them to zero - Fix BIOS INT13 function 08 when the number of cylinders on the disk = 1 - I/O Devices - USB HP DeskJet 920C printer device emulation (Ben Lunt) - Misc - Updated Bochs TESTFORM to version 0.5 - SF patches applied [2864402] outstanding x2apic patches by Stanislav [2960379] Fix build with -Wformat -Werror=format-security by Per Oyvind Karlsen [2938273] allow instrumentation to change execute by Konrad Grochowski [2926072] Indirection operators in expressions by Derek Peschel [2914433] makesym.perl misses symbols by John R. Jackson [2908481] USB Printer by Ben Lunt - these S.F. bugs were closed/fixed [2861662] dbg_xlate_linear2phy needs to be updated [2956217] INT13 AH=8 returns wrong values when cylinders=1 [2981161] Allow DMA transfers to continue when CPU is in HALT state [2795115] NX fault could be missed [2964824] bad newline sequence in aspi-win32.h [913419] configure options and build process needs some work [2938398] gdbstub compile error with x86_64 enabled [2734455] shutdown/reset type 05 should reinit the PICs [1921294] extended memory less than 1M wrong size [1947249] BX_USE_EBDA_TABLES and MP table placement [1933859] BX_USE_EBDA_TABLES and memory overlapping [2923680] "help dregs" is a syntax error [2919661] CPU may fail to do 16bit near call [2790768] Memory corruption with SMP > 32, Panic BIOS Keyboard Error [2902118] interrupts vectors 0x60 to 67 should be NULL ! [2912502] Instruction Pointer behaving erratically [2901047] Bochs crashed, closed by guest os [2905385] Bochs crash [2901481] Instruction SYSRET and SS(PL) [2900632] Broken long mode RETF to outer priviledge with null SS [1429011] Use bx_phyaddr_t for physaddr vars and bx_adress for lin adr - these S.F. feature requests were closed/implemented [2955911] RPM preuninstall scriptlet removes /core [2947863] don't abort on unrecognised options [2878861] numerics in the disassembler output [2900619] make more CPU state changeable ------------------------------------------------------------------------- Changes in 2.4.2 (November 12, 2009): - CPU and internal debugger - VMX: Implemented TPR shadow VMEXIT - Bugfixes for CPU emulation correctness (mostly for VMX support). - Bugfixes and updates for Bochs internal debugger - On SMP system stepN command now affects only current processor - Memory - Bugfixes for > 32-bit physical address space. - Allow to emulate more physical memory than host actually could or would like to allocate. For more details look for new .bochsrc 'memory' option. - Cleanup configure options - All paging related options now will be automatically determined according to --enable-cpu-level option. Related configure options --enable-global-pages, --enable-large-pages, --enable-pae, --enable-mtrr are deprecated now. Only 1G paging option still remaining unchanged. - Deprecate --enable-daz configure option. Denormals-are-zeros MXCSR control will be enabled automatically iff SSE2 is supported (like in hardware). - Deprecate --enable-vme configure option, now it will be supported iff CPU_LEVEL >= 5 (like in hardware). - I/O Devices - Bugfixes for 8254 PIT, VGA, Cirrus-Logic SVGA, USB UCHI - SF patches applied [2817840] Make old_callback static by Mark Marshall [2874004] fix for VMWRITE instruction by Roberto Paleari [2873999] fix CS segment type during fast syscall invocation by Roberto Paleari [2864389] Debugger gui maximize on startup by Thomas Nilsen [2817868] Rework loops in the memory code by Mark Marshall [2812948] PIT bug by Derek - these S.F. bugs were closed/fixed [2833504] GUI debugger bug-about GDT display [2872244] BIOS writes not allowed value to MTRR MSR causing #GP [2885383] SDL GUI memory leak [2872290] compilation in AIX5.3 ML10 failes [2867904] crash with cirrus bx_vga_c::mem_write [2851495] BIOS PCI returns with INT flag = 0 [2860333] vista 64 guest STOP 109 (GDT modification) [2849745] disassembler bug for 3DNow and SSE opcodes [1066748] Wrong registers values after #RESET, #INIT [2836893] Regression: Windows XP installer unable to format harddrive [2812239] VMX: VM-Exit: Incorrect instruction length on software int [2814130] bx_debug lex/yacc files incorrectly generated [2813199] MP Tables Missing From BIOS [2824093] VMX exception bug [2811909] VMX : CS Access-rights Type.Accessed stays 0 [2810571] Compile Errors on OSX [2823749] GCC regression or VM_EXIT RDMSR/WRMSR bug [2815929] Vista/XP64 unnecessary panic [2803519] Wrong example in man page bochsrc - these S.F. feature requests were closed/implemented [422766] Large Memory configurations [1311287] Idea for a better GUI [455971] USB support [615363] debugger shortcut for repeat last cmd ------------------------------------------------------------------------- Changes in 2.4.1 (June 7, 2009): - Fixed bunch of CPUID issues - Bochs is now able to install and boot 64-bit Windows images! (special thanks to Mark Ebersole for his patch) - Several bugfixes in CPU emulation (mostly for x87 instructions) - Fixed two critical deadlock bugs in the Win32 gui (patches from @SF tracker) - Fixes related to the 'show ips' feature - removed conflicting win32-specific alarm() functions ('win32' and 'sdl' gui) - feature now works in wx on win32 - Added support for gdb stub on big endian machine (patch by Godmar Back) - Rewritten obsolete hash_map code in dbg symbols module (patch from @SF) - BIOS: implemented missing INT 15h/89h (patch by Sebastian Herbszt) ------------------------------------------------------------------------- Changes in 2.4 (May 3, 2009): Brief summary : - Added graphical Bochs debugger frontend for most of the supported platforms. - Thanks for Chourdakis Michael and Bruce Ewing. - Many new CPU features in emulation - Support for > 32 bit physical address space and configurable MSRs - VMX, 1G pages in long mode, MOVBE instruction - Bugfixes for CPU emulation correctness, debugger and CPU instrumentation. - New config interface 'win32config' with start and runtime menu - USB: added OHCI support, external hub and cdrom - Added user plugin interface support. Detailed change log : - CPU and internal debugger - Support for VMX hardware emulation in Bochs CPU, to enable configure with --enable-vmx option Nearly complete VMX implementation, with few exceptions: - Dual-monitor treatment of SMIs and SMM not implemented yet - NMI virtualization, APIC virtualization not implemented yet - VMENTER to not-active state not supported yet - No advanced features like Extended Page Tables or VPID - Support for configurable MSR registers emulation, to enable configure with --enable-configurable-msrs option Look for configuration example in .bochsrc and msrs.def - Support new Intel Atom(R) MOVBE instruction, to enable configure with --enable-movbe option - Support for 1G pages in long mode, to enable configure with --enable-1g-pages option - Support for > 32 bit physical address space in CPU. Up to 36 bit could be seen in legacy mode (PAE) and up to 40 bit in x86-64 mode. Still support the same amount of the physical memory in the memory object, so system with > 4Gb of RAM yet cannot be emulated. To enable configure with --enable-long-phy-address option. - Implemented modern BIOSes mode limiting max reported CPUID function to 3 using .bochsrc CPU option. The mode is required in order to correctly install and boot WinNT. - Added ability to configure CPUID vendor/brand strings through .bochsrc (patch from @SF by Doug Reed). - Many bugfixes for CPU emulation correctness (both x86 and x86-64). - Updated CPU instrumentation callbacks. - Fixed Bochs internal debugger breakpoints/watchpoints handling. - Configure and compile - Added ability to choose Bochs log file name and Bochs debugger log file name from Bochs command line (using new -log and -dbglog options) - Removed Peter Tattam's closed source external debugger interface from the code. - Removed --enable-guest2host-tlb configure option. The option is always enabled for any Bochs configuration. - Removed --enable-icache configure option. The option is always enabled for any Bochs configuration. Trace cache support still remains optional and could be configured off. - Added configure option to compile in GUI frontend for Bochs debugger, to enable configure with --enable-debugger-gui option. The GUI debugger frontend is enabled by default with Bochs debugger. - Removed --enable-port-e9-hack configure option. The feature now could be configured at runtime through .bochsrc. - Added configure option to enable/disable A20 pin support. Disabling the A20 pin support slightly speeds up the emulation. - reduced dependencies between source files for faster code generation - BIOS - Added S3 (suspend to RAM) ACPI state to BIOS (patch by Gleb Natapov) - Implemented MTRR support in the bios (patches by Avi Kivity and Alex Williamsion with additions by Sebastian Herbszt) - Bug fixes - I/O Devices - Added user plugin support - remaining devices converted to plugins: pit, ioapic, iodebug - added 'plugin_ctrl' bochsrc option to control the presence of optional device plugins without a separate option. By default all plugins are enabled. - added register mechanism for removable mouse and keyboard devices - Hard drive / cdrom - PACKET-DMA feature now supported by all ATAPI commands - ATAPI command 0x1A added (based on the Qemu implementation) - sb16 - Added ALSA sound support on Linux (PCM/MIDI output) - FM synthesizer now usable with MIDI output (simple piano only) - Fixed OPL frequency to MIDI note translation - Fixed MIDI output command - keyboard - added keyboard controller commands 0xCA and 0xCB - USB - USB code reorganized to support more HC types and devices - added USB OHCI support written by Ben Lunt - added external USB hub support (initial code ported from Qemu) - added USB cdrom support (SCSI layer ported from Qemu) - added status bar indicators to show data transfer - VGA - VBE video memory increased to 16 MB - implemented changeable VBE LFB base address (PCI only, requires latest BIOS and VGABIOS images) - I/O APIC - implemented I/O APIC device hardware reset - Config interface - new config interface 'win32config' with start and runtime menu is now the default on Windows ('textconfig' is still available) - win32 device config dialogs are now created dynamicly from a parameter list (works like the wx ParamDialog) - changes in textcofig and the wx ParamDialog for compatibility with the new win32 dialog behaviour - Bochs param tree index keys are case independent now - some other additions / bugfixes in the simulator interface code - Misc - updated LGPL'd VGABIOS to version 0.6c - Updated Bochs TESTFORM to version 0.4 - SF patches applied [2784858] IO Handler names are not compared properly [2712569] Legacy bios serial data buffer timeout bug by grybranix [2655090] 64 bit BSWAP with REX.W broken by M. Eby [2645919] CR8 bug when reading by M. Eby [1895665] kvm: bios: add support to memory above the pci hole by Izik Eidus [2403372] rombios: check for valid cdrom before using it by Sebastian [2307269] acpi: handle S3 by Sebastian [2354134] TAP networking on Solaris/Sparc repaired [2144692] The scsi device can not complete its writing data command by naiyue [1827082] [PATCH] Configurable CPU vendor by Marcel Sondaar [2217229] Panic on EBDA overflow in rombios32 by Sebastian [2210194] Log pci class code by Sebastian [1984662] red led for disk write and titlebar mod by ggbsf [2142955] Fix for monitor/mwait by Doug Gibson [2137774] Patch to fix bug: cdrom: read_block: lseek returned error by Gabor Olah [2134642] Fix scan_to_scanascii table for F11 and F12 by Ben Guthro & Steve Ofsthun [2123036] sdl fullscreen fix by ggbsf [2073039] Remove CMOS accsess from AML code by Gleb Natapov [2072168] smbios: add L1-L3 cache handle to processor information by Sebastian [2055416] bochsrc cpu options for cpuid vendor and brand string by Doug Reed [2035278] rombios: Fix return from BEV via retf by Sebastian [2035260] rombios: El Torito load segment fix by Sebastian [2031978] Fix VMware backdoor command 0Ah by Jamie Lokier [2015277] Remove obsolete comment about DATA_SEG_DEFS_HERE hack by Sebastian [2011268] Set new default format and unit only if both are supported by Sebastian [2001919] gdbstub: fix qSupported reply by Sebastian [2001912] gdbstub: enclose packet data by apostrophes by Sebastian [1998071] fix missing SIGHUP and SIGQUIT with term ui on mingw by Sebastian [1998063] fix wrong colors with term ui by Sebastian [1995064] Compile fix needed for --enable-debugger and gcc 4.3 by Hans de Goede [1994564] Fix typo in RDMSR BX_MSR_MTRRFIX16K_A0000 by Sebastian [1994396] Change hard_drive_post #if by Sebastian [1993235] TESTFORM email address update by Sebastian [1992322] PATCH: fix compilation of bochs 2.3.7 on bigendian machines by Hans de Goede [1991280] Shutdown status code 0Ch handler by Sebastian [1990108] Shutdown status code 0Bh handler by Sebastian [1988907] Shutdown status code 0Ah handler by Sebastian [1984467] two typos in a release! (2.3.7) [1981505] Init PIIX4 PCI to ISA bridge and IDE by Sebastian - these S.F. bugs were closed/fixed [2784148] an integer overflow BUG of Bochs-2.3.7 source code [2695273] MSVC cpu.dsp failure in 2.3.7.zip [616114] Snapshot/Copy crash on Win2K [2628318] 'VGABIOS-latest' bug [1945055] can't 'make install' lastest bochs on loepard [2031993] Mac OS X Makefile bug [1843199] install error on mac osx [2710931] Problem compiling both instrumentation and debugger [2617003] ExceptionInfo conflicts with OS X api [2609432] stepping causes segfault (CVS) [2605861] compile error with --enable-smp [1757068] current cvs(Jul19, 07) failed to boot smp [2426271] cannot get correct symbol entry [2471982] VGA character height glitches [1659659] wrong behaviour a20 at boot [1998027] minwg + --with-term + --with-out-win32 = link failure [1871936] bochs-2.3.6 make fails on wx.cc [1684666] info idt for long mode [2105989] could not read() hard drive image file at byte 269824 [1173093] Debugger totally not supports x86-64 [1803018] new win32debug dialog problems [2141679] windows vcc build broken [2162824] latest cvs fails to compile [2164506] latest bochs fails to start [2129223] MOV reg16, SS not working in real mode due to dead code [2106514] RIS / startrom.com install ALMOST works [2123358] SMP (HTT): wbinvd executed by CPU1 crashes CPU0 [2002758] Arch Linux: >>PANIC<< ATAPI command with zero byte count [2026501] El Torito incorrect boot segment:offset [2029758] BEV can return via retf instead of int 18h [2010173] x command breaks after one error about x/s or x/i [1830665] harddrv PANIC: ATAPI command with zero byte count [1985387] fail to make using gcc4 with --enable-debugger [1990187] testform feedback [1992138] Misspell in cpu/ia_opcodes.h - these S.F. feature requests were closed/implemented [2175153] Update MSVC project files [658800] front end program and bios [1883370] Make cd and floppy images more usable [422783] change floppy size without restarting [2552685] param tree names should be case insensitive [1214659] PC Speaker emu turnoff. Plugin Controll. [1977045] support 40 bit physical address [1506385] Intel Core Duo VT features [1429015] Support for user plugins [1488136] debugger access to floppy controller [1363136] Full debugger SMP and 64 bit support [2068304] Support for ACPI [431032] debugger "x" command [423420] profiling ideas (SMF) [445342] Add FM support? [928439] alsa ------------------------------------------------------------------------- Changes in 2.3.7 (June 3, 2008): Brief summary : + More optimizations in CPU code - Bochs 2.3.7 is more than 2x faster than Bochs 2.3.5 build ! - Implemented LBA48 support in BIOS - Added memory access tracing for Bochs internal debugger - Implemented Intel(R) XSAVE/XRSTOR and AES instruction set extensions - Many fixes in CPU emulation and internal debugger - MenuetOS64 floppy images booting perfect again ! - updated LGPL'd VGABIOS to version 0.6b Detailed change log : - CPU - Support of XSAVE/XRSTOR CPU extensions, to enable configure with --enable-xsave option - Support of AES CPU extensions, to enable configure with --enable-aes option - Fixed Bochs failure on RISC host machines with BxRepeatSpeedups optimization enabled - Implemented SYSENTER/SYSEXIT instructions in long mode - More than 100 bugfixes for CPU emulation correctness (both x86 and x86-64) - MenuetOS64 floppy images booting perfect again ! - Updated CPU instrumentation callbacks - Bochs Internal Debugger and Disassembler - Added memory access tracing for Bochs internal debugger, enable by typing 'trace-mem on' in debugger command line - Many bug fixes in Bochs internal debugger and disassembler - System BIOS (Volker) - Implemented LBA48 support - Added generation of SSDT ACPI table that contains definitions for available processors - Added RTC device to ACPI DSDT table - Added implementation of SMBIOS - I/O devices (Volker) - VGA - Implemented screen disable bit in sequencer register #1 - Implemented text mode cursor blinking - Serial - new serial modes 'pipe-server' and 'pipe-client' for win32 - new serial mode 'socket-server' - Configure and compile - Fixed configure bug with enabling of POPCNT instruction, POPCNT instruction should be enabled by default when SSE4.2 is enabled. - Removed --enable-magic-breakpoint configure option. The option is automatically enabled if Bochs internal debugger is compiled in. It is still possible to turn on/off the feature through .bochsrc. - Allow boot from network option in .bochsrc - Added Bochs version info for Win32 - Display libraries - implemented text mode character blinking in some guis - improved 'X' gui runtime dialogs - SF patches applied [1980833] Fix shutdown status code 5h handler by Kevin O'Connor [1928848] "pipe" mode for serial port (win32 only) by Eugene Toder [1956843] Set the compatible pci interrupt router back to PIIX by Sebastian [1956366] Do not announce C2 & C3 cpu power state support by Igor Lvovsky [1921733] support for LBA48 by Robert Millan [1938185] Fix link problem with --enable-debugger by Sebastian [1938182] Makefile.in - use @IODEV_LIB_VAR@ by Sebastian [1928945] fix for legacy rombios - e820 map and ACPI_DATA_SIZE by Sebastian [1925578] rombios32.c - fix ram_size in ram_probe for low memory setup by Sebastian [1908921] rombios32.c - move uuid_probe() call by Sebastian [1928902] improvements to load-symbols by Eugene Toder [1925568] PATCH: msvc compilation by Eugene Toder [1913150] rombios.c - e820 cover full size if memory <= 16 mb by Alexander van Heukelum [1919804] rombios.c - fix and add #ifdef comments by Sebastian [1909782] rombios.c - remove segment values from comment by Sebastian [1908918] SMBIOS - BIOS characteristics fix by Sebastian [1901027] BIOS boot menu support (take 3) [1902579] rombios32.c - define pci ids by Sebastian [1859447] Pass segment:offset to put_str and introduce %S by Sebastian [1889057] rombios.c - boot failure message by Sebastian [1891469] rombios.c - print BEV product string by Sebastian [1889851] Win32 version information FILEVERSION for bochs.exe by Sebastian [1889042] rombios.c - fix comment by Sebastian [1881500] bochsrc, allow boot: network by Sebastian [1880755] Win32 version information for bochs.exe by Sebastian [1880471] SMBIOS fix type 0 by Sebastian [1878558] SMBIOS fixes by Sebastian [1864692] SMBIOS support by Filip Navara [1865105] Move bios_table_area_end to 0xcc00 by Sebastian [1875414] Makefile.in - change make use by Sebastian [1874276] Added instrumentation for sysenter/sysexit by Lluis [1873221] TLB page flush: add logical address to instrumentation by Lluis [1830626] lba32 support by Samuel Thibault [1861839] Move option rom scan after floppy and hard drive post by Sebastian [1838283] Early vga bios init by Sebastian [1838272] rom_scan range parameter by Sebastian [1864680] Save CPUID signature by Filip Navara - these S.F. bugs were closed [1976171] Keyboard missing break code for enter (0x9C) [666433] physical read/write breakpoint sometimes fails [1744820] info gdt and info idt shows the entire tables [1755652] graphics: MenuetOS64 shows black screen [1782207] Windows Installer malfunction, Host=Linux, Guest=Win98SE [1697762] OS/2 Warp Install Failed [1952548] String to char * warnings [1940714] SYSENTER/SYSEXIT doesn't work in long mode [1422342] SYSRET errors [1923803] legacy rombios - e820 map and ACPI_DATA_SIZE [1936132] Link problem with --enable-debugger & --enable-disasm [1934477] Linear address wrap is not working [1424984] virtual machine freezes in Bochs 2.2.6 [1902928] with debugger cpu_loop leaves CPU with unstable state [1898929] Bochs VESA BIOS violates specs (banks == 1) [1569256] bug in datasegment change in long mode [1830662] ACPI: no DMI BIOS year, acpi=force is required [1868806] VGA blink enable & screen disable [1875721] Bit "Accessed" in LDT/GDT descriptors & #PF [1874124] bx_Instruction_c::ilen() const [1873488] bochs-2.3.6 make fails on dbg_main.cc - these S.F. feature requests were implemented [1422769] SYSENTER/SYSEXIT support in x86-64 mode [1847955] Version information for bochs(dbg).exe [939797] SMBIOS support ------------------------------------------------------------------------- Changes in 2.3.6 (December 24, 2007): Brief summary : + More than 25% emulation speedup vs Bochs 2.3.5 release! - Thanks to Darek Mihocka (http://www.emulators.com) for providing patches and ideas that made the speedup possible! + Up to 40% speedup vs Bochs 2.3.5 release with trace cache optimization! - Lots of bugfixes in CPU emulation - Bochs benchmarking support - Added emulation of Intel SSE4.2 instruction set Detailed change log : - CPU - Added emulation of SSE4.2 instruction set, to enable use --enable-sse=4 --enable-sse-extension configure options to enable POPCNT instruction only use configure option --enable-popcnt - Implemented MTRR emulation, to enable use --enable-mtrr configure option. MTRRs is enabled by default when cpu-level >= 6. - Implemented experimental MONITOR/MWAIT support including optimized MWAIT CPU state and hardware monitoring of physical address range, to enable use --enable-monitor-mwait configure option. - Removed hostasm optimizations, after Bochs rebenchmarking it was found that the feature bringing no speedup or even sometimes slows down emulation! - Merged trace cache optimization patch, the trace cache optimization is enabled by default when configure with --enable-all-optimizations option, to disable trace cache optimization configure with --disable-trace-cache - Many minor bugfixes in CPU emulation (both ia32 and x86-64) - Updated CPU instrumentation callbacks - Bochs Internal Debugger and Disassembler - Many fixes in Bochs internal debugger and disassembler, some debugger interfaces significantly changed due transition to the param tree architecture - Added support for restoring of the CPU state from external file directly from Bochs debugger - Configure and compile - Renamed configure option --enable-4meg-pages to --enable-large-pages. The option enables page size extensions (PSE) which refers to 2M pages as well. - Removed --enable-save-restore configure option, save/restore feature changed to be one of the basic Bochs features and compiled by default for all configurations. - Added new Bochs benchmark mode. To run Bochs in benchmark mode execute it with new command line option 'bochs -benchmark time'. The emulation will be automatically stopped after 'time' millions of emulation cycles executed. - Another very useful option for benchmarking of Bochs could be enabled using new 'print_timestamps' directive from .bochsrc: print_timestamps: enable=1 - Added --enable-show-ips option to all configuration scripts used to build release binaries, so all future releases will enjoy IPS display. - Enable alignment check in the CPU and #AC exception by default for --cpu-level >= 4 (like in real hardware) - SF patches applied [1491207] Trace Cache Speedup patch by Stanislav [1857149] Define some IPL values by Sebastian [1850183] Get memory access mode in BX_INSTR_LIN_READ by Lluis Vilanova [1841421] pic: keep slave_pic.INT and master_pic.IRQ_in bit 2 in sync by Russ Cox [1841420] give segment numbers in exception logs by Russ Cox [1801696] Allow Intel builds on Mac OS X [1830658] Fix >32GB disk banner by Samuel Thibault [1813314] Move #define IPL_* and typedef ipl_entry by Sebastian [1809001] Save PnP Option ROM Product Name string in IPL Boot Table by Sebastian [1821242] Fix for #1801285, Niclist.exe broken by Sebastian [1819567] Code warning cleanup [1816162] Update comment on bios_printf() by Sebastian [1811139] Trivial Fix when BX_PCIBIOS and BX_ROMBIOS32 not defined by Myles Watson [1811190] Improve HD recognition and CD boot by Myles Watson [1811860] Implement %X in bios_printf by Sebastian [1809649] printf %lx %ld %lu by Myles Watson [1809651] move BX_SUPPORT_FLOPPY by Myles Watson [1809652] dpte and Int13DPT fixes by Myles Watson [1809669] clip cylinders to 16383 in hard drive by Myles Watson [1799903] Build BIOS on amd64 by Robert Millan [1799877] Fix for parallel build (make -j2) by Robert Millan - these S.F. bugs were closed [1837354] website bug: View the Source link broken [1801268] Reset from real mode no longer working [1843250] Using forward slashes gives invalid filename [1823446] BIOS bug, local APIC #0 not detected [1801285] Niclist.exe broken [1364472] breakpoints sometimes don't work [994451] breakpoint bug [1801295] NSIS installer vs Windows Notepad [1715328] Unreal mode quirk [1503972] debugger doesn't debug first instruction on exception [1069071] div al, byte ptr [ds:0x7c18] fails to execute [1800080] Wrong "BX_MAX_SMP_THREADS_SUPPORTED" assertion - these S.F. feature requests were implemented [1662687] Download for Win32-exe with x64 Mode and debugging [604221] Debugger command: query lin->phys mapping ------------------------------------------------------------------------- Changes in 2.3.5 (September 16, 2007): Brief summary : - Critical problems fixed for x86-64 support in CPU and Bochs internal debugger - ACPI support - The release compiled with x86-64 and ACPI - Hard disk emulation supports ATA-6 (LBA48 addressing, UDMA modes) - Added emulation of Intel SSE4.1 instruction set Detailed change log : - CPU - Fixed critical bug with 0x90 opcode (NOP) handling in x86-64 mode - implied stack references where the stack address is not in canonical form should causes a stack exception (#SS) - Added emulation of SSE4.1 instruction set (Stanislav) - Do not save and restore XMM8-XMM15 registers when not in x86-64 mode - Fixed zero upper 32-bit part of GPR in x86-64 mode - CMOV_GdEd should zero upper 32-bit part of GPR register even if the 'cmov' condition was false ! - Implemented CLFLUSH instruction, report non-zero cache size in CPUID - Fixed PUSHA/POPA instructions behavior in real mode - Fixed detection of inexact result by FPU - Fixed denormals-are-zero (DAZ) handling by SSE convert instructions - Implemented Misaligned Exception Mask support for SSE (MXCSR[17]) - Implemented Alignment Check in the CPU and #AC exception, to enable use --enable-alignment-check configure option - General - 2nd simulation support in wxBochs now almost usable (simulation cleanup code added and memory leaks fixed) - Configure and compile - several fixes for MacOSX, OpenBSD and Solaris 10 - enable save/restore feature by default for all configurations - reorganized SSE configure options to match Intel(R) Programming Reference Manual, new option introduced for SSE extensions enabling. To enable Intel Core Duo 2 new instructions use --enable-sse=3 --enable-sse-extension enabling of SSE4.1 (--enable-sse=4) will enable SSE3 extensions as well - removed old PIT, always use new PIT written by Greg Alexander, removed configure option --enable-new-pit - I/O devices (Volker) - Floppy - partial non-DMA mode support (patch by John Comeau) - Hard drive / cdrom - hard disk emulation now supports ATA-6 (LBA48 addressing, UDMA modes) - VMWare version 4 disk image support added (patch by Sharvil Nanavati) - PCI - initial support for the PIIX4 ACPI controller - Serial - added support for 3-button mouse with Mousesystems protocol - USB - experimental USB device change support added - rewrite of the existing USB devices code - new USB devices 'disk' and 'tablet' (ported from the Qemu project) - Bochs internal debugger - fixed broken debugger "rc file" option (execute debugger command from file) - implementation of a gui frontend ("windebug") for win32 started - gdbstub now accepts connection from any host - several documentation updates - a lot of disasm and internal debugger x86_64 support fixes - Configuration interface - fixes and improvements to the save state dialog handling - Display libraries - text mode color handling improved in some guis - win32 fullscreen mode (patch by John Comeau) - System BIOS (Volker) - 32-bit PM BIOS init code for ACPI, PCI, SMP and SMM (initial patches by Fabrice Bellard) - PCI BIOS function "find class code" implemented - SF patches applied [1791000] 15h 8600h is reading the wrong stack frame by Sebastian [1791016] rombios32.c, ram_probe(), BX_INFO missing value by Sebastian [1786429] typo in bochsrc.5 by Sebastian [1785204] Extend acpi_build_table_header to accept a revision number by Sebastian [1766536] Partial Patch for Bug Report 1549873 by Ben Lunt [1763578] ACPI Table Revision 0 -> 1 [1642490] implement alignment check and #AC exception by Stanislav Shwartsman [1695652] [PATCH] .pcap pktlog and vnet PXE boot by Duane Voth [1741153] Add expansion-ROM boot support to the ROMBIOS [1734159] Implemented INT15h, fn 0xC2 (mouse), subfn 3, set resolution [1712970] bios_printf %s fix [1573297] PUSHA/POPA real mode fix by Stanislav Shwartsman [1641816] partial support for non-DMA access to floppy by John Comeau [1624032] shows where write outside of memory occurred by John Comeau [1607793] allow fullscreen when app requests it by John Comeau [1603013] Bugfix for major NOP problem on x64 by mvysin [1600178] Make tap and tuntap compile on OpenBSD by Jonathan Gray [1149659] improve gdbstub network efficiency by Avi Kivity [1554502] Trivial FPU exception handling fix - these S.F. bugs were closed [1316008] Double faults when it shouldn't - gcc 4.0.2 [1787289] broken ABI for redolog class when enable-compressed-hd [1787500] tftp_send_optack not 64bit clean [1264540] Security issue with Bochs website [1767217] Debugger Faults including ud2 [1729822] Various security issues in io device emulation [1675202] mptable hosed (bad entry count in header) [1197141] 'make install' installs to bad location [1157623] x86Solaris10 cannot recoginize ACPI RSD PTR [1768254] large HDD in Bochs/bximage [1496157] Windows Vista Beta2 dosn't boot [1755915] Illegal Hard Disk Signature Output [1717790] info gdt and info idt scrolls away, too long result [1726640] Debugger displays incorrect segment for mov instruction [1719156] Typo in misc_mem.cpp [1715270] Debugger broken in/beyond 2.3 [1689107] v8086 mode priviledge check failed [1704484] A few checks when CPU_LEVEL < 4 [1678395] Problem with zero sector... [876990] SA-RTL OS fails on PIC configuration [1673582] save/restore didn't restore simulation correctly [1586662] EDD int 13h bug, modify eax [666618] POP_A Panic in DOS EMU [1001485] panic: not enough bytes on stack [1667336] delay times an order of magnitude slow [1665601] crash disassembling bootcode [1657065] CVS sources won't compile [1653805] bochs's gdbstub uses incorrect protocol [1640737] ASM sti command frezzes guest OS [1636439] latest CVS sources don't compile under Cygwin [1634357] disasm incorrect (no sign ext) displacement in 64-bit mode [1376453] pcidev segfaults bochs [1180890] IOAPIC in BOCHS - WinXP 64 in MP version [1597528] 2.3 fails to compile on amd64 [1526255] FLD1 broken when compaling with gcc 4.0.x [1597451] eth_fbsd is broken under FreeBSD [1571949] Bochs will not compile under Solaris [1500216] Bochs fails to boot BeOs CD [1458339] bochs-2.2.6 WinXP Binary ACPI error installing FreeBSD 6.0 [1440011] patches needed for FreeBSD 6.0 to compile Bochs [431674] some devices don't have a prefix [458150] QNX demo disk crashes with new pit [818322] Bochs 2.1 cvs: OS/2 - read verify on non disk [906840] KBD: bogus scan codes generated in set 3 [1005053] No keyboard codes translation [1109374] Problem with Scancodeset 2 [1572345] Bochs won't continue [1568153] Bochs looks for (and loads?) unspecified display libraries [1563462] Errors in /iodev/harddrv.h [1562172] TLB_init() fails to initialize priv_check array if USE_TLB 0 [1385303] debugger crashes after panic [1438227] crc.cpp missing in bx_debug version 2.2.6 [1501825] debugger crashes on to high input [1420959] Memory leak + buffer overflow in Bochs debugger [1553289] Error in Dis-assembler [542464] I cannot use FLAT [1548270] Bochs won't die with its pseudo terminal [1545588] roundAndPackFloatx80 does not detect round up correctly ------------------------------------------------------------------------- Changes in 2.3 (August 27, 2006): Brief summary : - limited save/restore support added (config + log options, hardware state) - configuration parameter handling rewritten to a parameter tree - lots of cpu and internal debugger fixes - hard disk geometry autodetection now supported by most of the image types - hard disk emulation now supports ATA-3 (multiple sector transfers) - VBE memory size increased to 8MB and several VGA/VBE fixes - updated LGPL'd VGABIOS to version 0.6a Detailed change log : - CPU and internal debugger fixes - Fixed bug in FSTENV instruction (Stanislav Shwartsman) - Recognize #XF exception (19) when SSE is enabled - Fixed bug in PSRAW/PSRAD MMX and SSE instructions - Save and restore RIP/RSP only for FAULT-type exceptions, not for traps - Correctly decode, disassemble and execute multi-byte NOP '0F F1' opcode - Raise A20 line after system reset (Stanislav Shwartsman) - Implemented SMI and NMI delivery (APIC) and handling in CPU (Stanislav) - Experimental implementation of System Management Mode (Stanislav) - Added emulation of SSE3E instructions (Stanislav Shwarstman) - Save and restore FPU opcode, FIP and FDP in FXSAVE/FRSTOR instructions - Fixed bug in MOVD_EdVd opcode (always generated #UD exception) - Fixed critical issue, Bochs was not supporting > 16 bit LDT.LIMIT values - Many fixes in Bochs internal debugger and disassembler - CPU x86-64 fixes - Fixed SYSRET instruction implementation - Fixed bug in CALL/JMP far through 64-bit callgate in x86-64 mode - Correctly decode, disassemble and execute 'XCHG R8, rAX' instruction - Correctly decode and execute 'BSWAP R8-R15' instructions - Fixed ENTER and LEAVE instructions in x86-64 mode (Stanislav) - Fixed CR4 exception condition (No Name) - Fixed x86 debugger to support x86-64 mode (Stanislav) - APIC and SMP - Support for Dual Core and Intel(R) HyperThreading Technology. Now you could choose amount of cores per processor and amount of HT threads per core from .bochsrc for SMP simulation (Stanislav Shwartsman) - Allow to control SMP quantum value through .bochsrc CPU option parameter. Previous Bochs versions used hardcoded quantum=5 value. - Fixed interrupt priority bug in service_local_apic() - Fixed again reading of APIC IRR/ISR/TMR registers. Finally it becomes fully correct :-) - Configure and compile - Moved configure time --enable-reset-on-triple-fault option to runtime, the 'cpu' option in .bochsrc is extended and the old configure option is deprecated (Stanislav Shwartsman) - Removed --enable-pni configure option, to compile with PNI use --enable-sse=3 instead (Stanislav Shwartsman) - enable SEP (SYSENTER/SYSEXIT) support by default for Penitum II+ processor emulation (i.e. if cpu-level >= 6 and MMX is enabled) - general - Limited save/restore support added. The state of CPU, memory and all devices can be saved now (state of harddisk images not handled yet). - Fixed several memory leaks - configuration interface - Configuration parameter handling rewritten to a parameter tree. This is required for dynamic menus/dialogs, user-defined options and save/restore. - Support for user-defined bochsrc options added - help support at the parameter prompt in textconfig added - I/O devices (Volker) - Floppy - partial sector transfers fixed - Hard drive / cdrom - several fixes to the IDE register behaviour (e.g. in case of a channel with only one drive connected) - fixed data alignment of 'growing' hard drive images (sharing images between Windows and Linux now possible) - disk geometry autodetection now supported by most of the image types (unsupported: external, dll and compressed modes) - multi sector read/write commands implemented - hard disk now reporting ATA-3 supported - ATAPI 'inquiry' now returns a unique device name - Keyboard - reset sent to keyboard has no effect on the 8042 (scancode translation) - PCI - forward PIRQ register changes to the I/O APIC (if present) - attempt to fix and update the emulation part of 'pcidev' (untested) - VGA - VBE memory size increased to 8MB and several VBE fixes - VGA memory read access fixed (bit plane access and read mode) - VGA memory is now a part of the common video memory - System BIOS (Volker) - enable interrupts before executing INT 19h - fixed ATA device detection in case of one drive only connected to controller - improved INT 15h function AX=E820h - real mode PCI BIOS now returns IRQ routing information (function 0Eh) - keyboard LED flags handling fixed and improved - fixed handling of extended keys in INT 09h - Updated LGPL'd VGABIOS to version 0.6a - SF patches applied [1340111] fixes and updates to usb support by Ben Lunt [1539420] minor addition to pci_usb code by Ben Lunt [1455958] call/jmp through call gate in 64-bit mode [1433107] PATCH: fix compile with wxwindows 2.6 (unicode / utf8) by jwrdegoede [1386671] Combined dual core and hyper-threading patch - these S.F. bugs were closed [833927] TTD: System Error TNT.40025: Unexpected processor exception [789230] Sending code that shows lock up when setting idt [909670] Problems with Symantec Ghost [1540241] include missing in osdep.cc [1539373] Incorrect disasm for "mov moffset,bla" in 64bit [1538419] incorrect disassembly of [rip+disp] with rex.b [1535432] shift+cursor key maps to a digit [1504891] Knoopix 5.0.1 error [1424355] bochs-2.2.6 ata failure in windoze 98se [1533979] wrong disassembly of IN instruction [620059] paste won't stop [1164904] status bar doesn't show num/caps/scroll lock status [1061720] ATA Support level for HD [1522196] Broken CHANGES link in main page [1438415] crash if screen scrolled downwards [778441] Shouldn't interrupts be enable after BIOS? [1514949] I got a problem with the 8253 timer [1513544] disasm of 0xec (in AL,DX) returns ilen of 2 instead of 1 [1508947] APIC interrupt priority checking and interrupt delivery [766286] Debugger halts after any GPF exception [639143] va_list is not a pointer on linuxppc [1501815] debugger examines memory over page-boundary wrong [1503978] movsb/w/d doesn't work when direction is stored [1499405] WinPCap has changed URL hosting [1498519] APIC IRR bits not set while interrupts disabled [1498193] Bochs segfaults on LTR instruction [787140] Guest2HostTLB optimization bug [1492070] instrument stop [1487772] No SEP on P4 [1488335] Growing hard disk images severe interoperability errors! [1076312] Shadow RAM and TLB [1282249] The real i440FX chipset Award bios hangs [1479763] mistake "mov ax,[es:di]" for "mov ax,[ds:di]" [1453575] Misconfigured floppy DMA transfers do not terminate. [1460068] Incorrect handling for the Options Menu Item [910203] bochs-2.1.1 wx.lo failed [1438654] PANIC when trying to run install-amd64-minimal-2005.0.iso [1458320] compile hdimage.h fails [1455880] bochs-2.2.6,2: make error on FreeBSD [696890] Network wouldn't run under W2k hosting MSDOS [673391] SMP timer problems [1291059] wxWindows GUI on non-windows/configure issue [1356450] bochs 2.2.1 errors-omittions [1178017] Win98 guest cannot receive network packets from host [1076315] a20_mask after restarting [1436323] real hw does not panic when bad Ib in CMPSS_VssWssIb [1435269] cdrom_amigaos is not compilable [1433314] disasm issues [1170614] relative jumps/calls wrong in debugger [758121] user might get confused when interrupt handler invoked [1170622] You cannot toggle OFF "show" flags [1406387] JMP instruction should display absolute address [1428813] PANIC: ROM address space out of range [1426288] DR-DOSs EMM386 problem [1412036] Bochs cannot recognize PCI NIC correctly [435115] dbg: modebp broken and no docs [1419366] disasm cs:eip does not work anymore [1419393] SSE's #XF exception -> "exception(19): bad vector" [1419429] disassembly of "260f6f00" show DS: instead of ES: prefix [1417583] Interrupt behaviour changed from 2.2.1 to 2.2.5 [1418281] 'push' (6A) incorrectly disassembled [1417791] FLDENV generating exception when real hw does not. [1264583] OS/2 1.1 doesn't run ------------------------------------------------------------------------- Changes in 2.2.6 (January 29, 2006): - First major SMP release ! - several APIC and I/O APIC fixes make SMP Bochs booting Windows NT4.0 or Knoppix 4.0.2 without noapic kernel option in SMP configuration. - critical APIC timer bug fixed - obsolete SMP BIOS images removed (MP tables created dynamicaly) - determine number of processors in SMP configuration through .bochsrc new .bochsrc option 'CPU' allows to choose number of processors to emulate - new configure option --enable-smp to configure Bochs for SMP support, the old --enable-processors=N option is deprecated - CPU and internal debugger fixes - enabled #PCE bit in CR4 register, previosly setting of this bit generated #GP(0) fault - enabled LAHF/SAHF instructions in x86-64 mode - fixed bug in PMULUDQ SSE2 instruction - fixes in Bochs debugger - Configure and compile - enable VME (virtual 8086 mode extensions) by default if cpu-level >= 5 - enable Bochs disassembler by default for all configurations - win32 installer script improvements - ips parameter moved to new 'CPU' option - show IPS value in status bar if BX_SHOW_IPS is enabled - Other - several fixes in the hard drive, keyboard, timer, usb and vga code - new user button shortcut "bksl" (backslash) - updated Bochs instrumentation examples - user and development documentation improved ------------------------------------------------------------------------- Changes in 2.2.5 (December 30, 2005): Brief summary : - added virtual 8086 mode extensions (VME) implementation - several fixes/improvements in x86-64 emulation, debugger and disassembler - new serial mode 'socket' connects a network socket - IDE busmaster DMA feature for harddisks and cdroms completed and enabled - many improvements in Bochs emulated I/O devices (e.g. floppy, cdrom) - Updated LGPL'd VGABIOS to version 0.5d Detailed change log : - CPU - fixed XMM registers restore in FXRSTOR instruction (Andrej Palkovsky) - print registers dump to the log if tripple fault occured - fixed PANIC in LTR instruction (Stanislav) - added virtual 8086 mode extensions (VME) implementation, to enable configure with --enable-vme (Stanislav) - flush caches and TLBs when executing WBINVD and INVD instructions - do not modify segment limit and AR bytes when modifying segment register in real mode (support for unreal mode) - fixed init/reset values for LDTR and TR registers - reimplemented hardware task switching mechanism (Stanislav) - generate #GP(0) when fetching instruction cross segment boundary - CPU (x86-64) (Stanislav Shwartsman) - implemented call_far/ret_far/jmp_far instructions in long mode - fixed IRET operation in long mode - fixed bug prevented setting of NXE/FFXSR bits in MSR.EFER register - implemented RDTSCP instruction - do not check CS.limit when prefetching instructions in long mode - fixed masked write instructions (MASKMOVQ/MASKMOVDQU) in long mode - fetchdecode fixes for x86-64 - APIC - Fixed bug in changing local APIC id (Stanislav) - Fixed reading of IRR/ISR/TMR registers (patch by wmrieker) - Implemented spurious interrupt register (Stanislav, patch by wmrieker) - Fixed interrupt delivery bug (anonymous #SF patch) - Correctly implemented ESR APIC register (Stanislav) - Bochs debugger - Fixed bug in bochs debugger caused breakpoints doesn't fire sometimes (Alexander Krisak) - watchpoints in device memory fixed (Nickolai Zeldovich) - new debug interface to access Bochs CPU general purpose registers with support for x86-64 - Disassembler (Stanislav Shwartsman) - Fixed disassembly for FCOMI/FUCOMI instructions - Full x86-64 support in disassembler. The disassembler module extended to support x86-64 extensions. Still limited by Bochs debugger which is not supporting x86-64 at all ;( - I/O devices (Volker) - general - memory management prepared for large BIOS images (up to 512k) - slowdown timer sleep rate fixed (now using 1 msec on all platforms) - some device specific parameter handlers moved into the device code - serial - new serial mode 'socket' connects a network socket (#SF patch by Andrew Backer) - hard drive / cdrom - assign a unique serial number to each drive (fixes harddrive detection problems with Linux kernels 2.6.x: "ignoring undecoded slave") - geometry autodetection for 'flat' hard disk images added. Works with images created with bximage (heads = 16, sectors per track = 63) - ATAPI command 'read cd' implemented, some other commands improved - cdrom read block function now tries up to 3 times before giving up - emulation of raw cdrom reads added, some other lowlevel cdrom fixes - IDE busmaster DMA feature for harddisks and cdroms completed and enabled - disk image size limit changed from 32 to 127 GB - split ATA/ATAPI emulation code and image handling code - floppy - fixes for OS/2 (patch by Robin Kay) - disk change line behaviour fixed (initial patch by Ben Lunt) - end-of-track (EOT) condition handling implemented - more accurate timing for read/write data and format track commands using a motor speed of 300 RPM - timing of recalibrate and seek commands now depends on the step rate, date rate and the steps to do - floppy controller type changed to 82077AA - cmos - RTC 12-hour and binary mode implemented - number of CMOS registers changed from 64 to 128 - bochsrc option 'cmosimage' improved - save cmos image on exit if enabled - speaker - simple speaker support for OS X added (patch by brianonn@telus.net) - pci - BeOS boot failure fix in the PCI IDE code - don't register i/o and memory regions during PCI probe - vga - memory allocation for vga extensions fixed - usb - some bugfixes by Ben Lunt (mouse and keypad are usable now) - networking modules - VDE networking module now enabled on Linux - display libraries - general - new syntax for the userbutton shortcut string and more keys supported - win32 - fixed keycode generation for right alt/ctrl/shift keys - runtime dialog is now a property sheet - x11 - simple dialog boxes for the "ask" and "user shortcut" feature implemented - Slovenian keymap added (contributed by Mitja Ursic) - configuration interface - ask dialog is now enabled by default for win32, wx and x display libraries - bochsrc option floppy_command_delay is obsolete now (floppy timing now based on hardware specs) - floppy image size detection now available in the whole config interface - some device specific parameter handlers moved into the device code - calculate BIOS ROM start address from image if not specified - System BIOS (Volker) - PCI i/o and memory base address initialization added - several keyboard interrupt handler fixes (e.g. patch by japheth) - several floppy fixes (e.g. OS/2 works with patch by Robin Kay) - some more APM functions added - Updated LGPL'd VGABIOS to version 0.5d - generate SMP specific tables dynamicly by the Bochs memory init code - SF patches applied [1389776] Disk sizes over 64 Gbytes by Andrzej Zaborowski [1359162] disasm support for x86-64 by Stanislav Shwartsman [857235] task priority and other APIC bugs, etc by wmrieker [1359011] build breaks for 386 + debugger + disasm by shirokuma [1352761] Infinite loop when trying to debug a triple exception [1311170] small APIC bug fix (interrupt sent to the wrong CPU) [1309763] Watchpoints don't work in device memory by Nickolai Zeldovich [1294930] change line status on floppy by Ben Lunt [1282033] SSE FXRESTORE not working correctly by Ondrej Palkovsky [816979] wget generalizations by Lyndon Nerenberg [1214886] No more pageWriteStamp / unified icache by H. Johansson [1107945] com->socket redirection support by Andrew Backer - these S.F. bugs were closed [669180] win95 install : unknown SET FEATURES subcommand 0x03 [1346692] bochs 2.2.1 VGA BIOS error [1354963] floppy in KolibriOS [1378204] error: bochs-2.2.1, --enable-sb16, --disable-gameport [1368412] VDE problems in BOCHS [533446] CPU and APIC devices appear twice [1000796] bximage fails to create image of specified size [1170793] Quarterdeck QEMM doesn't work [923704] Multiple opcode prefixes don't reflect Trap 13 [1166392] DocBook/documentation issues [1368239] broken grater than 4GB size of sparse type hd image [1365830] i386 compile breaks on paging [427550] Incomplete IRETD implementation [1215081] MSVC workspace STILL not fixed [736279] Jump to Task [1356488] FD change fail & occur error [957615] [CPU ] prefetch: RIP > CS.limit [1353866] not booting linux-2.6.14 [1351667] load32bitOSImage does not work with --enable-x86-debugger [1217476] Incorrect (?) handling of segment registers in real mode [1184711] OS2 DOS crash [2.2.pre2] [624330] support for disks > 32GiB [1348368] bochs 2.2.1 bximage error [1342081] Configuration Menu option failed [1138616] OS/2 Warp 4 hangs when booting [1049840] mouse and video conflict [1164570] Unable to perform Fedora Core 4 test 1 installation [1183201] Windows 2000 (MSDN build 2150?) does not completely install [1194284] Can't boot from CD-ROM (Windows NT) [962969] Windows NT crashes while trying to intall them. [1054594] WinXP install halts (redo) [1153107] Windows XP fails with BSOD on 'vga' [938518] Win XP installation fails [645420] getHostMemAddr vetoed direct read [1179985] MS XENIX: >>PANIC<< VGABIOS panic at vgabios.c, line 0 [1329600] WBINVD and INVD should flush caches and TLB [638924] eliminate BX_USE_CONFIG_INTERFACE [1048711] Funny behaviour with CTRL [1288450] keyboard BIOS error [1310706] Keyboard - about key SHIFT [1295981] Ubuntu 5.04 Live-CD won't boot in Bochs [879047] APIC timer behavior different before reset and after [1188506] I still can't install the german Windows XP! [1301847] Windows XP dosn't boot - FXRSTOR problem ? [661259] does not boot QNX under WinX [924412] Keyboard lock states all whacked [681127] MIPSpro compiler (IRIX) is allergic to ^M [1285923] BIOS keyboard handler [516639] ATA controller revisited... [657918] does not boot BeOS under WinX [649245] BeOS CD locks halfway on boot [1094385] Attachment for bug 1090339 (beos failure) [1183196] BeOS 4.5 developer CD does not install [1090339] BeOS fails to boot [639484] panics when int 13 is called [711701] divide by zero [704295] ATAPI/BIOS call missing [682856] hard drive problems [627691] Cursor keys problem [588011] keyboard not working [542260] os/2 warp crashes with floppy handling [1273878] SB16 doesn't work in pure DOS [542254] OS/2 FDC driver dies [1099610] Windows 98 SE Does not install [875479] cr3 problem on task switch [731423] NE2000 causing PANIC on Win2K detection [1156155] bochs fails to boot plan9 iso [1251979] --enable-cpu-level=3 should assume --without-fpu [1257538] Interupt 15h 83h - set wait event interval [658396] Panic for DR DOS emm386 [679339] /? doesn't divulge Bochs command-line syntax [1167016] call/jump/return_protected doesn't support x86-64 [1252432] Mac OS X compile bug [881442] Bochs 2.1 PANIC when loading DOS Turbo Pascal protected mode [1249324] Boch2.2.1 Buffer Overfollow in void bx_local_apic_c::init () [1197144] 'make install' has dependency on wget [1079595] LTR:386TSS: loading tr.limit < 103 [1244070] Compilation Error in gui/rfb.cc [761707] CPU error when trying to start Privateer [517281] Crash running Privateer in DOS... ------------------------------------------------------------------------- Changes in 2.2.1 (July 8, 2005): - Fixed several compilation warnings and errors for different platforms (Volker) - Fixed FPU tag word restore in FXRSTOR instruction (Stanislav) - Added missing scancodes for F11 and F12 to BIOS translation table (Volker) - Bochs disassembler bugfixes (h.johansson) - About 5% emulation speed improvement (h.johansson) - Handle writing of zero to APIC timer initial count register (Stanislav) - Enable Idle-Hack for 'TERM' GUI (h.johansson) - Reduced overhead of BX_SHOW_IPS option to minimum. Now every simulation could run with --enable-show-ips without significant performance penalty. (Stanislav) - Fixed pcipnic register access (Volker) - Limited write support for TFTP server in 'vnet' networking module added (Volker) - Changed some timing defaults to more useful values (Volker) - WinXP/2003 style common controls now supported (Vitaly Vorobyov) - Updated LGPL'd VGABIOS to version 0.5c (Volker) - Added new BX_INSTR_HLT callback to instrumentation (Stanislav) ------------------------------------------------------------------------- Changes in 2.2 (May 28, 2005): Brief summary : - New floating point emulator based on SoftFloat floating point emulation library. - improved x86-64 emulation - Cirrus SVGA card emulation added - status bar with indicators for keyboard, floppy, cdrom and disk (gui dependant) - many improvements in Bochs emulated I/O devices (e.g. PCI subsystem) Detailed change log : - CPU - fixes for booting OS/2 by Dmitri Froloff - fixed v8086 priveleged instruction processing bug (was also reported by LightCone Aug 7 2003) - exception process bug (was reported by Diego Henriquez Sat Nov 15 01:16:51 CET 2003) - segment validation with IRET instruction - CS segment not present exception processing with IRET - several fixes by Kevin Lawton - add MSVC host asm instructions (patch by suzu) - fixed bug in HADDPD/HSUBP

wrar571.exe

wrar571.exe

WinRAR - What's new in the latest version Version 5.71 1. "Convert archives" command: a) improved performance when processing a lot of small archives in Windows 10; b) fixed memory leaks which could lead to excessive memory use when converting to ZIP format. 2. Corrupt ZIP archive processing: a) "Repair" command replaces packed and unpacked file sizes stored in local file header with sizes from central directory if local header sizes look invalid; b) file extraction is stopped at unpacked size stored in ZIP headers even if available packed data allows further extraction. It is done to prevent unexpected hard drive space usage. 3. Ctrl+C allows to abort RAR "l" command quickly. In previous versions it could take several seconds until list command stopped. 4. Bugs fixed: a) WinRAR could crash when attempting to display some types of archive comments in GUI shell, resulting in a denial of service; b) if "Save archive name" and "Add to context menu" options were set in compression profile parameters and profile was invoked from Explorer context menu, WinRAR proposed an automatically generated archive name instead of name saved in profile. c) WinRAR displayed an unneeded pair of round brackets in "Archive" column of "Diagnostic messages" window for system error messages; d) "Extract to folder\" Windows Explorer context menu command could fail to unpack ZIP archives if their names included a numeric part followed by .zip extension, arbitrary data was present before the first file record and "Remove redundant folders from extraction path" WinRAR option was switched on; e) in "RAR x -x<mask> arcname" command, parent folders of files matching the specified mask also were excluded from extracting; f) "Find" command returned the current folder own name additionally to its contents for "Current folder" search area if folder name matched "File names to find" mask; g) if "Find in files" and "Find in archives" are both enabled, "Find" command did not match an archive name itself against "File names to find" mask after searching inside of archive. So it did not display archive names for masks like *.rar and applied this mask only to files inside of archives; h) when running an executable directly from archive, WinRAR 5.70 did not set a temporary folder with unpacked files as current. So executables attempting to access other archived files in current folder could fail to work; i) WinRAR could be inaccessible for few seconds after closing an archived file opened in internal viewer in Windows 10; j) dragging a file to subfolder of ZIP archive with "Store full paths" option enabled produced invalid pathnames consisting of repeated subfolder name. Same invalid pathnames were produced if adding files to ZIP archive with -ap<folder> -ep2 switches.

DevExpress VCL v2012 vol 1.6源码-例子-帮助-part2

DevExpress VCL v2012 vol 1.6源码-例子-帮助-part2

=============================== ==注意:一共2个压缩包,这是第2个== =============================== DevExpress VCL v2012 vol 1.6 包含所有源码、例子、帮助 如果你安装过其它版本的DevExpressVCL,安装前请完全卸载老版本的Dev控件,并执行“清理Dev残余文件”,清理System32下的DevExpress的BPL文件。 What's New in DevExpress VCL 12.1.6 Release Notes The following sections list

OutlookAttachView v2.73

OutlookAttachView v2.73

OutlookAttachView v2.73 Copyright (c) 2009 - 2014 Nir Sofer Web site: http://www.nirsoft.net Related Utilities ================= * NK2Edit - Edit, merge and fix the AutoComplete files (.NK2) of Microsoft Outlook. Description =========== OutlookAttachView scans all messages stored in your Outlook, and displays the list of all attached files that it finds. You can easily select one or more attachments and save all of them into the desired folder, as well as you can delete unwanted large attachments that take too much disk space in your mailbox. You can also save the list of attachments into xml/html/text/csv file. System Requirements =================== * Windows 2000/XP/Vista/7/8/2003/2008. * Microsoft Outlook 2003, Microsoft Outlook 2007, Microsoft Outlook 2010, or Microsoft Outlook 2013. For the 64-bit version of Outlook 2010/2013, you should use the x64 version of OutlookAttachView. Be aware that OutlookAttachView doesn't work with Outlook Express. Versions History ================ * Version 2.73 o OutlookAttachView now also scans the root folder of the .pst file. * Version 2.72 o Added %from_email% and %to_email% variables to the attachment filename format. * Version 2.71 o Added %localmsgtime% and %localmsgdate% variables to the attachment filename format. o Fixed a crash problem occurred on some systems after version 2.70 update. * Version 2.70 o Fixed to display date/time values according to daylight saving time settings. * Version 2.69 o Fixed bug: OutlookAttachView crashed on some systems. * Version 2.68 o Added secondary sorting support: You can now get a secondary sorting, by holding down the shift key while clicking the column header. Be aware that you only have to hold down the shift key when clicking the second/third/fourth column. To sort the first column you should not hold down the Shift key. * Version 2.67 o Fixed bug: when turning on the 'Image Preview' option, OutlookAttachView displayed empty image or incorrect image. * Version 2.66 o Added more accelerator keys (in the menus). * Version 2.65 o Added 'Image Preview' option (Under the View menu). If you turn on this option, a preview of selected gif/png/jpg file will be displayed in the lower pane. Be aware that this feature is quite slow... * Version 2.63 o The number of attachments is now displayed in the status bar while scanning the mailbox of Outlook. * Version 2.62 o Added 'Recent Config Files' menu, which allows you to easily open the last 10 configuration files that you used. * Version 2.61 o Added GB and Automatic to the 'File Size Unit' option. * Version 2.60 o Added option to save and load the entire configuration of OutlookAttachView ('Save Configuration' and 'Load Configuration' under the File menu). * Version 2.56 o OutlookAttachView now remembers the last size and position of the 'Copy Selected Files To...' window. * Version 2.55 o You can now specify wildcards (For example: nir*.doc, abc???.txt) in the include/exclude filename option. * Version 2.51 o Added option to choose the file size display unit: Bytes, KB, or MB. * Version 2.50 o OutlookAttachView now remembers that last 20 strings you typed in the Extensions List, Excluded Extensions List, Subject contains string..., From string, and To string, and you can easily select a string again from a Combo-Box. * Version 2.47 o Added option to choose another font (font name and size) to display the attachments list. (Options -> Select Another Font) * Version 2.46 o Fixed the flickering occurred while scrolling the attachments list. * Version 2.45 o You can now resize the scan options dialog-box. Also, the last size and position of this dialog-box is saved to the config file. * Version 2.43 o Added %attach_id% variable to the attachment filename format. * Version 2.42 o Added option to change the maximum number of characters in every variable of formatted filename. (The default is 64 characters) * Version 2.41 o Added option to filter by the message direction (incoming or outgoing) in the Scan Options window. * Version 2.40 o Added %message_direction% and %message_entryid% variables to the attachment filename format. * Version 2.38 o The 'Show Inline Attachments' option is now turned on by default (In previous versions it was turned off). The reason for this changed: I found out that many users think that there is a bug in OutlookAttachView because they can't find some of the attachments, without understanding that they have to turn on the 'Show Inline Attachments' option. * Version 2.37 o Fixed issue: The properties and the options windows opened in the wrong monitor, on multi-monitors system. * Version 2.36 o Added 'Auto Size Columns+Headers' option, which allows you to automatically resize the columns according to the row values and column headers. * Version 2.35 o Added 'Message EntryID' column, which displays the ID string of the Outlook message. * Version 2.32 o Added %domain% variable to the attachment filename format. * Version 2.31 o Added /SaveDirect command line option, for using with the other save command-line options (/scomma, /stab, /sxml, and so on...) When you use the SaveDirect mode, the attachments list is saved directly to the disk, without loading them into the memory first. This means that you can save a list with large amount of attachment lines into your disk without any memory problem, as long as you have enough disk space to store the saved file. The drawback of this mode: You cannot sort the attachments according to the column you choose with /sort command-line option. * Version 2.30 o Added 'Domain' column, which displays the domain of the from/to email address. * Version 2.25 o Added 'Message Direction' column (Incoming or Outgoing). * Version 2.20 o Added 'From Email' and 'To Email' columns, which displays the From/To email addresses. (The existing To/From columns shows the 'Display Name') * Version 2.15 o Added 'Put Icon On Tray' option. * Version 2.11 o When trying to connect to Outlook 2010 with the wrong build of OutlookAttachView (OutlookAttachView 32-bit with Outlook x64 or OutlookAttachView x64 with Outlook 32-bit), OutlookAttachView now displays informative error message about the problem. * Version 2.10 o Changed the user interface of the Main Scan Options window, to make it useable for lower screen resolutions and to give more space to the folders/subjects/from/to include/exclude lists. * Version 2.05 o Added 'Skip Exchange public folders' option. * Version 2.00 o Added command-line options to change any configuration value. * Version 1.95 o Added /extractall command-line option, which allows you to extract all Outlook attachments from command-line, according to your saved settings. * Version 1.90 o Added option to scan only emails in the last xx days (alternative to the date/time range). * Version 1.85 o Added option to scan only emails with the specified 'From' and 'To' strings. * Version 1.82 o When adding a folder to scan (with the Add button), the folder path in now delimited with quotes, to ensure that it'll be scanned properly if the folder name contains a comma character. * Version 1.81 o Fixed a crash problem when trying to save outlook attachment. * Version 1.80 o Added 'Add' buttons, which allows you to easily add folders to scan or skip by choosing them from the list of Outlook folders. * Version 1.75 o Added the ability to choose the desired Outlook profile inside the 'Mailbox Scan Options' window. * Version 1.72 o You can now specify a folder with all its subfolders (to include or to skip) by adding * character to the folder string, for example: Personal Folders\Inbox* * Version 1.71 o Fixed OutlookAttachView to be able to scan the public folders of Exchange server. * Version 1.70 o Added option to specify a custom date/time format for the filename in the 'Copy Selected Files To...' option, for example: %msgdate:yyyyMMdd% , %msgtime:HHmmss% * Version 1.67 o OutlookAttachView now displays (in the status bar) the current copied filename while copying the attachments. It also allows you to stop the copying process by clicking the stop menu. * Version 1.66 o In the 'Copy Selected Files To...' window, you can now specify a subfolder in the attach filename format. For example, if the filename format is %folder_name%\%subject%_%attach_name%.%extension% - All attachments from the inbox will be saved under the Inbox subfolder, All attachments from Sent Items will be saved under the Sent Items subfolder, and so on... o You can also choose the 'Create subfolders automatically' option if you want that OutlookAttachView will automatically create the subfolders for you. * Version 1.65 o Added time fields for the scanning date range. o The date range is now saved in the .cfg file. * Version 1.63 o Added 2 actions to 'Double-Click Action': 'Open Selected Attachment With' and 'Copy Selected Attachment To' * Version 1.62 o Fixed bug: OutlookAttachView crashed when trying to extract a special type of attachment. * Version 1.61 o Added 'Mark Inline Attachments' option. When it's turned on, inline attachments are marked with blue background color. * Version 1.60 o Added /start command-line option, which instructs OutlookAttachView to start the mailbox scan immediately with the loaded configuraion, without displaying the Scan Options dialog-box. o Decreased the memory consumption when the list of found attachments is very large. * Version 1.57 o Added new option to specify the list of folders that you wish to skip (comma-delimited list). * Version 1.56 o Added 'Mark Odd/Even Rows' option, under the View menu. When it's turned on, the odd and even rows are displayed in different color, to make it easier to read a single line. * Version 1.55 o Added new option to specify the list of folders that you wish to scan (comma-delimited list), instead of scanning the entire mailbox. * Version 1.51 o Added 'Open Selected Attachment With...' option, which allows you to quickly view the content of the attachment with another application, instead of the default one. * Version 1.50 o Added 'Open Selected Attachment' option (F7), which allows you to quickly view the content of the attachment, without the need to extract the file and then open it from Explorer. Be aware that when you use this option, OutlookAttachView extracts the attachment into a temporary folder, and then opens it with the default application, according to the file extension. When you close OutlookAttachView, all temporary attachment files are automatically deleted. o Added to option to choose what to do when you double-click on a single attachment: Open Properties Window, Open Outlook Message, or Open Attachment File. * Version 1.47 o The status bar now displays the total size of selected attachments in KB/MB. * Version 1.46 o You can now send the attachments list to stdout by specifying an empty filename ("") in the command-line. (For example: OutlookAttachView.exe /stab "" > c:\temp\att.txt) * Version 1.45 o Add new filter: Scan only emails that their subject contains the specified string. * Version 1.41 o Added option to exclude one or more file extensions from the attachments list (in comma-delimited list). * Version 1.40 o Added Extension column, so now you can easily sort the list by the file extension of the attachments. o Added option to filter the attachments list by file extension - you can now specify the list of file extensions (in comma-delimited list) that you want to find. All attachments with file extensions that are not in the list won't be displayed. * Version 1.37 o Added /cfg command-line option for loading the configuration from another .cfg file. * Version 1.36 o Added %message_size% and %folder_path% (full folder path) variables to the attachment filename format. * Version 1.35 o Added an option to control the filename format for extracting the attachments. (In the 'Copy Selected Files To...' window) You can include the following fields in the created filename: Subject, From, To, Attachment Name, Folder Name, Message Date, and Message Time. o Added 'Set the modified time of the file to the time of the message' option. When it's turned on, the extracted attachment file will get the same modified time of the message that contains the attachment. * Version 1.30 o Added 'Email Software' column, which displays the email software that was used to send the message. The value is taken from x-mailer header line. This column is only relevant for received messages (Inbox). o Added 'Computer Address' column, which displays the computer name or IP addresses that sent the message. This column is only relevant for received messages (Inbox). * Version 1.25 o Added a new option to 'Mailbox Scan Options', which allows you to scan another profile of Outlook, instead of the default one. o Added 'Add Header Line To CSV/Tab-Delimited File' option. When this option is turned on, the column names are added as the first line when you export to csv or tab-delimited file. * Version 1.21 o Added support for embedded message attachments (attachments of another message). These attachments are saved as .msg files. * Version 1.20 o Added option to filter by attachment size. o Fixed issue: removed the wrong encoding from the xml string, which caused problems to some xml viewers. * Version 1.15 o Added 'MailBox Scan Options' window, which allows you to choose the dates range to scan. o Fixed bug: The 'Created On' column displayed wrong dates in some Outlook configurations. * Version 1.13 o Added 'Copy Selected Attachments To...' into the right-click context menu. Also, changed the 'Save Selected Items' to 'Export Attachments Information', to avoid the confusion between saving the attachment files and exporting the attachments details. o Added separated x64 version - for using only with x64 version of Outlook 2010. * Version 1.12 o Fixed a crash problem when using this utility with IMAP accounts. * Version 1.11 o Added sorting command-line options. * Version 1.10 o Added 'Open Message In Outlook' option. * Version 1.06 o Added 'Clean Selected Attachments' option - clean the content of attachment, but without removing the attachment entry. * Version 1.05 o Fixed bug: OutlookAttachView failed to scan sub-folders under main Outlook folders. o Added 'Folder Path' column. * Version 1.00 - First release. Using OutlookAttachView ======================= OutlookAttachView doesn't require any installation process or additional dll files. In order to start using it, simply run the executable file - OutlookAttachView.exe If you have only one profile in your Outlook, and this profile doesn't require any password, you can run OutlookAttachView even without starting Outlook, and it'll automatically scan the mailbox of your current Outlook profile. Otherwise, it's recommended to open Outlook in the right profile before starting OutlookAttachView. After running OutlookAttachView, the 'MailBox Scan Options' window will be displayed. This window allows to choose to scan your mailbox only in specific dates range. After choosing 'Ok' in the options window, OutlookAttachView starts to scan your Outlook messages and display the found attachments in the main window of OutlookAttachView. If you want to stop the scan process, simply choose the 'Stop' menu. After the scanning process is finished, you can select one or more of your attached files, and copy them into the desired folder, by using the 'Copy Selected Files To' option. If have large attachments that you want to delete, you can use the 'Delete Selected Attachments' option. Be aware that when you use the delete option, only the attachment file is deleted. The message itself remains on your mailbox. You can also use the 'Clean Selected Attachments' option to clean most of the attachment content, but without removing the attachment entry. If you use this option, you'll still see the attachment listed in your email message with small file size, but saving this attachment to a file will create a corrupted file. Inline Attachments ================== Attachments embedded as a part of the message body are detected as 'Inline Attachments'. By default, OutlookAttachView doesn't displays these inline attachments. If you can't find the attachments you're looking for, you should try to turn on the 'Show Inline Attachments' option, located under the Options menu. Control The Filename Format of Extracted Attachment =================================================== When you extract one or more attachments from your Outlook mailbox, you can control the way that the attach filename is generated. By default, OutlookAttachView use the following format: %attach_name%.%extension%, which means that the generated filename will only contain the original attachment name and the file extension. However, you can also use the following special variables to format the filename according to your needs: * %attach_name% - The original name of the attachment. * %extension% - The original file extension of the attachment. * %subject% - The subject of the email contains this attachment. * %folder_name% - The folder name of this email (Inbox, Sent Items, and so on) * %from% - The sender of the email. * %to% - The 'To' field of the email. * %message_date% - Message creation date in yyyymmdd format. * %message_time% - Message creation time in HHmmss format. * %message_size% - Attachment size, in bytes. * %folder_path% - Full folder path of this email. (For example: Personal Folder-Inbox) * %msgdate:[format]% - Message creation date (GMT), in any format you need, for example: %msgdate:yyyyMMdd% , %msgdate:ddMMyy% * %msgtime:[format]% - Message creation time (GMT), in any format you need, for example: %msgtime:HHmmss% * %localmsgdate:[format]% - Message creation date (local time), in any format you need, for example: %localmsgdate:yyyyMMdd% , %localmsgdate:ddMMyy% * %localmsgtime:[format]% - Message creation time (local time), in any format you need, for example: %localmsgtime:HHmmss% For example: If you want to generate the attachment filename with the subject, folder name, and attach name: %folder_name%_%subject%_%attach_name%.%extension% Be aware that some of the values are automatically truncated after 64 characters, in order to avoid from over-sized filenames. Scanning Outlook Attachments of External PST Files ================================================== If you want to search an attachment in one or more PST files that are not loaded in your Outlook profile, you can use the following trick: 1. Go to Control Panel -> Mail and choose 'Show Profiles' 2. Click 'Add' to create a new profile. 3. Fill the email account information with faked details (You can delete it afterwards) 4. After the profile is created, double click on the profile, and in the profile properties, click 'Data Files' and add the desired PST files that you wish to scan. 5. Also, you can click the 'E-mail Accounts' button, and remove the faked account that you previously created. 6. In the Mailbox Scan Options of OutlookAttachView, choose 'Allow me to choose the profile' in the Outlook Profile option. 7. When you are asked to choose the profile, you should choose the profile that you created, and OutlookAttachView will scan the PST files that you added into it. Command-Line Options ==================== /stext Save the list of all Outlook attachments into a regular text file. /stab Save the list of all Outlook attachments into a tab-delimited text file. /scomma Save the list of all Outlook attachments into a comma-delimited text file. /stabular Save the list of all Outlook attachments into a tabular text file. /shtml Save the list of all Outlook attachments into HTML file (Horizontal). /sverhtml Save the list of all Outlook attachments into HTML file (Vertical). /sxml Save the list of all Outlook attachments to XML file. /SaveDirect Save the Outlook attachments in SaveDirect mode. For using with the other save command-line options ( /scomma, /stab, /sxml, and so on...) When you use the SaveDirect mode, the attachments list is saved directly to the disk, without loading them into the memory first. This means that you can save a list with large amount of attachment lines into your disk without any memory problem, as long as you have enough disk space to store the saved file. The drawback of this mode: You cannot sort the attachments according to the column you choose with /sort command-line option. /sort This command-line option can be used with other save options for sorting by the desired column. If you don't specify this option, the list is sorted according to the last sort that you made from the user interface. The parameter can specify the column index (0 for the first column, 1 for the second column, and so on) or the name of the column, like "Filename" and "Subject". You can specify the '~' prefix character (e.g: "~Subject") if you want to sort in descending order. You can put multiple /sort in the command-line if you want to sort by multiple columns. Examples: OutlookAttachView.exe /shtml "f:\temp\attach.html" /sort 2 /sort ~1 OutlookAttachView.exe /shtml "f:\temp\attach.html" /sort "From" /sort "To" /sort "Subject" /nosort When you specify this command-line option, the list will be saved without any sorting. /cfg Starts OutlookAttachView with the specified configuration file instead of the default OutlookAttachView.cfg /start Starts the mailbox scan immediately with the loaded configuraion, without displaying the Scan Options dialog-box. /extractall Extracts all Outlook attachments from command-line, according to your last settings saved in the default .cfg file, or according to other configuration file that you load with /cfg command-line option. You can also use the following command-line options to change any configuarion value you wish: /CopyFilesFolder /NewNameIfExist /UpdateModifiedTimeMessage /FilenameFormat /ScanOptions.TimeZone /ScanOptions.OutlookProfile /ScanOptions.UseExtensionsList /ScanOptions.ExtensionsList /ScanOptions.UseExcludeExtensionsList /ScanOptions.ExcludeExtensionsList /ScanOptions.UseSubjectContains /ScanOptions.SubjectContains /ScanOptions.ScanOnlyFolders /ScanOptions.ScanFoldersList /ScanOptions.SkipFolders /ScanOptions.SkipFoldersList /ScanOptions.DateFrom /ScanOptions.DateTo /ScanOptions.UseDateRange /ScanOptions.OutlookProfileString /ScanOptions.UseFromList /ScanOptions.FromList /ScanOptions.UseToList /ScanOptions.ToList /ScanOptions.UseOnlyLastDays /ScanOptions.OnlyLastDays For example, if you want to extract all attachments into c:\myattach instead of using the folder specified in the config file: OutlookAttachView.exe /CopyFilesFolder "c:\myattach" /extractall Translating OutlookAttachView to other languages ================================================ In order to translate OutlookAttachView to other language, follow the instructions below: 1. Run OutlookAttachView with /savelangfile parameter: OutlookAttachView.exe /savelangfile A file named OutlookAttachView_lng.ini will be created in the folder of OutlookAttachView utility. 2. Open the created language file in Notepad or in any other text editor. 3. Translate all string entries to the desired language. Optionally, you can also add your name and/or a link to your Web site. (TranslatorName and TranslatorURL values) If you add this information, it'll be used in the 'About' window. 4. After you finish the translation, Run OutlookAttachView, and all translated strings will be loaded from the language file. If you want to run OutlookAttachView without the translation, simply rename the language file, or move it to another folder. License ======= This utility is released as freeware. You are allowed to freely distribute this utility via floppy disk, CD-ROM, Internet, or in any other way, as long as you don't charge anything for this. If you distribute this utility, you must include all files in the distribution package, without any modification ! Disclaimer ========== The software is provided "AS IS" without any warranty, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. The author will not be liable for any special, incidental, consequential or indirect damages due to loss of data or any other reason. Feedback ======== If you have any problem, suggestion, comment, or you found a bug in my utility, you can send a message to nirsofer@yahoo.com

Chucks_VBA_Reference_rev17.docx

Chucks_VBA_Reference_rev17.docx

chuck VBA programming reference,total 188pages,version 17

:fire:xCrash为Android应用程序提供了捕捉java崩溃、本地崩溃和ANR的能力。不需要root权限或任何系统权限。- iqiyi / xCrash

:fire:xCrash为Android应用程序提供了捕捉java崩溃、本地崩溃和ANR的能力。不需要root权限或任何系统权限。- iqiyi / xCrash

xCrash xCrash provides the Android app with the ability to capture java crash, native crash and ANR. No root permission or any system permissions are required. xCrash can generate a tombstone file &#40;similar format as Android system's tombstone file&#41; in the directory you specified when the app process crashes or ANRs. xCrash has been used in many Android apps (including iQIYI video) on different pla

greenplum-db-6.2.1-rhel7-x86_64.rpm

greenplum-db-6.2.1-rhel7-x86_64.rpm

greenplum-db-6.2.1-rhel7-x86_64.rpm Pivotal Greenplum 6.2 Release Notes This document contains pertinent release information about Pivotal Greenplum Database 6.2 releases. For previous versions of the release notes for Greenplum Database, go to Pivotal Greenplum Database Documentation. For information about Greenplum Database end of life, see Pivotal Greenplum Database end of life policy. Pivotal Greenplum 6 software is available for download from the Pivotal Greenplum page on Pivotal Network. Pivotal Greenplum 6 is based on the open source Greenplum Database project code. Important: Pivotal Support does not provide support for open source versions of Greenplum Database. Only Pivotal Greenplum Database is supported by Pivotal Support. Release 6.2.1 Release Date: 2019-12-12 Pivotal Greenplum 6.2.1 is a minor release that includes new features and resolves several issues. New Features Greenplum Database 6.2.1 includes these new features: Greenplum Database supports materialized views. Materialized views are similar to views. A materialized view enables you to save a frequently used or complex query, then access the query results in a SELECT statement as if they were a table. Materialized views persist the query results in a table-like form. Materialized view data cannot be directly updated. To refresh the materialized view data, use the REFRESH MATERIALIZED VIEW command. See Creating and Managing Materialized Views. Note: Known Issues and Limitations describes a limitation of materialized view support in Greenplum 6.2.1. The gpinitsystem utility supports the --ignore-warnings option. The option controls the value returned by gpinitsystem when warnings or an error occurs. If you specify this option, gpinitsystem returns 0 if warnings occurred during system initialization, and returns a non-zero value if a fatal error occurs. If this option is not specified, gpinitsystem returns 1 if initialization completes with warnings, and returns value of 2 or greater if a fatal error occurs. PXF version 5.10.0 is included, which introduces several new and changed features and bug fixes. See PXF Version 5.10.0 below. PXF Version 5.10.0 PXF 5.10.0 includes the following new and changed features: PXF has improved its performance when reading a large number of files from HDFS or an object store. PXF bundles newer tomcat and jackson libraries. The PXF JDBC Connector now supports pushdown of OR and NOT logical filter operators when specified in a JDBC named query or in an external table query filter condition. PXF supports writing Avro-format data to Hadoop and object stores. Refer to Reading and Writing HDFS Avro Data for more information about this feature. PXF is now certified with Hadoop 2.x and 3.1.x and Hive Server 2.x and 3.1, and bundles new and upgraded Hadoop libraries to support these versions. PXF supports Kerberos authentication to Hive Server 2.x and 3.1.x. PXF supports per-server user impersonation configuration. PXF supports concurrent access to multiple Kerberized Hadoop clusters. In previous releases of Greenplum Database, PXF supported accessing a single Hadoop cluster secured with Kerberos, and this Hadoop cluster must have been configured as the default PXF server. PXF introduces a new template file, pxf-site.xml, to specify the Kerberos and impersonation property settings for a Hadoop or JDBC server configuration. Refer to About Kerberos and User Impersonation Configuration (pxf-site.xml) for more information about this file. PXF now supports connecting to Hadoop with a configurable Hadoop user identity. PXF previously supported only proxy access to Hadoop via the gpadmin Greenplum user. PXF version 5.10.0 deprecates the following configuration properties. Note: These property settings continue to work. The PXF_USER_IMPERSONATION, PXF_PRINCIPAL, and PXF_KEYTAB settings in the pxf-env.sh file. You can use the pxf-site.xml file to configure Kerberos and impersonation settings for your new Hadoop server configurations. The pxf.impersonation.jdbc property setting in the jdbc-site.xml file. You can use the pxf.service.user.impersonation property to configure user impersonation for a new JDBC server configuration. Note: If you have previously configured a PXF JDBC server to access Kerberos-secured Hive, you must upgrade the server definition. See Upgrading PXF in Greenplum 6.x for more information. Changed Features Greenplum Database 6.2.1 includes these changed features: Greenplum Stream Server version 1.3.1 is included in the Greenplum distribution. Resolved Issues Pivotal Greenplum 6.2.1 is a minor release that resolves these issues: 29454 - gpstart During Greenplum Database start up, the gpstart utility did not report when a segment instance failed to start. The utility always displayed 0 skipped segment starts. This issue has been resolved. gpstart output was also enhanced to provide additional warnings and summary information about the number of skipped segments. For example: [WARNING]:-********

DevExpress VCL 2012 vol 1.6源码、例子、帮助-Part2

DevExpress VCL 2012 vol 1.6源码、例子、帮助-Part2

=====注意:一共2个压缩分卷,这是第2个!===== DevExpress VCL v2012 vol 1.6 Delphi VCL. 包含所有源码、例子、帮助 支持Metro啦! What's New in DevExpress VCL 12.1.6 Release Notes The following sections list all minor and major changes in DevExpress VCL 12.1.6. Note that products, controls and libraries which aren't mentioned in the list below are included in the unified installer for compatibility, but have not been updated. New Features/Changes ExpressLayout Control S170028 - Documentation - Describe runtime object access capabilities in the "On-Form Object Access" topic S170040 - Documentation - Update the "ExpressLayout Control: Resource Strings" topic with resource strings used in customization context menus ExpressTile Control S170009 - Add the capability to determine if a specific point corresponds to a tile control's title using HitTest information Resolved Issues VCL Subscription Q434991 - Data-aware container controls - Format settings are not applied to cells ExpressBars Suite Q440463 - Ribbon - TdxBarApplicationMenu - Check marks displayed for TdxBarLargeButton items appear highly pixelated Q441061 - Ribbon - TdxRibbonBackstageView opened in a new Ribbon Form created in an application remains visible on screen if this Ribbon Form is closed via its Close button Q425185 - Ribbon Form - Incorrect text color is applied to a maximized form's caption B219006 - TcxBarEditItem - LookupComboBox - An error occurs when moving focus from one lookup bar item to another ExpressDocking Library Q440931 - TdxDockPanel is not activated by clicking the panel's tab in TdxTabContainerDockSite ExpressLayout Control Q434679 - A layout group fires the OnTabChanging event twice if the event's handler calls Application.ProcessMessages Q433283 - A layout group with a label layout item that is set to occupy the entire client area of its group has an incorrect width B218895 - Documentation - Incorrect topic navigation due to a corrupt HLP file &#40;Delphi 7 only&#41; ExpressPrinting System Q440760 - Export to PDF - The File Save dialog is not shown if the default file name for a report is too long B218629 - In the Page Number Format dialog, the "Start At" field value is incorrectly validated for character-based number formats B218627 - TBasedxReportLink descendants - Customized values of the TimeFormat, DateFormat and PageFormat properties are reset to their default values in some cases if default formats have been customized at the TdxComponentPrinter level Q440453 - TdxComponentPrinter - The Date And Time dialog cannot be re-opened after the last time format has been selected in the Available Time Formats list Q435027 - The Print Preview window freezes when invoked from a window located in a DLL file B219022 - TreeList Report Link - Rich text formatting is missing when printing cxRichEdit columns ExpressQuantumGrid Suite Q404033 - An exception is thrown when the selection is modified within the View's OnSelectionChanged event handler Q430561 - Assigning a Table View column to a Layout View data item or Card View row modifies the assignee's GroupIndex property Q434910 - Compilation errors occur after the View's Navigator.InfoPanel.OnClick event handler has been created at design time due to the missing cxNavigator unit in the 'uses' clause Q437880 - Data-aware Views - The "RecordIndex out of range" exception is thrown when removing a record if the View contains unbound columns Q433982 - Data-aware Views - The "RowIndex out of range" exception is thrown when updating the TClientDataSet bound to the View within a form's OnDestroy event handler using EmptyDataSet, etc. B218884 - Layout View - Card captions and currently focused items are incorrectly painted in selected cards B218883 - Layout View - Cell content areas are hot-tracked regardless of the View's OptionsBehavior.ItemHotTrack property value B218885 - Layout View - The text color specified in the View's Styles.OnGetItemStyle event handler is not applied to card layout items Q438267 - Server Mode - Clicking a Filter Row cell in a column containing Null values throws the "Could not convert variant of type (Null) into type (OleStr)" exception Q435475 - Tabular and Layout Views - The View does not synchronize edit value changes with the data controller in the OnEditChanged event handler if DataController.Options includes dcoImmediatePost, and a grid item's Properties.ImmediatePost property is set to True ExpressQuantumTreeList Suite Q434260 - TcxDBTreeList refreshes all data if a bound dataset was edited via the TreeList control when the OptionsData.SmartRefresh property is set to True Q435693 - TcxTreeList - An AV occurs when adding nodes in RAD Studio XE3 at design time ExpressScheduler Suite Q431232 - cxDateNavigator - The date navigator does not maintain the number of selected weeks always visible on screen when scrolling months backwards Q433746 - Day View - Resizing an event that lasts more than one day past 11:59pm increases the event's duration by one day if the ShowAllDayEventsInContentArea property is set to True ExpressSkins Library Q435604 - TdxBevel - Additional colors are not defined for the control in the Blueprint, DevExpressStyle, Seven, SevenClassic, VS2010, and Whiteprint skins Q436337 - The Skin Editor does not generate skin packages for RAD Studio XE3 ExpressSpreadSheet B218380 - The TcxSSViewInfoData record fields in the cxSSViewInfo.hpp file generated by a C++Builder application have an invalid alignment ExpressTile Control Q432087 - cxDateEdit controls are not displayed on a detail page when activating this page for the second and subsequent times in Windows XP B218389 - Focus does not move to the previous/next row when it passes the first/last tile within the current row if a tile control's OptionsBehavior.FocusItemOnCycle property is set to True ExpressVerticalGrid Suite Q439250 - Closing the Customization form does not disable the customization mode in error Common Libraries ExpressEditors Library Q431767 - TdxDBBreadcrumbEdit does not update its content after a new record is inserted into a database table in XE2 Update 4 Q434043 - Background and text colors are not applied to a read-only editor if its Properties.ReadOnly property is set via RepositoryItem Q434045 - cxMemo - Scrollbars are not shown if the editor is the last object in a DFM file, the editor has no text, and its Properties.ScrollBars property is set to ssBoth at design time B218869 - dxBreadCrumbEdit - A node's DeleteChildren method does not update the node's HasChildren property Q437728 - dxBreadcrumbEdit - An AV occurs when clicking the Root in a node's drop-down window when the selected node's children are repopulated within an OnPathSelect event handler B213307 - ExpressEditors are erroneously painted by VCL styles, as if they are standard VCL editors Q436036 - Some editors discard changes to the edit value if these changes were made by pasting data from the clipboard, using the Backspace key, etc. Q433948 - TcxImage - Intersections with other transparent DevExpress editors may appear distorted Q440954 - TcxScrollBox - The Create method does not use the GetViewInfoClass method Q436691 - TcxShellBrowserDialog - Memory leaks when selecting a file or folder in the dialog and clicking the OK button Q432788 - TcxSplitter - In Delphi 2010 and later, changes to the AlignSplitter property erroneously cause form resizing Q434498 - TdxShellBreadcrumbEdit - An AV occurs when selecting a file in a linked shell tree view B218303 - TdxShellBreadcrumbEdit - Files selected in a linked shell tree view are added as nodes (folders) to the breadcrumb editor ExpressLibrary Q432285 - TdxScreenTip - An AV occurs when displaying hints for ExpressQuantumGrid cells after ScreenTips have been shown by hint controllers located on other forms

最新推荐最新推荐

recommend-type

基于打开pycharm有带图片md文件卡死问题的解决

背景 最近在做项目的时候,向前端传输带图片的md文件,然后编辑完成想试着发送的时候发现Pycharm忽然卡死了,打开也是闪退。 解决方法 先将md文件移出项目文件,打开Pycharm,然后再进行下列操作。 打开File->Settings->Plugins->installed 把我们的Markdowm Support前面的勾取消掉。 在我们的Plugins还有个比较好的MD插件,就是那个Markdowm Navigator这个插件,我们可以把它安装再重启,这样就可以看到我们的图片了。 补充知识:解决pycharm中md文件中文乱码的问题 在file–setting–file enco
recommend-type

PyCharm集成Jupyter启动卡死解决[代码]

本文主要解决PyCharm集成Jupyter Notebook时一直处于启动状态无法正常加载的问题。作者使用的PyCharm版本为2022.2,配置好Jupyter后,发现Notebook在PyCharm中始终显示启动中,连基本的print语句都无法执行。经过调试,确认直接启动Notebook在Chrome中可用,PyCharm解释器设置无误,.py文件也能正常运行。最终发现原因是PyCharm版本与Jupyter Notebook版本不兼容:conda默认安装的是7.x最新版,而PyCharm版本过低。解决方法是在Anaconda中安装6.x版本的Jupyter Notebook(作者选择了6.5.5),使用pip install notebook=6.5.5命令安装。此外,还解决了快捷方式点击后闪退的问题,需要修改快捷方式的“目标”指向正确的jupyter notebook.exe文件。
recommend-type

解决终端运行Py闪退

cmd打开文件步骤 打开相应程序步骤 cocos-2d学习常见问题之一
recommend-type

解决PyCharm闪退问题[项目代码]

本文详细介绍了如何通过修改PyCharm的两个关键注册表参数来解决因系统超频导致的IDE崩溃问题。首先,文章分析了问题的根本原因,指出PyCharm默认会最大化利用CPU资源,导致在高性能模式下可能超出超频CPU的稳定阈值,从而引发闪退。接着,提供了具体的解决方案,包括打开PyCharm注册表设置、修改批量检查线程数和缓存扫描线程数两个参数,并重启IDE。最后,文章还提醒用户检查日志文件以定位其他潜在问题。这一方法能有效降低CPU负载峰值,避免触发超频保护机制,从而稳定运行PyCharm。
recommend-type

学生成绩管理系统C++课程设计与实践

资源摘要信息:"学生成绩信息管理系统-C++(1).doc" 1. 系统需求分析与设计 在进行学生成绩信息管理系统开发前,首先需要进行系统需求分析,这是确定系统开发目标与范围的过程。需求分析应包括数据需求和功能需求两个方面。 - 数据需求分析: - 学生成绩信息:需要收集学生的姓名、学号、课程成绩等数据。 - 数据类型和长度:明确每个数据项的数据类型(如字符串、整型等)和长度,例如学号可能是字符串类型且长度为一定值。 - 描述:详细描述每个数据项的意义,以确保系统能够准确处理。 - 功能需求分析: - 列出功能列表:用户界面应提供清晰的操作指引,列出所有可用功能。 - 查询学生成绩:系统应能通过学号或姓名查询学生的成绩信息。 - 增加学生成绩信息:允许用户添加未保存的学生成绩信息。 - 删除学生成绩信息:能够通过学号或姓名删除已经保存的成绩信息。 - 修改学生成绩信息:通过学号或姓名修改已有的成绩记录。 - 退出程序:提供安全退出程序的选项,并确保所有修改都已保存。 2. 系统设计 系统设计阶段主要完成内存数据结构设计、数据文件设计、代码设计、输入输出设计、用户界面设计和处理过程设计。 - 内存数据结构设计: - 使用链表结构组织内存中的数据,便于动态增删查改操作。 - 数据文件设计: - 选择文本文件存储数据,便于查看和编辑。 - 代码设计: - 根据功能需求,编写相应的函数和模块。 - 输入输出设计: - 设计简洁明了的输入输出提示信息和操作流程。 - 用户界面设计: - 用户界面应为字符界面,方便在命令行环境下使用。 - 处理过程设计: - 设计数据处理流程,确保每个操作都有明确的处理逻辑。 3. 系统实现与测试 实现阶段需要根据设计阶段的成果编写程序代码,并进行系统测试。 - 程序编写: - 完成系统设计中所有功能的程序代码编写。 - 系统测试: - 设计测试用例,通过测试用例上机测试系统。 - 记录测试方法和测试结果,确保系统稳定可靠。 4. 设计报告撰写 最后,根据系统开发的各个阶段,撰写详细的设计报告。 - 系统描述:包括问题说明、数据需求和功能需求。 - 系统设计:详细记录内存数据结构设计、数据文件设计、代码设计、输入/输出设计、用户界面设计、处理过程设计。 - 系统测试:包括测试用例描述、测试方法和测试结果。 - 设计特点、不足、收获和体会:反思整个开发过程,总结经验和教训。 时间安排: - 第19周(7月12日至7月16日)完成项目。 - 7月9日8:00到计算机学院实验中心(三楼)提交程序和课程设计报告。 指导教师和系主任(或责任教师)需要在文档上签名确认。 系统需求分析: - 使用表格记录系统需求分析的结果,包括数据项、数据类型、数据长度和描述。 - 分析数据项如学生成绩信息、状态器、链表节点等,确定其属性和行为。 以上就是文档中提到的学生成绩信息管理系统开发的关键知识点。开发此类系统需要熟练掌握C++编程基础,了解面向对象的程序设计思想,以及熟悉文件操作和链表等数据结构的应用。此外,良好的软件开发流程意识、测试意识和文档撰写能力也是必不可少的。
recommend-type

别再手动拖拽了!用Lumerical脚本批量创建FDTD仿真结构(附完整代码)

# 告别低效建模:Lumerical脚本自动化实战指南 在光子学仿真领域,时间就是科研生命线。当同行还在GUI界面里反复点击菜单时,你已经用脚本批量生成了20组参数化结构——这不是未来场景,而是每位FDTD用户都应该掌握的基础生产力革命。本文将彻底改变你与Lumerical的交互方式,从手动拖拽的农耕时代,跃迁到自动化建模的工业文明。 ## 1. 为何脚本建模是必然选择 2019年Nature Photonics的一项研究显示,科研工作者在仿真工具上平均浪费37%的时间在重复性操作上。对于需要参数扫描的纳米光学结构设计,这个数字可能更高。手动创建10个不同尺寸的纳米柱阵列意味着: -
recommend-type

Java邮件解析任务中,如何安全高效地提取HTML邮件内容并避免硬编码、资源泄漏和类型转换异常?

<think>我们被要求优化一段Java代码,该代码用于处理邮件(特别是来自特定发件人的构建通知邮件)。代码的主要问题包括: 1. 重复获取邮件内容:在检查MIME类型后,多次调用`msg[i].getContent()`,这可能导致性能问题或流关闭异常。 2. 类型转换问题:直接将邮件内容转换为`Multipart`而不进行类型检查,可能引发`ClassCastException`。 3. 代码结构问题:逻辑嵌套过深,可读性差,且存在重复代码(如插入邮件详情的操作在两个地方都有)。 4. 硬编码和魔法值:例如在解析HTML表格时使用了硬编码的索引(如list3.get(10)),这容易因邮件
recommend-type

RH公司应收账款管理优化策略研究

资源摘要信息:"本文针对RH公司的应收账款管理问题进行了深入研究,并提出了改进策略。文章首先分析了应收账款在企业管理中的重要性,指出其对于提高企业竞争力、扩大销售和充分利用生产能力的作用。然后,以RH公司为例,探讨了公司应收账款管理的现状,并识别出合同管理、客户信用调查等方面的不足。在此基础上,文章提出了一系列改善措施,包括完善信用政策、改进业务流程、加强信用调查和提高账款回收力度。特别强调了建立专门的应收账款回收部门和流程的重要性,并建议在实际应用过程中进行持续优化。同时,文章也意识到企业面临复杂多变的内外部环境,因此提出的策略需要根据具体情况调整和优化。 针对财务管理领域的专业学生和从业者,本文提供了一个关于应收账款管理问题的案例研究,具有实际指导意义。文章还探讨了信用管理和征信体系在应收账款管理中的作用,强调了它们对于提升企业信用风险控制和市场竞争能力的重要性。通过对比国内外企业在应收账款管理上的差异,文章总结了适合中国企业实际环境的应收账款管理方法和策略。" 根据提供的文件内容,以下是详细的知识点: 1. 应收账款管理的重要性:应收账款作为企业的一项重要资产,其有效管理关系到企业的现金流、财务健康以及市场竞争力。不良的应收账款管理会导致资金链断裂、坏账损失增加等问题,严重影响企业的正常运营和长远发展。 2. 应收账款的信用风险:在信用交易日益频繁的商业环境中,企业必须对客户信用进行评估,以便采取合理的信用政策,降低信用风险。 3. 合同管理的薄弱环节:合同是应收账款管理的法律基础,严格的合同管理能够保障企业权益,减少因合同问题导致的应收账款风险。 4. 客户信用调查:了解客户的信用状况对于预测和控制应收账款风险至关重要。企业需要建立有效的客户信用调查机制,识别和筛选信用良好的客户。 5. 应收账款回收策略:企业应建立有效的账款回收机制,包括定期的账款跟进、逾期账款的催收等。同时,建立专门的应收账款回收部门可以提升回收效率。 6. 应收账款管理流程优化:通过改进企业内部管理流程,如简化审批流程、提高工作效率等措施,能够提升应收账款的管理效率。 7. 应收账款管理策略的调整和优化:由于企业的内外部环境复杂多变,因此制定的管理策略需要根据实际情况进行动态调整和持续优化。 8. 信用管理和征信体系的作用:建立和完善企业内部信用管理体系和征信体系,有助于企业更好地控制信用风险,并在市场竞争中占据有利地位。 9. 对比国内外应收账款管理实践:通过研究国内外企业在应收账款管理上的不同做法和经验,可以借鉴先进的管理理念和方法,提升国内企业的应收账款管理水平。 综上所述,本文深入探讨了应收账款管理的多个方面,为RH公司乃至其他同类型企业提供了应收账款管理的改进方向和策略,对于财务管理专业的教育和实践都具有重要的参考价值。
recommend-type

新手别慌!用BingPi-M2开发板带你5分钟搞懂Tina Linux SDK目录结构

# 新手别慌!用BingPi-M2开发板带你5分钟搞懂Tina Linux SDK目录结构 第一次拿到BingPi-M2开发板时,面对Tina Linux SDK里密密麻麻的文件夹,我完全不知道从哪下手。就像走进一个陌生的大仓库,每个货架上都堆满了工具和零件,却找不到操作手册。这种困惑持续了整整两天,直到我意识到——理解目录结构比死记硬背每个文件更重要。 ## 1. 为什么SDK目录结构如此重要 想象你正在组装一台复杂的模型飞机。如果所有零件都混在一个箱子里,你需要花大量时间寻找每个螺丝和面板。但如果有分门别类的隔层,标注着"机身部件"、"电子设备"、"紧固件",组装效率会成倍提升。Ti
recommend-type

Java线程池运行时状态怎么实时掌握?有哪些靠谱的监控手段?

<think>我们之前已经讨论过Java线程池监控的多种方法,包括使用第三方工具和自定义监控。现在用户再次询问Java线程池监控方法,我们需要根据引用内容以及之前讨论的内容进行总结和扩展。 引用[1]提到使用JDK自带的监控工具,引用[2]提到了三种常用的线程池创建方式,引用[3]给出了通过ThreadPoolExecutor获取线程池状态的方法。 结合之前回答的内容,我们可以将监控方法分为以下几类: 1. 使用JDK自带工具(如jconsole, jvisualvm)进行监控。 2. 通过编程方式获取线程池状态(如引用[3]所示)。 3. 扩展ThreadPoolExecutor,