NO

Author Topic: Capture Tab data  (Read 2285 times)

Offline John Z

  • Member
  • *
  • Posts: 385
Re: Capture Tab data
« Reply #15 on: July 09, 2021, 05:13:01 pm »
Well you snooze you lose  :) :) :)

No - just decide I'll pad it out and use a tab too.

Here is an example output from debug of Display.prj
I'll post a new dll for testing after a bit of clean-up.

John Z

Timo - I did use the base code from procedure CopyList2File, although modified to meet my needs.  I will mention you as the original author.   Thank you for the assist!!

Offline Grincheux

  • Member
  • *
  • Posts: 351
  • Never be pleased, always improve
    • Arachne
Re: Capture Tab data
« Reply #16 on: July 09, 2021, 05:16:18 pm »
You can use tab '\t' or ';' or '|' it is not a problem. They are classic separators for CSV files too.
For me the most important tabs when debugging are "Memory", "Registers", "GLOBAL" and "LOCAL"
If you need to use a dialogbox to select the tab we want, it is not a problem because when debugging me have time.
If this solutions is easy for you do not hesitate.
A problem I have found is with the dialog box that say to click on a tab. When I click on the tab the dialog box disappear and if the sound is off that is a problem. Your dialog box always [size=78%]must be VISIBLE and at the FOREGROUND.[/size]

If you had nothing to do for the week end, I have found some work... ;D ;D
-------------------------
Kenavo / Bye

What disturbs me the most is not dying but not knowing what I will do after.

Offline Grincheux

  • Member
  • *
  • Posts: 351
  • Never be pleased, always improve
    • Arachne
Re: Capture Tab data
« Reply #17 on: July 09, 2021, 05:19:10 pm »
Quote
Well you snooze you lose
I dont understand, even using Google Translate.

Your capture is perfect for the result.
That's the kind of result that is exepcted.

GOOD WORK
-------------------------
Kenavo / Bye

What disturbs me the most is not dying but not knowing what I will do after.

Offline Grincheux

  • Member
  • *
  • Posts: 351
  • Never be pleased, always improve
    • Arachne
Re: Capture Tab data
« Reply #18 on: July 09, 2021, 05:46:53 pm »
Quote
which column separator is preferred TAB or COMMA ?


Don't use COMMA
-------------------------
Kenavo / Bye

What disturbs me the most is not dying but not knowing what I will do after.

Offline John Z

  • Member
  • *
  • Posts: 385
Re: Capture Tab data
« Reply #19 on: July 09, 2021, 05:48:19 pm »
 :) First things first

"If you snooze you lose."  Loose translation of idiom - if you are sleeping (or busy with something else), events still happen, but you have no input to them,  or if not responding fast enough then decisions made before you have chance to make input. Si vous dormez, vous perdez.

No plan to use a dialog box you just click within the Tab window you want to save, then use File - Save Tab data.



John Z

OK - no comma addition.

Offline John Z

  • Member
  • *
  • Posts: 385
Re: Capture Tab data
« Reply #20 on: July 09, 2021, 06:09:22 pm »
For me the most important tabs when debugging are "Memory", "Registers", "GLOBAL" and "LOCAL"

The only tab it won't support in the next test release is "Memory"  This is a custom class "PC_Memory" and I'm not sure how or if even possible to access yet.


John Z

Offline Grincheux

  • Member
  • *
  • Posts: 351
  • Never be pleased, always improve
    • Arachne
Re: Capture Tab data
« Reply #21 on: July 09, 2021, 06:11:15 pm »
Rather than text you could build a bmp file it is easier for you. That's right for all tabs.
-------------------------
Kenavo / Bye

What disturbs me the most is not dying but not knowing what I will do after.

Offline John Z

  • Member
  • *
  • Posts: 385
Re: Capture Tab data
« Reply #22 on: July 12, 2021, 05:08:26 pm »
Capture.dll

Purpose: Save text from the selected IDE tab 'Project', 'Find in files', 'Output',
 or 'Debug' in a text file under the current project directory. Text filename
 will always be output_yyyymmdd_hhmmss.  Example: output_20210707_085753.txt
 
How to use:
Load and activate the Capture.dll utility
SHA256: FE1137C6A9E995AAB1D486194029E91BC0C4A055BA5E313DDBD78692AD0CAB03

Generate output from any tab mentioned above.

to save the tab data
CLICK once in the tab window to save
then click File, Save Tab data - that's it

The file will be in the project directory.

Note: Sadly after much work listview groups are still not automatically expanded.  To get the list group data in the output file they must be expanded manually before clicking 'Save Tab data'.  Maybe someone  else can get that but I found commctrl.h seems incomplete for listview capabilities e.g. no ListView_GetGroupInfo and others.  In addition on my system, or my lack of knowledge, I could only get _WIN32_WINNT items <  0x501 so higher version items weren't available. For example none of these became available
Code: [Select]
#if (_WIN32_WINNT >= 0x501)
    int iGroupId;
    UINT cColumns;
    PUINT puColumns;
#endif /* _WIN32_WINNT >= 0x501 */
#if (_WIN32_WINNT >= 0x0600)
    int *piColFmt;
    int iGroup;
#endif /* _WIN32_WINNT >= 0x0600 */
-------------- 
   
It does work as a useful add-in for saving tab data, but could be better. 
I've included the project source code too.

John Z

Offline Grincheux

  • Member
  • *
  • Posts: 351
  • Never be pleased, always improve
    • Arachne
Re: Capture Tab data
« Reply #23 on: July 13, 2021, 07:43:41 pm »
Quote
Name     Value                               Comments                                                                                 
RAX      00007FF6758DE98C                                                                                                             
RBX      0000000000000001                                                                                                             
RCX      E586ACAEA40F0000                                                                                                             
RDX      0000000080006010                                                                                                             
RSP      000000E91DB6EB00                                                                                                             
RBP      0000000000000000                                                                                                             
RSI      0000000000000000                                                                                                             
RDI      0000000080006010                                                                                                             
R8       000000E91DB6F0A8                                                                                                             
R9       000000E91DB6EB20                                                                                                             
R10      0000000000000000                                                                                                             
R11      0000000000000000                                                                                                             
R12      0000000000000000                                                                                                             
R13      0000000000000111                                                                                                             
R14      0000000000000000                                                                                                             
R15      0000000000000000                                                                                                             
RIP      00007FF6758C23F7                                                                                                             
EFLAGS   00010300                            CF=0, PF=0, AF=0, ZF=0, SF=0, OF=0, DF=0, IF=1                                           
XMM0     0000000000000000:0000000000000000                                                                                            
XMM1     0000000000000000:0000000000000000                                                                                            
XMM2     0000000000000000:0000000000000000                                                                                            
XMM3     0000000000000000:0000000000000000                                                                                            
XMM4     0000000000000000:0000000000000000                                                                                            
XMM5     0000000000000000:0000000000000000                                                                                            
XMM6     0000000000000000:0000000000000000                                                                                            
XMM7     0000000000000000:0000000000000000                                                                                            
XMM8     0000000000000000:0000000000000000                                                                                            
XMM9     0000000000000000:0000000000000000                                                                                            
XMM10    0000000000000000:0000000000000000                                                                                            
XMM11    0000000000000000:0000000000000000                                                                                            
XMM12    0000000000000000:0000000000000000                                                                                            
XMM13    0000000000000000:0000000000000000                                                                                            
XMM14    0000000000000000:0000000000000000                                                                                            
XMM15    0000000000000000:0000000000000000                                                                                            
MXCSR    00001F80                            IE=0, DE=0, ZE=0, OE=0, UE=0, PE=0, IM=1, DM=1, ZM=1, OM=1, UM=1, PM=1, RC=0, DAZ=0, FTZ=0


GOOD ok for me


-------------------------
Kenavo / Bye

What disturbs me the most is not dying but not knowing what I will do after.

Offline John Z

  • Member
  • *
  • Posts: 385
Re: Capture Tab data
« Reply #24 on: July 14, 2021, 01:05:55 pm »
 :) Turned out fairly useful.  Eventually I'll be able to expand those groups.  For now it may even be better to NOT auto-expand.  Looking at Debug of your Display.prj there are 155 groups under one of the debug tabs! 


John

P.S.
Artificial constraints are 20 columns of data, each data field < 260 characters.