With all what was done by major social networks to so-called curb online disinformation, especially during elections, we can now safely state that on the one hand, we have given more power than ever to social networks, letting them censor content as they wish, by that I mean without a juridicial conclusion, and on the other hand, the mess regarding what's fake what's true what's information and what's not, that mess has only got bigger not smaller. Nothing is fixed and social networks have now more power than ever on freedom of expression of individuals. This is, inadvertenly, exactly what you thought would have happened if you wear a tin foil hat. Freedom of expression for media and the wealthy is higher than ever. I can only regret that many of so-called open society supporters have contributed to this. Those open society fans are what your enemies, apparently, and you're better off without their interfering.
|  |  | Posted on 10-February-2020 10:17 | Category: News | comment[0] | trackback[0] Build 4.5.0.86 of xlsgen is a fix pack for charts :
- when duplicating charts, improved accuracy of chart formatting details such as chart XY type combination, axis type, font details
- also when duplicating charts, make sure to copy text boxes, vector shapes, pictures and charts (both inside charts)
- when reading existing charts, better read font details and better read of leader lines in the case of a bar/column chart
|  |  | Posted on 09-February-2020 18:59 | Category: xlsgen, Excel generator | comment[0] | trackback[0] If you were wondering whether or not the search bar (in the task bar) of Windows 10 phones home or not, by that meaning Microsoft listens to your every search request, you've got the answer this week.
One of their listening servers went down, and everyone in the world noticed that the search bar in Windows 10 did not work at all.
This was not due to a failed Windows update, and this did not get fixed with a Windows update. To fix it, Microsoft actually restarted their listening servers.
In fact, this piles up with a software programming mistake because when a server request goes unfulfilled, that should not have any effect on the local search that is performed as well.
Windows 10 listens to your every search request, even if you thought these were local search requests.
And god only knows what they do with it : law enforcements, spies, NSA, sabotage, espionage, marketing, profiling. You name it.
In other words, Windows 10 is not your friend. That is a tool for a third party. And it will stab you in the back in the long run.
Note, for most users, this is it, and there is no way around unless Microsoft is forced to by governements out there. Don't hold your breath, Microsoft should have brought to justice every single year and they have been brought just a couple of times.
For power users, you have this registry trick that disables the listening server lookup. Here it goes :
Find HKEY_CURRENT_USER / Software / Microsoft / Windows / CurrentVersion / Search
On the right side, you've got a number of keys. Set the BingSearchEnabled key to 0. If this key does not exist, create it as a DWORD32 value and set it as 0.
Restart Explorer.exe (or reboot because restarting apps is now needlessly complicated and explorer.exe no longer restarts itself) and you're done.
|  |  | Posted on 08-February-2020 09:37 | Category: anti-Microsoft | comment[0] | trackback[0] Si vous n'êtes pas éditeur de logiciels, vous découvrez ces jours-ci que le fameux (et gratuit) anti-virus Avast était en fait un aspirateur à données personnelles, prélevant et revendant les visites web, notamment.
Si vous étiez éditeur de logiciels, vous savez depuis un petit moment que les entreprises derrière les anti-virus sont des racailles et des lâches. Car ces gens se permettent de créer des faux positifs sur des logiciels, privant ainsi leurs éditeurs de business. Et bien sûr, sans jamais prévenir les éditeurs en question.
Manquerait plus maintenant qu'on apprenne que la NSA (et d'autres, suivez mon regard) se cache derrière un autre anti-virus "populaire" installé de force sur les ordinateurs.
A bon entendeur. Quand vous achetez un ordinateur, la première action doit être, une fois le système installé, de supprimer les logiciels qui se nomment eux-même anti-virus. De toute façon, si vous êtes menacés par un virus, la plupart du temps, les anti-virus n'auront pas encore la signature du virus.
|  |  | Posted on 02-February-2020 20:05 | Category: France | comment[0] | trackback[0] However unbelievable as it sounds, you will simply get no sound after cloning your main hard drive and installing it in the computer.
Yes, we are in 2020, and still getting this sort of mess. Thanks Microsoft, no, thanks.
Here is how to fix it :
1) Go in the Windows device manager, and uninstall your sound card or PCI sound.
2) Start the registry editor (involves a prompt) then expand the following registry key :
HKEY_LOCAL_MACHINE\SYSTEM\controlSet001\Services\HDAudBus
On the right side of the expanded key, there is a "Start" value defaulting to 4 (in fact anything not 3). Modify it to 3.
3) Quit the registry. Reboot. Go in the Windows device manager, and install your sound card or PCI sound. This time, Windows finds the driver AND manages to load it properly.
Sound is back !!
|  |  | Posted on 22-January-2020 12:20 | Category: anti-Microsoft | comment[0] | trackback[0] L'année 2020 démarre en fanfare et jamais la consultation des sites web n'aura été aussi pénible. Jamais depuis 24 ans nous n'avons eu un tel empilement de pop-ups, prompts et autres bannières qui obstruent le contenu de la moindre page web. Jamais, qui plus est, les pages web n'auront été aussi lourdes à charger, avec bien souvent 1MO rien que pour la partie HTML, et donc avant toutes les ressources javascript externes et toutes les images. Sans parler des vidéos ou animations qui démarrent toutes seules.
Et enfin, le pompon des navigateurs web, entre les uns qui cessent de fonctionner si votre système d'exploitation est réputé trop vieux : par exemple Google a annoncé que Chrome ne sera bientôt plus supporté sur Windows 7, sans aucune raison. Et de l'autre la création de nouveaux super cookies qui rendent obsolète et impossible la maîtrise de sa vie privée dans sa navigation internet, même lorsqu'on sait ce qu'on fait.
Absurde, voire choquant.
Ce web est prêt à imploser désormais.
Un hasard ou une volonté sous-jacente ? Un malheureux concours de circonstances ou une savante reprise en mains par les puissants du seul outil qui leur avait échappé depuis 24 ans ?
Je pose la question. Non sans être quelque peu dubitatif. En principe, un citoyen du web, bref tout le monde, devrait finir par boycotter une telle chose. Je ne propose pas de revenir à la transmission en code morse, mais une chose est sure, il va falloir changer les choses.
|  |  | Posted on 18-January-2020 10:04 | Category: France | comment[0] | trackback[0] Microsoft resurects life into browser by forking Chromium. It should be of no surprise to any Microsoft critics that anything these days coming from Microsoft is doomed at birth, and that Microsoft has to reuse popular software in order to claim any relevance. But Chromium is not just an API or layer, it's a number of such things (almost an OS in itself), and that should get Microsoft employees worried about the fate of it all. I don't think any divide and conquer plot à la Microsoft is going to work. People out there are informed enough to let this happen again. So here we are with a not-designed-here web browser bound to be used by corporate suits out there for a long time.
As a side note, it makes the life of hackers much easier. Hack through the chrome code tree, and you can phish a ton of people then.
|  |  | Posted on 15-January-2020 13:05 | Category: anti-Microsoft | comment[0] | trackback[0] On nous annonce l'arrivée du ray tracing sur les smartphones. C'est, quand j'entends ça, pour moi, le début de la fin pour les jeux vidéos. Une "industrie" ne peut en effet pas baser son évolution sur le ray tracing pour exister. Car qu'est-ce que le ray tracing si ce n'est une légère variante de l'illumination d'une scène pour tenir compte de certaines lumières ou certains reflets. Si le rendu d'une scène devait être réaliste il devrait comprendre le relief, la sensation de vent, etc. autant de choses parfaitement inatteignables et pour quel objectif de toute façon ?
J'en conclut que c'est la fin de l'évolution des jeux vidéos.
|  |  | Posted on 04-January-2020 13:21 | Category: France | comment[0] | trackback[0] Build 4.5.0.85 of xlsgen fixes a problem related to moving auto-filters accordingly, if present, when inserting a row or a column. This works for all Excel files and avoids corrupting the file in question.
|  |  | Posted on 03-January-2020 07:20 | Category: xlsgen, Excel generator | comment[0] | trackback[0] Build 4.5.0.84 of xlsgen ships with the latest stable version of libPNG, a third party library that allows to read and write pictures in the PNG file format, which includes a number of security fixes. We are using libpng 1.6.37. libPNG is the only third party dependency of xlsgen and is used at a number of end points, for instance for PNG picture rendering purposes.
|  |  | Posted on 26-December-2019 12:35 | Category: xlsgen, Excel generator | comment[0] | trackback[0] Here is what we get in the tech news today, not even mainstream news sites : extrait : "Uninstall This Alleged Emirati Spy App From Your Phone Now. A messaging app called ToTok had scores of positive reviews, particularly from users in the UAE. US intelligent officials say it may be spying for that government instead. A social messaging app called ToTok has been surging in popularity around the world in recent weeks. If you happen to be one of the hundreds of thousands of users who downloaded it you should delete the app from your phone immediately. (...)" This is not a suggestion to act. This is a freaking ORDER to act. What went so wrong to urge such thing ? Well read the article for yourself : extrait : "it's likely a surveillance tool that can funnel data to the government of the United Arab Emirates. Google removed the app from Google Play on Thursday and Apple removed it from the App Store on Friday, but ToTok will keep working—and potentially spying—if it’s already on your phone." Holy caca, this must be some wacky thing going on, heh! heh ? extrait : "Patrick Wardle, a security researcher at Jamf specialized in Apple operating systems who formerly worked at the National Security Agency. "When you start analyzing an app like this you expect to find a backdoor or some zero day exploits,” Wardle says. “But the more I think about it, this is actually a more elegant approach, which is just leveraging completely legitimate functionality. What that gives you is a very cost effective, easy way to gain a ton of information on people."" A ton of information about people socializing together ? You mean, like facebook, twitter, etc. ? extrait : "The app had scores of positive reviews, particularly from users in the UAE who were excited about its lack of restrictions." Interestingly enough, the reason why the app got coverage and mouth virality is that in the UAE, this is an uncommon app. Most social apps are crippled to limit the freedom of expression of people using it. This app does not. In fact, any open society would welcome such thing. extrait : "Wardle found that the app was set up to run continuously in the background. It would have requested permission to access users' microphones, location data, photos, camera, calendar, contacts, and Siri integration. The app provided explanations for why this access was necessary: for example, that location data was needed to display information about local weather. The crucial thing to understand about ToTok is that it does exactly what it claims to do. " So this is a completely legit app in both grounds. What's the problem then ? extrait : ""The problem is where's the data going and who has access to it? And those are very, very hard questions to answer," Wardle says. "There's a large amount of plausible deniability, which is why it's a no-brainer approach to gain a high degree of surveillance. I'm not saying it's good or ethical, but if other countries aren't doing this, from their point of view they should."" Wait a minute, what is this security researcher saying. One, this app is legit and does what it explains to do. Second, every one is entitled to make such thing available for use. extrait : "For now, just make sure you've uninstalled ToTok, and tell others to do the same." See, uninstall it because you are being told to uninstall it, period. This is propaganda fed to tech sites which, sad as this is, are not any better than mainstream sites as soon as US national interest is at risk. Oddly enough, when US national interest, usually this benefits almost everybody in the world. |  |  | Posted on 23-December-2019 18:31 | Category: News | comment[0] | trackback[0] Build 4.5.0.83 of xlsgen adds support for database connections in table objects. Before this build, you could program and run SQL requests but the result would not become an actual Excel table object fetched with the database data. It would just be rows fetched with database data. Likewise if you created an actual Excel table object in xlsgen, you couldn't program and run an SQL request from it. This is put together in this build. You can now create an actual Excel table object, program and run an SQL request that will bound the table rows to the underlying database. And even better, xlsgen creates the database connection in the Excel file so you can reuse it elsewhere. Here is how it works, xlsgen::IXlsWorkbookPtr workbook; workbook = engine->New( L"output.xlsx" );
xlsgen::IXlsWorksheetPtr worksheet = workbook->AddWorksheet("SheetX");
xlsgen::IXlsTablePtr table = worksheet->NewTable[3][2];
table->DataSource->CommandTimeout = 40; table->DataSource->ConnectionTimeout = 120; #ifndef _WIN64 table->DataSource->ConnectionString = L"Provider=MSDASQL;Driver={Microsoft Access Driver (*.mdb)};Dbq=c:\\datasource\\db1.mdb;uid=;pwd=;"; #else table->DataSource->ConnectionString = L"Provider=MSDASQL;Driver={Microsoft Access Driver (*.mdb, *.accdb)};Dbq=c:\\datasource\\db1.mdb;uid=;pwd=;"; #endif
table->DataSource->SQLStatement = L"select * from Table1";
int nbrows = table->DataResults->RowCount; int nbcolumns = table->DataResults->Columns->Count;
_bstr_t column1 = table->DataResults->Columns->Item[1]->Name; _bstr_t column2 = table->DataResults->Columns->Item[2]->Name; _bstr_t column3 = table->DataResults->Columns->Item[3]->Name; _bstr_t column4 = table->DataResults->Columns->Item[4]->Name; _bstr_t column5 = table->DataResults->Columns->Item[5]->Name;
_bstr_t definedName = table->DataResults->Name;
xlsgen::IXlsStylePtr styleDate = worksheet->NewStyle(); styleDate->Format = L"dd/mm/yyyy";
xlsgen::IXlsStylePtr styleBackground = worksheet->NewStyle(); styleBackground->Pattern->BackgroundColor = 0xFF0000;
table->DataResults->Columns->Item[4]->DataStyle = styleBackground;
table->DataResults->Insert();
workbook->Close();
|  |  | Posted on 23-December-2019 10:19 | Category: xlsgen, Excel generator | comment[0] | trackback[0] Build 4.5.0.82 improves the handling of tables, particularly Excel table objects. In xlsgen, tables can be used in a variety of ways. They were initially introduced as a way to program and run SQL requests. Then, when business intelligence capabilities were introduced to xlsgen, tables were the underlying model for manipulating data (i.e. InferFromWorksheet()). Actual Excel tables were available, see tables for more information, but were not quite first-class citizen. For instance, what you couldn't do is for example add totals to them even though the table object model in xlsgen exposes subtotals beneath table breaks. The reality was that many of the table features were for "xlsgen" tables, not Excel table objects. In this build, total rows are not ignored anymore for Excel table objects. It works like this : xlsgen::IXlsTablePtr table = worksheet->Tables->Add();
table->DataSource->Range = L"R3C2:R6C6";
table->DataResults->Style->BuiltinStyle = xlsgen::tablestyle_light03;
// we have an "age" column in the table
xlsgen::IXlsTableBreaksPtr br = wksht->Tables->Item[1]->DataResults->Columns->ItemByName[L"age"]->Breaks;
// compute the average of "age"
br->Subtotals->Add( wksht->Tables->Item[1]->DataResults->Columns->ItemByName[L"age"] )->BuiltinFunction = xlsgen::subtotalfunc_average;
Also, table objects are now exposed in the automatic source code generator. It exposes table range definition, style and totals. |  |  | Posted on 23-December-2019 10:11 | Category: xlsgen, Excel generator | comment[0] | trackback[0] Build 4.5.0.81 of xlsgen improves how rotated text is handled in rendering scenarios. Particularly this is an edge case that is fixed, where the rotate angle is very high (more than 45 degrees) and the room for rotating the text is small (cell has tight width and height). It is a time to remind client and server applications using PDF output (one of our rendering outputs), that the quality of the rendering is slightly affected by the actual engine that is used. Notably,
- native PDF generation (vectors) [default engine]
C/C++ code |
// worksheet level workbook->PDFEngine = xlsgen::pdfengine_text; worksheet->Export->ExportAsPDF(L"output.pdf");
// workbook level workbook = engine->Open(L"input.xlsm", L"outputAllWorksheets.pdf"); workbook->PDFEngine = xlsgen::pdfengine_text; workbook->Close();
|
- GDI-based PDF generation (screen DPI resolution, usually 96 DPI)
C/C++ code |
// worksheet level workbook->PDFEngine = xlsgen::pdfengine_bitmap; worksheet->Export->ExportAsPDF(L"output.pdf");
// workbook level workbook = engine->Open(L"input.xlsm", L"outputAllWorksheets.pdf"); workbook->PDFEngine = xlsgen::pdfengine_bitmap; workbook->Close();
|
- GDI-based virtual PDF printing (printer DPI resolution, usually 600 DPI)
C/C++ code |
// worksheet level worksheet->PrintWith(L"PDFCreator", L""); // PDFCreator is a popular (and free) virtual PDF printer
// workbook level workbook = engine->Open(L"input.xlsm", L""); workbook->PrintWith(L"PDFCreator", L""); workbook->Close(); |
|  |  | Posted on 12-December-2019 08:43 | Category: xlsgen, Excel generator | comment[0] | trackback[0] Build 4.5.0.80 of xlsgen adds support for testing the parsing of formulas. Typically, writing a formula in a cell or to an object returns an exception if there is a problem, but it does not tell what the problem is. This parsing error is specifically the purpose of the introduced TryParseFormula method available at the workbook level. typedef enum { [helpstring("Formula parsing error, no error")] parseformula_noerror = 0, [helpstring("Formula parsing error, syntax error")] parseformula_syntaxerror = 1, [helpstring("Formula parsing error, out of memory")] parseformula_outofmemory = 2, [helpstring("Formula parsing error, not enough parameters")] parseformula_notenoughparams = 3, [helpstring("Formula parsing error, too many parameters")] parseformula_toomanyparams = 4, [helpstring("Formula parsing error, impaired parenthesis")] parseformula_impairedparenthesis = 5, [helpstring("Formula parsing error, impaired brace")] parseformula_impairedbrace = 6, [helpstring("Formula parsing error, division by zero")] parseformula_divisionbyzero = 7, [helpstring("Formula parsing error, function does not exist")] parseformula_functionnotexist = 8, [helpstring("Formula parsing error, wrong argument separator")] parseformula_wrongargumentseparator = 9
} enumParseFormulaError;
It works like this : C/C++ code | xlsgen::enumParseFormulaError error = workbook->TryParseFormula(L"=SUMXYZ(5;3;A2)"); // returns parseformula_functionnotexist because SUMXYZ() does not exist
|
|  |  | Posted on 05-December-2019 23:19 | Category: xlsgen, Excel generator | comment[0] | trackback[0] Build 4.5.0.79 of xlsgen is a fix pack. It has the following :
- pivot tables now use localized strings. For instance, "Grand Total" is no longer hardcoded. It follows the current formula language (which you can set from the corresponding property in the workbook object, and which is one of EN/FR/DE/IT/PO/ES).
- fixed an edge case in rendering cells when the content has multiple lines separated by carriage returns, but no room vertically to show everything and the wrap flag set to off. Excel in this case ignores carriage returns. This is what xlsgen does now.
|  |  | Posted on 03-December-2019 14:41 | Category: xlsgen, Excel generator | comment[0] | trackback[0] Build 4.5.0.78 xlsgen follows previous build (4.5.0.77) related to pivot table UI settings in Excel.
This build writes back the UI settings listed below, including existing pivot tables, i.e. pivot tables that were not created using xlsgen.
Also the automatic source code generator now generates the corresponding source code for those.
Pivot table UI settings (in Excel) : - EnablePivotTableUI (yes/no) : when set to no, the entire user interface for manipulating pivot tables is hidden - ShowDetails (yes/no) : when set to no, non-aggregate values do not appear - EnableFieldListUI (yes/no) : when set to no, the field list view is hidden - EnableFieldPropertiesUI (yes/no) : when set to no, field properties dialog does not appear (looks like a bug for the end user because Excel does not gray out the menu) - ShowFieldHeaders (yes/no) : when set to no, hides field elements
And also, in pivot table data source options, - RefreshEnabled (yes/no)
|  |  | Posted on 02-December-2019 12:06 | Category: xlsgen, Excel generator | comment[0] | trackback[0] Build 4.5.0.77 of xlsgen adds a number of user interface properties to the object model, for pivot tables. Those properties affect the experience of viewing or working with pivot tables in Excel. They are : in pivot table options- EnablePivotTableUI (yes/no) : when set to no, the entire user interface for manipulating pivot tables is hidden - ShowDetails (yes/no) : when set to no, non-aggregate values do not appear - EnableFieldListUI (yes/no) : when set to no, the field list view is hidden - EnableFieldPropertiesUI (yes/no) : when set to no, field properties dialog does not appear (looks like a bug for the end user because Excel does not gray out the menu) - ShowFieldHeaders (yes/no) : when set to no, hides field elements And also, in pivot table data source options, - RefreshEnabled (yes/no) : when set to no, makes it impossible for the user to refresh the data source associated to the pivot table |  |  | Posted on 28-November-2019 16:11 | Category: xlsgen, Excel generator | comment[0] | trackback[0] Build 4.5.0.76 of xlsgen follows previous build 4.5.0.75 and adds another table property, DataRange, in order to differentiate : - data rows : DataRange property - header + data + totals : Range property Both are read and write properties. |  |  | Posted on 28-November-2019 16:04 | Category: xlsgen, Excel generator | comment[0] | trackback[0] Build 4.5.0.75 of xlsgen allows to edit ranges of existing tables. This applies to XLSX (and their variants) and XLSB files. To obtain the cell range, C++ code |
_bstr_t range = worksheet->Tables->ItemByName[L"Table1"]->DataSource->Range; // returns a cell range of the form RxCx:RyCy
|
To change it, C++ code |
worksheet->Tables->ItemByName[L"Table1"]->DataSource->Range = L"R1C1:R15C10";
|
Alternatively, if the scenario knows in advance that all it needs is to add a new row to the table, C++ code |
worksheet->Tables->ItemByName[L"Table1"]->DataSource->AddRow();
|
|  |  | Posted on 28-November-2019 09:10 | Category: xlsgen, Excel generator | comment[0] | trackback[0] <-- previous page
|
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)
|