XEROF

 

xlsgen 5.0.0.15 : Advanced data sorting


Build 5.0.0.15 of xlsgen adds advanced data sorting. Before this build, sorting on values was already available. This build adds the following :

  • on values
  • on cell color : background cell color or font color
  • on associated icon (related to icon-based conditional formatting)



This is illustrated as follows :



Sort on values (ascending) by column C




Sort on background cell color (descending) by column D




Sort on cell font color (ascending) by column E




Sort on icons (ascending) by column G


Any number of sort conditions can be added (up to 3 if you target XLS files) so if you'd like to sort on column C then on column D, the corresponding conditions can be added to the tree of conditions, accordingly.

Here is an example for sorting on background cell color :

C++ code


xlsgen::IXlsWorkbookPtr wbk = engine->Open( L"data.xls", L"output.xls" );

xlsgen::IXlsWorksheetPtr wksht = wbk->WorksheetByIndex[1];

xlsgen::IXlsRangePtr r = wksht->NewRange(L"C4:F7");
xlsgen::IXlsSortPtr sort = r->NewSort();

xlsgen::IXlsSortConditionPtr sc = sort->NewCondition();

sc->SortOnWhat = xlsgen::sortcondition_oncellbkgndcolor; // cell background color is used as sort criteria
sc->columnIndex = 2; // 2nd column of the range, i.e. column D
sc->SortColor = 0xFFFF00; // 0xFFFF00 = yellow

sort->Apply();



And another one for sorting on icons (related to existing conditional formatting of type icon) :

C++ code


xlsgen::IXlsWorkbookPtr wbk = engine->Open( L"data.xls", L"output.xls" );

xlsgen::IXlsWorksheetPtr wksht = wbk->WorksheetByIndex[1];

xlsgen::IXlsRangePtr r = wksht->NewRange(L"C4:F7");
xlsgen::IXlsSortPtr sort = r->NewSort();

xlsgen::IXlsSortConditionPtr sc = sort->NewCondition();

sc->SortOnWhat = xlsgen::sortcondition_onicon; // cell icon is used as sort criteria
sc->columnIndex = 4; // 4th column of the range i.e. column F
sc->SortIconset = xlsgen::iconset_3trafficlights_unrimmed; // icon set to match
sc->SortIconsetIndex = 1; // which icon in iconset to match (1-based)

sort->Apply();




Posted on 29-September-2023 16:26 | Category: xlsgen, Excel generator | comment[0] | trackback[0]

 

Le journal Ouest France, résumé en une phrase


On croit rêver mais c'est vrai.

Titre de l'article du ouest france :

extrait : "La Terre sera inhabitable beaucoup plus tôt que prévu"


Titre extrèmement putaclic et stressant.

Puis on lit l'article. Et dans le premier paragraphe :

extrait : "Une étude internationale publiée ce lundi 25 septembre 2023 dans la revue « Nature Geoscience » indique que la Terre connaîtra des températures invivables dans 250 millions d’années."


Je crois qu'on va s'en remettre, finalement....

Posted on 27-September-2023 09:17 | Category: France | comment[0] | trackback[0]

 

Unity 3D engine TOS changes


I don't understand the snafu about Unity changing terms over the use of their licensed Unity 3D Engine. The reason why is, if you are a small game company, you are not impacted at all. If you are a large one, the way you protect your business is by purchasing insurances to make sure you are covered when this happens.

So other than yelling for the sake of yelling, I don't see what is so wrong about it.

Oh, and by the way, if you are serious about 3D gaming, you already must have written your own engine and associated tools. So whatever Unity or any of competing engines do is even less of a problem in my opinion.

Posted on 14-September-2023 15:53 | Category: News | comment[0] | trackback[0]

 

xlsgen 5.0.0.14 : Security fix for WebP files


Build 5.0.0.14 of xlsgen has a security fix related to WebP pictures. A 0-day vulnerability in the official libWebp library for reading/writing WebP pictures has been discovered. xlsgen relies on libWebp so it needed to be patched as well.

Posted on 14-September-2023 09:29 | Category: xlsgen, Excel generator | comment[0] | trackback[0]

 

ChatGPT, already the end of it


ChatGPT, already the end of it. We hardly knew you. RIP.

extrait : "Weeks after The New York Times updated its terms of service (TOS) to prohibit AI companies from scraping its articles and images to train AI models, it appears that the Times may be preparing to sue OpenAI. The result, experts speculate, could be devastating to OpenAI, including the destruction of ChatGPT's dataset and fines up to $150,000 per infringing piece of content."


Posted on 19-August-2023 07:58 | Category: News | comment[0] | trackback[0]

 

The Android side (II)


In fact, the most basic problem with Android Studio for someone who never used before, is how bad the default application sample is. This is known territory, if you remember Visual Studio, it came with a /samples folder full of rubbish code samples. But the default application is just bad. It does not do anything meaningful, it uses a bad layout model (constrained layout) ; it also does not come with simple code snippets for logging stuff in the output console, or show a modal box. In a nutshell, it does not come with anything relevant for someone who never used it before.
The crap does not stop here, suffice to say. But Android Studio could come a long way with a better, useable, default application sample.

Oh and by the way, if it came with all gradle run-time and one or two virtual devices, all packed in the sample installer, that would also make it less crazy like sometimes it seems building a trivial project requires the download of many pieces, none of which you asked for.

Posted on 11-August-2023 10:55 | Category: News | comment[0] | trackback[0]

 

The Android side


Since yesterday, I have started delving around the Android world, namely Android studio and the like. I'm sorry, but coming from the Visual Studio world, Android studio is a steeming pile of shit, and every moment of it, like everything you click on, is so bad and incorrect in design that it feels like an ad for Apple X-code.
There you go Google.

Posted on 10-August-2023 11:16 | Category: News | comment[0] | trackback[0]

 

xlsgen 5.0.0.13 : Advanced data labels (II)


Build 5.0.0.13 of xlsgen introduces additional features to data labels, this time the ability to set a custom shape to the whole series of data points, or only one data point.


Custom data label shapes

xlsgen reads, writes, renders, and exposes in the automatic source code generation tool (xlscodegen.exe) this new feature. It is available for all XLSX/XLSB files. Notably it is not available for XLS files because Excel does not create internal records for this XLS files. This feature was made available by Microsoft first back in Excel 2013, as noted here.

Here is how to set a custom data label shape for an entire series of data points :


chart->SeriesByIndex[1]->SeriesDataLabels->VectorShape = xlsgen::vectorshapetypeEllipse;


And here is how to do it for a single data point :


chart->SeriesByIndex[1]->SeriesDataLabels->DataLabelElements[3]->VectorShape = xlsgen::vectorshapetypeOctagon;


Shape types are to be chosen from the following enumVectorShape enumeration.

Posted on 06-August-2023 10:32 | Category: xlsgen, Excel generator | comment[0] | trackback[0]

 

xlsgen 5.0.0.12 : Advanced data labels


Build 5.0.0.12 of xlsgen introduces advanced data labels in charts.


Data labels leader lines (in red)


It is made of the following :

- Exposure in the object model, Read, Write, and exposure in the automatic source code generation tool (xlscodegen.exe) of data labels leader lines (see picture above), which are used to draw lines between data labels with custom positions and the actual chart data. This is for all Excel files (XLS, XLSX, XLSB, ...)

With this exposure, leader line formatting (color, width, style) can be accessed with the following type of code :

(C++)


chart002s1->SeriesByIndex[1]->SeriesDataLabels->Show = xlsgen::datalabels_value;
chart002s1->SeriesByIndex[1]->SeriesDataLabels->LeaderLinesOptions->Patterns->Borders->Type = xlsgen::chartbordertype_custom;
chart002s1->SeriesByIndex[1]->SeriesDataLabels->LeaderLinesOptions->Patterns->Borders->Style = xlsgen::chartborderstyle_solid;
chart002s1->SeriesByIndex[1]->SeriesDataLabels->LeaderLinesOptions->Patterns->Borders->Weight = xlsgen::chartborderweight_thick;
chart002s1->SeriesByIndex[1]->SeriesDataLabels->LeaderLinesOptions->Patterns->Borders->Color = 0x00B0F0;


- Exposure of arrow/symbol formatting at the end of leader lines, both ends. Read, Write, and also exposure in the automatic source code generation tool (xlscodegen.exe). This is for all Excel files (XLS, XLSX, XLSB, ...). With this, as pictured above, you can add a symbol such as a triangle. And it works like this with a couple lines of code :

(C++)


chart002s1->SeriesByIndex[1]->SeriesDataLabels->LeaderLinesOptions->Patterns->Borders->ArrowStyleBeginCap->Style = xlsgen::vectorshapearrowstyle_triangle;
chart002s1->SeriesByIndex[1]->SeriesDataLabels->LeaderLinesOptions->Patterns->Borders->ArrowStyleBeginCap->Width = xlsgen::vectorshapearrowwidth_medium;
chart002s1->SeriesByIndex[1]->SeriesDataLabels->LeaderLinesOptions->Patterns->Borders->ArrowStyleBeginCap->Length = xlsgen::vectorshapearrowlength_medium;



- Extension of data label leader lines to chart types other than pie charts. Before Excel 2013, data label leader lines were exposed in Excel but only for pie charts (and their variants such as the doughnut). With Excel 2013, Excel extended the data label leader lines to all chart types, that is, bars, lines, XY charts, ...

What xlsgen does is provide Read and Write support for this as well. Also, what xlsgen does additionally is to render those formatted data label leader lines for all chart types. This comes at no cost for a client application since not even one line of code is needed for that.


Last but not least, it is important, as xlsgen keeps adding a lot of micro details API to the object model, which can be daunting to learn, grasp and handle, it is reminded that in fact the best way to get your job done is by using a particular feature by hand in Excel, saving the file, and then using our automatic source code generation tool (xlscodegen.exe) in order to obtain the corresponding source code, in one of many of the supported programming languages. It cannot be faster this way.

Posted on 02-August-2023 18:55 | Category: xlsgen, Excel generator | comment[0] | trackback[0]

 

xlsgen 5.0.0.11 : Performance fix pack (III)


Build 5.0.0.11 of xlsgen is a memory and speed performance again. It improves up to x5 the speed of writing XLSX/XLSB files with many relationships, such as files with many hyperlinks (but not only this scenario).

Posted on 26-July-2023 06:51 | Category: xlsgen, Excel generator | comment[0] | trackback[0]

 

xlsgen 5.0.0.10 : Behavior of worksheet deletion


Build 5.0.0.10 of xlsgen makes a change in behavior when a worksheet is deleted.

Before this build, when a worksheet was deleted, its content would be internally erased, but the worksheet itself would still appear as part of the worksheet collection of the current workbook. And only when closing the workbook would the worksheet be actually not written back in the file, hence the worksheet deletion.

Beginning with this build, a worksheet deleted by a statement such as worksheet.Delete() immediately disappear from the worksheet collection, making it more natural to program worksheets.

Posted on 22-July-2023 19:00 | Category: xlsgen, Excel generator | comment[0] | trackback[0]

 

xlsgen 5.0.0.9 : Performance fix pack (II)


Build 5.0.0.9 of xlsgen adds up on the previous build and improves both speed and memory performance of xlsgen :

- faster reading of files with many shapes

- better scaling of memory when processing many hyperlinks and shapes

Posted on 14-July-2023 14:32 | Category: xlsgen, Excel generator | comment[0] | trackback[0]

 

Youtube being anal


When I read this,

extrait : "YouTube is currently running what it describes as a "small experiment globally," warning users to toggle off their ad blockers and avoid being limited to only three video views."


I wonder what wrong must have happened for youtube to be so anal.

Guess what, youtube is now against ad blockers.

Probably everyone saw it coming. First of all, youtube introduced non-stoppable ads and annoyed pretty much every human on the planet with it. I guess ad blockers must have moved to find the filtering rules needed to block those non-stoppable ads, even though I don't see this in practice yet. Youtube must know adblockers made a move, and youtube is now reacting to this move by making sure every fucking user either whitelists youtube or creates a youtube account only to watch videos (just as doomed as twitter asking for an account only to watch tweets).

In the end this is not going to end well for youtube. It's way too hostile.

Posted on 01-July-2023 18:13 | Category: News | comment[0] | trackback[0]

 

xlsgen 5.0.0.8 : Performance fix pack


Build 5.0.0.8 of xlsgen is a performance fix pack, and also contains a fix for cell metadata :

- better handling of XLSX files with many internal relationships (hyperlinks) to avoid GPF case.

- removed most middle layer API calls to traverse relationships, avoiding bottleneck in files with many internal relationships

- refactored code in tables and pivot tables that were indirect bottlenecks as well


Also a fix for cell metadata to better return hit test for cells containing hyperlinks.


Posted on 28-June-2023 11:56 | Category: xlsgen, Excel generator | comment[0] | trackback[0]

 

xlsgen 5.0.0.7 : Fix pack for pivot tables


Build 5.0.0.7 of xlsgen is a fix pack for pivot table rendering :

- introduction of Outline and Compact rendering algorithms

- better reading of existing pivot table layout setting from XLSX fles

- cell indent is now 3 space chars instead of 2 space chars, used notably in Compact rendering algorithm


Pivot table rendering has now 3 rendering layout algorithms depending on your choosing : Tabular, Outline and Compact.

Differences is that Outline and Compact don't have subtotals and grandtotals.

Compact has all row fields in a single column (hierarchically), as opposed to one column per row field.

Posted on 25-June-2023 16:12 | Category: xlsgen, Excel generator | comment[0] | trackback[0]

 

Mais à quoi sert Windows 11 ?


Depuis un moment, Microsoft spam les utilisateurs de Windows pour qu'ils passent à Windows 11, même lorsque l'ordinateur ne remplit pas les critères de compatibilité.

On le sait, Microsoft a positionné Windows 11 comme un rempart décisif essentiel contre les vulnérabilités, via cette fameuse puce TPM (Trust Platform Module). En gros, si vous voulez éviter une classe entière de vulnérabilités, la puce TPM va permettre de réaliser cette protection et il vous faut donc migrer vers Windows 11.

Sauf que, sauf que...

Voici un petit extrait du patch tuesday, le fameux patch mensuel, daté d'Avril 2023 :

extrait : "Windows et le Patch Tuesday d’avril 2023.
Dans le détail Microsoft corrige 56 vulnérabilités dans Windows 10 21H2 et 22H2 dont cinq sont jugées critique.
De son coté Windows 11 (21H2 et 22H2) est victime de 59 vulnérabilités dont cinq sont jugées critiques. Il s’agit des mêmes failles critiques que celles de Windows 10.
"


Les mêmes failles dans Windows 11 que Windows 10 ? On nous aurait menti alors ?

Passez votre chemin. Si vous êtes un particulier, le passage à Windows 11 n'a aucun intérêt. Bien sûr, vous serez un jour obligé de le faire car nombre de logiciels tiers vont vous y obliger à terme (Chrome, Firefox, ...) malgré l'absence de fondement technique.

Si vous êtes en entreprise, le message de Microsoft pour faire peur et "forcer" le passage à Windows 11, n'est en pratique qu'un message commercial. Le patch tuesday ci-dessus, choisi au hasard, est un parfait contre-exemple de cette logique commerciale. CQFD.

Posted on 23-June-2023 15:08 | Category: anti-Microsoft | comment[0] | trackback[0]

 

Orange telecom versus Elon Musk


I have to say that I am generally offended when Orange CEO, one of the biggest networks in the EU, is telling Elon Musk that information needs to be moderated.

The question that it raises then is why and who is legit to do this censoring work. It would not be so bad if this was said by some random jerk startup guy, but Orange isn't that. Orange has a leg on what many million users see and read with their online connection be it DSL/Fiber or off the air. And such a stand from Orange is unacceptable for me. Everyone should be provided modern (aka powerful) tools so they can preemptively and after-the-fact censor stuff they do not want to see based on their beliefs, but it should never end up censoring what the poster is saying, it should only censor what I as a consumer and citizen see. In other words, I should end up censoring the content that flows to me, because that's after all what my beliefs are compatible with anyway. And that's it.
Anything else is raw vulgar general censorship meant to allow an untold party to govern us. Obviously this is not right. Especially in those times where actually elected people have less power than ever. Those guys can see this general censorship as a tool to get back this lost power. But I believe instead their act should organically bring their elected power back in place and they should not touch free speech at all.

Posted on 20-June-2023 10:17 | Category: News | comment[0] | trackback[0]

 

xlsgen 5.0.0.6 : Fix pack


Build 5.0.0.6 of xlsgen is a fix pack.

- Systematic crash during pivot table generation in XLSX files. This is now fixed.

- Unable to read item groupings from existing pivot tables in XLSX files due to creative usage of XML standard in Excel. This is now fixed too.

- Crash when reading complex pivot tables from XLSB files. Fixed.

Posted on 24-May-2023 11:50 | Category: xlsgen, Excel generator | comment[0] | trackback[0]

 

xlsgen 5.0.0.5 : Preserve color themes


Build 5.0.0.5 of xlsgen ensures that color details are preserved as is during read/write and file conversion (such as XLSX to XLSB for instance). This preserves palette indexes, color themes, rgbs, ... along with color effects such as tint, alpha, shade, luminosity modulation. This is for colors in cells and in shapes.

Posted on 17-May-2023 12:17 | Category: xlsgen, Excel generator | comment[0] | trackback[0]

 

xlsgen 5.0.0.4 : Print Row and Col headings


Build 5.0.0.4 of xlsgen adds support for rendering row and column headings in scenarios such as Print, export to PDF, XPS, ...


row and column headings in xlsgen

The row and col headings in Excel is in the print settings dialog, sheet tab. And is on a per worksheet basis.

Posted on 26-April-2023 21:30 | Category: xlsgen, Excel generator | comment[0] | trackback[0]

 

 

<-- previous page

< April >
0102030405
0607080910
1112131415
1617181920
2122232425
2627282930



 

 

This site
Home
Articles

DevTools
CPU-Z
EditPlus
ExplorerXP
Kill.exe
OllyDbg
DependencyWalker
Process Explorer
autoruns.exe
Araxis
COM Trace injection
CodeStats
NetBrute
FileMon/Regmon
BoundsChecker
AQTime profiler
Source monitor
GDI leaks tracking
Rootkit revealer
Rootkit removal
RunAsLimitedUser(1)
RunAsLimitedUser(2)

 

 

Liens
Le Plan B
Un jour à Paris
Meneame
Rezo.net (aggr)
Reseau voltaire
Cuba solidarity project
Le grand soir
L'autre journal
Le courrier suisse
L'Orient, le jour
Agoravox (aggr)