Deutsch
Forum

StringTable (Ressource)

 

H.Brill
Hallo,
hab da ne Frage bezügl. Stringtable. Kann ich in die Profrun32.exe beliebig viele
Strings via Reshacker dazu machen oder gibt es da ne magische Grenze (65535) ?
Und warum sind die Bereiche von 65413 bis 65423 frei gelassen worden ?
So kann man halt schön mit ExtString$() auslesen.

Vielleicht kann Roland sich dazu äußern.
 
Benutze XPROFAN X3 + FREEPROFAN
Wir sind die XProfaner.
Sie werden von uns assimiliert.
Widerstand ist zwecklos!
Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.

Was die Borg können, können wir schon lange.
21.08.2007  
 




Michael
Wodrich
Die Ressourcen kommen nicht alle von RGH, da spielt natürlich auch Delphi eine kleine Rolle.
Ressourcen legt man immer in Gruppen an. Die Nummerierung wird hierdurch beeinflußt.
Außerdem sind Stringtables schon von Hause aus in Gruppen zu je 16 Strings unterteilt. Bei hexadezimaler Darstellung der Stringnummer ist die letzte Ziffernstelle also immer eine Stringgruppe (0..F).

Stringtables sind unter Beachtung der 16er-Gruppierung beliebig viele möglich.

Ich habe z.B. in der MwDate.DLL Lücken gelassen für die Monate und Wochennamen, weil diese immer am Tabellenbeginn stehen sollten.
Schau Dir diese DLL einfach mal mit einem Ressourcen-Editor an.

Schöne Grüße
Michael Wodrich
 
Programmieren, das spannendste Detektivspiel der Welt.
21.08.2007  
 




H.Brill
Danke für die Infos.
Also die Gruppen in der Runtime sind ja von 4089 bis 4096. Also könnte ich dann
eine Gruppe 4097 mit 16 Strings erstellen usw. und mit 65535 als Stringnummer
für ExtString$() fortfahren ? Oder ist es besser davor anzufangen und die Nummern
bis 65408 (z.B. 65300 - 65408) zu verwenden ?

PS: Ich sehe gerade, du fängst mit Gruppe 20 und 304 an und nicht mit 1, so wie
man auch anfängt zu zählen.
 
Benutze XPROFAN X3 + FREEPROFAN
Wir sind die XProfaner.
Sie werden von uns assimiliert.
Widerstand ist zwecklos!
Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.

Was die Borg können, können wir schon lange.
21.08.2007  
 




Michael
Wodrich
Ich habe noch mal nachgeblättert.

Die StringID ist eine 16-Bit Integer. Also ist bei 65535 Schluß. Bei mir liegen die Werte circa bei 300 bis 700.

Schöne Grüße
Michael Wodrich
 
Programmieren, das spannendste Detektivspiel der Welt.
21.08.2007  
 




RGH
Hallo, alle String-Ressourcen in der Runtime (und auch im Interpreter) stammen von Delphi und können ignoriert werden. (Wer Bytes sparen will, kann sie sogar löschen.)

Es hindert Dich niemand, mit den eigenen String-Ressourcen einfach bei Nummer 0 oder 1 anzufangen.

Gruß
Roland
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
21.08.2007  
 




Michael
Wodrich
Hier ist es deutlicher zu sehen. Ich wollte bei 300 anfangen und das verschob sich dann in der Tabelle. Also habe ich bei 304 angefangen. Die 20 und höher da habe ich keinen Einfluß drauf. Das macht der Ressourcen-Compiler. Ich glaube die Zahl ist auch unwichtig.

#define mwMonEN01 304
#define mwMonEN02 305
#define mwMonEN03 306
#define mwMonEN04 307
#define mwMonEN05 308
#define mwMonEN06 309
#define mwMonEN07 310
#define mwMonEN08 311
#define mwMonEN09 312
#define mwMonEN10 313
#define mwMonEN11 314
#define mwMonEN12 315
#define mwMonDE01 320
#define mwMonDE02 321
#define mwMonDE03 322
#define mwMonDE04 323
#define mwMonDE05 324
#define mwMonDE06 325
#define mwMonDE07 326
#define mwMonDE08 327
#define mwMonDE09 328
#define mwMonDE10 329
#define mwMonDE11 330
#define mwMonDE12 331
#define mwMonFR01 336
#define mwMonFR02 337
#define mwMonFR03 338
#define mwMonFR04 339
#define mwMonFR05 340
#define mwMonFR06 341
#define mwMonFR07 342
#define mwMonFR08 343
#define mwMonFR09 344
#define mwMonFR10 345
#define mwMonFR11 346
#define mwMonFR12 347
#define mwMonES01 352
#define mwMonES02 353
#define mwMonES03 354
#define mwMonES04 355
#define mwMonES05 356
#define mwMonES06 357
#define mwMonES07 358
#define mwMonES08 359
#define mwMonES09 360
#define mwMonES10 361
#define mwMonES11 362
#define mwMonES12 363
#define mwMonPO01 368
#define mwMonPO02 369
#define mwMonPO03 370
#define mwMonPO04 371
#define mwMonPO05 372
#define mwMonPO06 373
#define mwMonPO07 374
#define mwMonPO08 375
#define mwMonPO09 376
#define mwMonPO10 377
#define mwMonPO11 378
#define mwMonPO12 379
#define mwMonIT01 384
#define mwMonIT02 385
#define mwMonIT03 386
#define mwMonIT04 387
#define mwMonIT05 388
#define mwMonIT06 389
#define mwMonIT07 390
#define mwMonIT08 391
#define mwMonIT09 392
#define mwMonIT10 393
#define mwMonIT11 394
#define mwMonIT12 395
#define mwMonDK01 400
#define mwMonDK02 401
#define mwMonDK03 402
#define mwMonDK04 403
#define mwMonDK05 404
#define mwMonDK06 405
#define mwMonDK07 406
#define mwMonDK08 407
#define mwMonDK09 408
#define mwMonDK10 409
#define mwMonDK11 410
#define mwMonDK12 411
#define mwMonNO01 416
#define mwMonNO02 417
#define mwMonNO03 418
#define mwMonNO04 419
#define mwMonNO05 420
#define mwMonNO06 421
#define mwMonNO07 422
#define mwMonNO08 423
#define mwMonNO09 424
#define mwMonNO10 425
#define mwMonNO11 426
#define mwMonNO12 427
#define mwMonSE01 432
#define mwMonSE02 433
#define mwMonSE03 434
#define mwMonSE04 435
#define mwMonSE05 436
#define mwMonSE06 437
#define mwMonSE07 438
#define mwMonSE08 439
#define mwMonSE09 440
#define mwMonSE10 441
#define mwMonSE11 442
#define mwMonSE12 443
#define mwMonFI01 448
#define mwMonFI02 449
#define mwMonFI03 450
#define mwMonFI04 451
#define mwMonFI05 452
#define mwMonFI06 453
#define mwMonFI07 454
#define mwMonFI08 455
#define mwMonFI09 456
#define mwMonFI10 457
#define mwMonFI11 458
#define mwMonFI12 459
#define mwMonPL01 464
#define mwMonPL02 465
#define mwMonPL03 466
#define mwMonPL04 467
#define mwMonPL05 468
#define mwMonPL06 469
#define mwMonPL07 470
#define mwMonPL08 471
#define mwMonPL09 472
#define mwMonPL10 473
#define mwMonPL11 474
#define mwMonPL12 475
#define mwWkEN0 480
#define mwWkEN1 481
#define mwWkEN2 482
#define mwWkEN3 483
#define mwWkEN4 484
#define mwWkEN5 485
#define mwWkEN6 486
#define mwWkDE0 496
#define mwWkDE1 497
#define mwWkDE2 498
#define mwWkDE3 499
#define mwWkDE4 500
#define mwWkDE5 501
#define mwWkDE6 502
#define mwWkFR0 512
#define mwWkFR1 513
#define mwWkFR2 514
#define mwWkFR3 515
#define mwWkFR4 516
#define mwWkFR5 517
#define mwWkFR6 518
#define mwWkES0 528
#define mwWkES1 529
#define mwWkES2 530
#define mwWkES3 531
#define mwWkES4 532
#define mwWkES5 533
#define mwWkES6 534
#define mwWkPO0 544
#define mwWkPO1 545
#define mwWkPO2 546
#define mwWkPO3 547
#define mwWkPO4 548
#define mwWkPO5 549
#define mwWkPO6 550
#define mwWkIT0 560
#define mwWkIT1 561
#define mwWkIT2 562
#define mwWkIT3 563
#define mwWkIT4 564
#define mwWkIT5 565
#define mwWkIT6 566
#define mwWkDK0 576
#define mwWkDK1 577
#define mwWkDK2 578
#define mwWkDK3 579
#define mwWkDK4 580
#define mwWkDK5 581
#define mwWkDK6 582
#define mwWkNO0 592
#define mwWkNO1 593
#define mwWkNO2 594
#define mwWkNO3 595
#define mwWkNO4 596
#define mwWkNO5 597
#define mwWkNO6 598
#define mwWkSE0 608
#define mwWkSE1 609
#define mwWkSE2 610
#define mwWkSE3 611
#define mwWkSE4 612
#define mwWkSE5 613
#define mwWkSE6 614
#define mwWkFI0 624
#define mwWkFI1 625
#define mwWkFI2 626
#define mwWkFI3 627
#define mwWkFI4 628
#define mwWkFI5 629
#define mwWkFI6 630
#define mwWkPL0 640
#define mwWkPL1 641
#define mwWkPL2 642
#define mwWkPL3 643
#define mwWkPL4 644
#define mwWkPL5 645
#define mwWkPL6 646
 
Programmieren, das spannendste Detektivspiel der Welt.
21.08.2007  
 




Michael
Wodrich
An den Werten ist deutlich zu sehen: Jede Gruppe fängt mit einer durch 16 teilbaren Zahl an.

Wenn Du den Windows-Taschenrechner auf wissenschaftlich einstellst, kannst Du ganz einfach Dezimal und Hexadezimal umrechnen.

Schöne Grüße
Michael Wodrich

Die 300 kam dadurch zustande das ich mehrere Ressourcen-Dateien kombinieren wollte (Kalender- und Uhr-Icons). Das habe ich aus Platzgründen aber wieder verworfen.

Die erste Ressource (0 oder 1) sollte aber immer das Programm-Icon sein.

Schöne Grüße
Michael Wodrich
 
Programmieren, das spannendste Detektivspiel der Welt.
21.08.2007  
 




H.Brill
Danke an Michael und Roland,
jetzt weiß ich doch schon einiges mehr.
 
Benutze XPROFAN X3 + FREEPROFAN
Wir sind die XProfaner.
Sie werden von uns assimiliert.
Widerstand ist zwecklos!
Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.

Was die Borg können, können wir schon lange.
22.08.2007  
 



Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

848 Betrachtungen

Unbenanntvor 0 min.
H.Brill26.10.2023
Georg Teles07.07.2021
Stephan Sonneborn28.09.2020
Christof Neuß13.09.2018
Mehr...

Themeninformationen

Dieses Thema hat 3 Teilnehmer:

Michael Wodrich (4x)
H.Brill (3x)
RGH (1x)


Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie