Toon posts:

.exe file voor dos aanpassen

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb van een leverancier een aantal dos-progjes gekregen die ik mag aanpassen als dat nodig is. Nu moet ik steeds variabelen invullen als ik het progje start en wil dit dus vastzetten.

Nu vraag ik mij af hoe ik het .exe bestandje kan importeren zodat het weer leesbare text is en welk progje ik daar voor nodig kan hebben.

Nu niet gaan denken dat ik illegale dingen aan het doen ben, want ik heb de toestemming :D

  • Emmeau
  • Registratie: Mei 2003
  • Niet online

Emmeau

All your UNIX are belong to us

disssamble? vergeet het maar.
kijk eens naar batchfiles, die zijn hier voor bedoeld.

If you choose to criticise you choose your enemies


Verwijderd

ligt eraan, beetje geluk kan je de strings aanpassen in ultraedit oid,
anders 's zoeken op disassembler.

Wat bedoel je eigenlijk met importeren?
Waar wil je het naartoe importeren?

Kan die leverancier trouwens niet de source code leveren?
Als je het toch mag aanpassen.

[ Voor 52% gewijzigd door Verwijderd op 09-08-2003 13:08 ]


Verwijderd

Topicstarter
Emmeau schreef op 09 August 2003 @ 13:05:
disssamble? vergeet het maar.
kijk eens naar batchfiles, die zijn hier voor bedoeld.
Je kunt het dus niet importeren zeg jij....... is daar echt geen mogelijkheid toe ??

  • Klippy
  • Registratie: Oktober 2000
  • Laatst online: 31-03 23:32

Klippy

Still Game

De source kan je iig niet aanpassen als je dat bedoelt.

Je kan misscihen beter een programma proberen te maken dat het originele programma opstart en vanzelf invoer geeft.

Steam | SXQncyBhbGwgZ29vZCwgbWFuISDwn5iO


  • Emmeau
  • Registratie: Mei 2003
  • Niet online

Emmeau

All your UNIX are belong to us

alles is mogelijk, maar je wilt het niet, tenzij je erop kicked om met x86 assembly instructions aan de slag te gaan, denk het niet.
er zijn vast andere (betere) methoden voor je probleem

If you choose to criticise you choose your enemies


Verwijderd

Topicstarter
Zal ik mijn probleem anders een weergeven ?

Verwijderd

Verwijderd schreef op 09 augustus 2003 @ 13:09:
Zal ik mijn probleem anders een weergeven ?
Doe dat eens :)

Verwijderd

Topicstarter
Ik heb een progje dat data afvangt dat naar COM1 wordt gestuurd en in een bestand zet. Als ik dit progje opstart wordt mij gevraagd om de COM 1 of 2 aante geven doormiddel van een 1 en een 2, verder de BaudRate moet ik aangeven........ 9600 en dan de bestandsnaam. Als ik dit gedaan heb runt het progje vanzelf en om het te stoppen druk ik op een toets en kom weer in de prompt terecht.

Wat ik wil is dat dit progje in een keer opstart zonder dat ik al die gegevens in moet vullen. Tevens zou ik ook willen dat iedere dag of week een ander bestand aangemaakt wordt maar dat is een ander probleem.

Verwijderd

En je kan geen alternatief vinden om die compoort uit te lezen, zou toch een en ander op te vinden moeten zijn.
Het zou zelfs via de standaard input/output moeten kunnen met con: etc. (moet ik 's ff een oud dos-boek opzoeken).

Maar kan die fabrikant/leverancier, geen kleine uitbreiding bouwen op die software, zodat je het met bv. parameters kan aansturen?

Verwijderd

Topicstarter
Nee ik hbe nog niets kunnen vinden al alternatief en op Com en Dos zoeken op google krijg ik teveel rommel. De leverancier heeft het ook weer laten maken neem ik aan en zal dus zelf geen support kunnen leveren, maar ik zal eens informeren over hoe moedwillig hi wil zijn :)

Als je eens in je dosboek zou willen kijken graag, en als je nog iets tegenkomt wat een beetje op mijn idee lijkt...... please tell me !!

Thnx

  • Emmeau
  • Registratie: Mei 2003
  • Niet online

Emmeau

All your UNIX are belong to us

keystroke proggie?

If you choose to criticise you choose your enemies


  • Dido
  • Registratie: Maart 2002
  • Laatst online: 16:30

Dido

heforshe

Kun je via de commandline je parameters niet meegeven?

Dus iets als C:\>PROGNAM parm1 parm2 parm3

Dat kun je dan in een batch-bestandje zetten, of zelfs in een PIFje

Wat betekent mijn avatar?


Verwijderd

Zou ook moeten kunne, wel als TSR, we hebben het over DOS.

  • Rataplan
  • Registratie: Oktober 2001
  • Niet online

Rataplan

per aspera ad astra

Als je altijd hetzelfde moet invullen, maak je een tekstbestand met de letterlijke tekst die je moet invoeren:
code:
1
2
3
1
9600
C:\blaat.bla

En vervolgens loop je dat bestand naar de invoer van je exe:
code:
1
proggel.exe < invoer.txt

Eventueel zet je die instructie in een textbestand dat je bijvoorbeeld 'uitvoeren.bat' doopt, en klaar is klara.

Voor het maken van files op datum zou je uitvoeren.bat als volgt kunnen herschrijven:
code:
1
2
3
4
copy invoer.txt temp.txt
echo "resultaat van %date%.txt" >> temp.txt
proggel.exe < temp.txt
del temp.txt

...waarbij ik er ff vanuit ga dat die datum de laatste regel van de invoer is; en dat je dos proggel met lange bestandsnamen (en de kwootjes eromheen!) overweg kan.

[ Voor 5% gewijzigd door Rataplan op 09-08-2003 13:44 ]


Journalism is printing what someone else does not want printed; everything else is public relations.


Verwijderd

Rataplan schreef op 09 August 2003 @ 13:43:
.....
[/code]
...waarbij ik er ff vanuit ga dat die datum de laatste regel van de invoer is; en dat je dos proggel met lange bestandsnamen overweg kan.
I shet proberen waard, moet het proggie wel de standaard input/output ondersteunen, maar ik zou het idd 's ff uit proberen op deze manier.
(waarom kwam ik zelf hier niet op 8)7 , )

  • hufkes
  • Registratie: Maart 2000
  • Laatst online: 30-03 19:56

hufkes

nee, daar staat niet hufter!

het probleem dat hierbij opduikelt staat al ergens in zijn tekst vermeld, hij moet namelijk weer op een toets drukken als hij klaar is om het programma te beeindigen, en op deze manier accepteert het programma volgens mij geen keystrokes meer omdat je het invoerapparaat omlegt naar de tekens uit het bestand.

je kunt het overigens ook met het commando echo proberen, maar dat geeft volgens mij dezelfde problemen.

[ Voor 15% gewijzigd door hufkes op 09-08-2003 13:50 ]

Onderstaande signature is al >20jr oud ***hoe dan***
---
Het internet is een veelbelovend medium
....dat maar heel weinig van zijn beloftes nakomt.
Wat weg is... raak je nooit meer kwijt :P


  • Rataplan
  • Registratie: Oktober 2001
  • Niet online

Rataplan

per aspera ad astra

hufkes schreef op 09 augustus 2003 @ 13:48:
het probleem dat hierbij opduikelt staat al ergens in zijn tekst vermeld, hij moet namelijk weer op een toets drukken als hij klaar is om het programma te beeindigen, en op deze manier accepteert het programma volgens mij geen keystrokes meer omdat je het invoerapparaat omlegt naar de tekens uit het bestand.
Dat hangt er volledig vanaf hoe het programma die toets detecteert. Als die ook uit de standaard invoer komt: extra regel aan invoer.txt toevoegen. Zoniet: geen probleem :)

Trouwens, je kan redirection ook nesten:
code:
1
proggel.exe < invoer.txt < con

of zo zou prima kunnen werken. Laat de ts eerst maar eens wat gaan proberen, dan horen we wel wat er niet werkt.

[ Voor 16% gewijzigd door Rataplan op 09-08-2003 13:55 ]


Journalism is printing what someone else does not want printed; everything else is public relations.


  • hufkes
  • Registratie: Maart 2000
  • Laatst online: 30-03 19:56

hufkes

nee, daar staat niet hufter!

Rataplan schreef op 09 August 2003 @ 13:51:
[...]
Dat hangt er volledig vanaf hoe het programma die toets detecteert. Als die ook uit de standaard invoer komt: extra regel aan invoer.txt toevoegen. Zoniet: geen probleem :)

Trouwens, je kan redirection ook nesten:
code:
1
proggel.exe < invoer.txt < con

of zo zou prima kunnen werken. Laat de ts eerst maar eens wat gaan proberen, dan horen we wel wat er niet werkt.
aha, dat heb ik dus nooit geweten van dat nesten...sorry, mijn dosperikelen zijn al weer lang geleden 8)7

Onderstaande signature is al >20jr oud ***hoe dan***
---
Het internet is een veelbelovend medium
....dat maar heel weinig van zijn beloftes nakomt.
Wat weg is... raak je nooit meer kwijt :P


  • Rataplan
  • Registratie: Oktober 2001
  • Niet online

Rataplan

per aspera ad astra

hufkes schreef op 09 augustus 2003 @ 14:02:
aha, dat heb ik dus nooit geweten van dat nesten...sorry, mijn dosperikelen zijn al weer lang geleden 8)7
Voor mij ook; ik hoop dan ook van harte dat ik gelijk heb 7(8)7


Journalism is printing what someone else does not want printed; everything else is public relations.


Verwijderd

Topicstarter
Nou ik ben net even bezifg geweest na een heerlijke douche :) maar het settings.txt dat werkt idd, alleen het progje wordt dus meteen gestopt....... het heeft volgens jullie dus te maken met het detecteren van de key ?

Thnx mensen.....in special Rataplan !

EDIT !!!

Ik zie dat de baudrate niet wordt geset maar de baudrate wordt op de plaats van de file-name neergezet....... MOet ik iets in die txt-file toepassen ?

^^^^^^^^^^^^

OPGELOST...... nu het stop-probleem nog

De settings file blijft maar geven denk ik dus daar moet een stop op na de bestands-naam....... HALT ofzo werkt niet..... wat doe ik ?? (ja een DOS-boek kopen binnenkort ;))

[ Voor 48% gewijzigd door Verwijderd op 09-08-2003 14:50 ]


  • Rataplan
  • Registratie: Oktober 2001
  • Niet online

Rataplan

per aspera ad astra

Verwijderd schreef op 09 August 2003 @ 14:41:
Nou ik ben net even bezifg geweest na een heerlijke douche :) maar het settings.txt dat werkt idd, alleen het progje wordt dus meteen gestopt....... het heeft volgens jullie dus te maken met het detecteren van de key ?

Thnx mensen.....in special Rataplan !

EDIT !!!

Ik zie dat de baudrate niet wordt geset maar de baudrate wordt op de plaats van de file-name neergezet....... MOet ik iets in die txt-file toepassen ?
De txtfile wordt gebruikt om toetsaanslagen te emuleren. Als je dus extra enters opneemt of invoer in een andere volgorde in je txt zet dan hoe je het aan het programma zou vertellen, werkt het niet :)

Tik in notepad (of waar je die txt ook mee aanmaakt) dus *exact* hetzelfde in als wat je in het programma zou intikken.
Snel editen, huh :( ;)
De settings file blijft maar geven denk ik dus daar moet een stop op na de bestands-naam.......
Geen idee wat je hier bedoelt. Nog 'ns proberen, graag :)

Ik lees het wel als ik onder de douche vandaan kom _/-\o_

[ Voor 15% gewijzigd door Rataplan op 09-08-2003 14:56 ]


Journalism is printing what someone else does not want printed; everything else is public relations.


Verwijderd

Topicstarter
Hihi dat van die enters had ik al snel genoeg in de gaten :) MAAR TOCH THNX !

Als ik het settings-bestandje gebruik dus met alleen 3 regels text waarin

1
9600
blaat.bla

Dan werkt dit goed alleen het progje wordt meteen afgesloten dus de "key" wordt al aangeraakt als het ware.......

  • Rataplan
  • Registratie: Oktober 2001
  • Niet online

Rataplan

per aspera ad astra

Verwijderd schreef op 09 augustus 2003 @ 14:58:
(...) alleen het progje wordt meteen afgesloten dus de "key" wordt al aangeraakt als het ware.......
Staat er misschien een extra enter onder? Let wel: blaat.bla is de laatste regel, dus die moet je *niet* afsluiten met een enter: de end-of-file-code neemt diens functie waar. Gebruik je trouwens de variant met < con?

[ Voor 21% gewijzigd door Rataplan op 09-08-2003 15:27 ]


Journalism is printing what someone else does not want printed; everything else is public relations.


Verwijderd

Topicstarter
Er staat geen enter meer onder blaat.bla en als ik < con gebruik vraagt hij weer alles handmatig in te vullen. Of ik doe dara iets fout of het kan in dit geval niet ?

  • purge
  • Registratie: November 2000
  • Niet online
Probeer het settings bestandje eens in twee regels te schrijven, dus

19600
blaat.bla

Ik krijg het idee dat je bij het aangeven van de com poort niet op enter hoeft te drukken maar dat, na de 1 of 2, direct de baudrate word gevraagd.

  • Rataplan
  • Registratie: Oktober 2001
  • Niet online

Rataplan

per aspera ad astra

Verwijderd schreef op 09 August 2003 @ 15:40:
Er staat geen enter meer onder blaat.bla en als ik < con gebruik vraagt hij weer alles handmatig in te vullen. Of ik doe dara iets fout of het kan in dit geval niet ?
Er mag dus ook geen enter meer na blaat.bla staan, dwz de "a" van bla moet het laatste teken van het bestand zijn! Kan je prog en text anders ff posten? Dat lult wat makkelijker. Ik ga nu trouwens eerst ff m'n server van drie extra fans voorzien. Tot over een uurtje :)


Journalism is printing what someone else does not want printed; everything else is public relations.


Verwijderd

Topicstarter
purge schreef op 09 augustus 2003 @ 15:59:
Probeer het settings bestandje eens in twee regels te schrijven, dus

19600
blaat.bla

Ik krijg het idee dat je bij het aangeven van de com poort niet op enter hoeft te drukken maar dat, na de 1 of 2, direct de baudrate word gevraagd.
Opzich niet verkeerd gedacht maar ik moet wel op enter drukken als ik mijn com-poort gekozen heb. Je idee werkt dus helaas niet....

  • Rataplan
  • Registratie: Oktober 2001
  • Niet online

Rataplan

per aspera ad astra

Kon je nog wat bestandjes posten?


Journalism is printing what someone else does not want printed; everything else is public relations.


Verwijderd

Topicstarter
Rataplan schreef op 09 August 2003 @ 18:30:
Kon je nog wat bestandjes posten?
Wat wil je hebben ?

  • Rataplan
  • Registratie: Oktober 2001
  • Niet online

Rataplan

per aspera ad astra

Zoals ik al schreef (:P): programma en invoertekstbestand.
Dat lult wat makkelijker.

[ Voor 7% gewijzigd door Rataplan op 09-08-2003 19:31 ]


Journalism is printing what someone else does not want printed; everything else is public relations.


Verwijderd

Topicstarter
hier is het progje te vinden........ http://www.xs4all.nl/~macare/FILECAP.EXE

hier het invoertextbestand.......... http://www.xs4all.nl/~macare/settings.txt

[ Voor 8% gewijzigd door Verwijderd op 09-08-2003 22:32 ]


  • Rataplan
  • Registratie: Oktober 2001
  • Niet online

Rataplan

per aspera ad astra

Ik wil je niet opjutten, maar de linkjes zijn dood :)

Edit: inmiddels doet settings.txt het wel. Die is dus mooi wel een byte te lang, heh! Ik zei het nog zo:
Rataplan schreef op 09 August 2003 @ 16:06:
[...]

Er mag dus ook geen enter meer na blaat.bla staan, dwz de "a" van bla moet het laatste teken van het bestand zijn!
...mutatis mutandis op test.prn van toepassing, maar dat spreekt vanzelf ;)

[ Voor 88% gewijzigd door Rataplan op 09-08-2003 20:44 ]


Journalism is printing what someone else does not want printed; everything else is public relations.


Verwijderd

Topicstarter
Ow het eerste linkje was dood omdat ik kleine lettertjes gebruikte :$ verder was de post al gedaan en moets ik nog loaden dus 30 sec na mijn post sotnd het iig op !

Wat bedoel je dat "dat" ook op test.prn van toepassing is ?

P.S. Onze welgemeende excusses voor het ongemak, kunnen wij u op een of andere manier ten goede komen dan horen wij dit graag van u ! :p

[ Voor 3% gewijzigd door Verwijderd op 09-08-2003 22:38 ]


  • Rataplan
  • Registratie: Oktober 2001
  • Niet online

Rataplan

per aspera ad astra

Tjah, wat zullen we er eens van zeggen...

(1) Ik volg niet helemaal hoe filecap de invoer controleert. Oplossingen die voor input termination op een EOF ipv een EOL triggeren werken niet > bad programming, as far as I care. Command line params lijken ook niet te werken. Maar goed.
(2) IO indirection krijg ik (dus) niet voor elkaar (hufkes zit nou wrsch. te grinniken :'()
(3) Als je weet hoe lang er gecaptured moet worden, kan je de volgende batch file gebruiken:
code:
1
2
3
4
5
@echo off
echo 1
echo 9600
echo test.prn
type nul | c:\windows\command\CHOICE.COM /N /CY /TY,%1

De aanroep is dan
code:
1
fc_input 5 | filecap
om 5 seconden te capturen.
Die regel kan je ook weer in een batch file zetten. Je kan ook bijvoorbeeld 3600 seconden invoeren, en met control-C eventueel eerder eindigen. choice.com moet je ff van een windows98-installatie afplukken of downloaden, it's all over the internet.
(4) Je weet dat er een windowsversie van filecap is? Kijk hier maar ff.
(5) Met die mutatismutandispost bedoelde ik dat je had moeten lezen:
Er mag dus ook geen enter meer na test.prn staan, dwz de "n" van prn moet het laatste teken van het bestand zijn!
...maar (a) dat had je al begrepen en (b) daar kan het programma toch niks mee :P

Dus: jammer dat je tegenwoordig met ctrlC moet terminaten, maar voor de rest heb ik dacht ik je probleem opgelost. Als dat niet zo is, well, dan zie ik je wel weer posten ;)

RE: P.S.: NP dude, je hebt alleen jezelf ermee :D

[ Voor 7% gewijzigd door Rataplan op 10-08-2003 12:26 ]


Journalism is printing what someone else does not want printed; everything else is public relations.


  • hufkes
  • Registratie: Maart 2000
  • Laatst online: 30-03 19:56

hufkes

nee, daar staat niet hufter!

Rataplan schreef op 10 August 2003 @ 12:25:
(2) IO indirection krijg ik (dus) niet voor elkaar (hufkes zit nou wrsch. te grinniken :'()
*grinnikt* :P

Wat bedoel je overigens met af moeten sluiten met ^C? je kunt ook echt wel afsluiten met ^Z hoor. Doe maar op de prompt:

c:\>copy con instel.txt [enter]
1[enter]
9600[enter]
test.prn^Z

Dan heb je een keurig precies na de n afsluitend bestandje...

Maar goed, lost het probleem niet op omdat je nog steeds niet de invoer kunt terugleggen naar de std.invoer.

Het tweede dubbele batch zou misschien kunnen werken, maar je kunt overigens ook gewoon @pause>null in je batch zetten, die wacht gewoon op een toetsaanslag.. dan hoef je de tijd niet te weten lijkt me en hoef je ook niet het programma choice over te halen.

ps: ik kan het helaas niet voor je testen hier, zit op mijn werk en heb een dichtgetimmerde vrij belangrijke pc waar ik niet op ga zitten klooien.

[ Voor 10% gewijzigd door hufkes op 10-08-2003 13:00 ]

Onderstaande signature is al >20jr oud ***hoe dan***
---
Het internet is een veelbelovend medium
....dat maar heel weinig van zijn beloftes nakomt.
Wat weg is... raak je nooit meer kwijt :P


  • Rataplan
  • Registratie: Oktober 2001
  • Niet online

Rataplan

per aspera ad astra

*schopt* :(

;)
Wat bedoel je overigens met af moeten sluiten met ^C? je kunt ook echt wel afsluiten met ^Z hoor.
Dat is het probleem niet, het probleem is dat filecap die ^z als ongeldige invoer ziet en daarop klapt :) De ^C moest de batch die de invoer genereerde aborten.
(...)maar je kunt overigens ook gewoon @pause>null in je batch zetten, die wacht gewoon op een toetsaanslag.. dan hoef je de tijd niet te weten lijkt me en hoef je ook niet het programma choice over te halen.
Beautiful! Werkt veel beter :*) Mutatis mutandis (;)), voor onze ts:
code:
1
2
3
4
5
@echo off
echo 1
echo 9600
echo test.prn
@pause > nul

en de aanroep is
code:
1
fc_input | filecap


Journalism is printing what someone else does not want printed; everything else is public relations.


  • hufkes
  • Registratie: Maart 2000
  • Laatst online: 30-03 19:56

hufkes

nee, daar staat niet hufter!

en weer verlaat een tevreden klant het virtuele pand _/-\o_

nog even ter leringh ende vermaek voor de TS: VanDale :*)

Onderstaande signature is al >20jr oud ***hoe dan***
---
Het internet is een veelbelovend medium
....dat maar heel weinig van zijn beloftes nakomt.
Wat weg is... raak je nooit meer kwijt :P


Verwijderd

Topicstarter
Tof mensen bedankt !!!!!!!!!!

Mutatis ;) :p

  • Rataplan
  • Registratie: Oktober 2001
  • Niet online

Rataplan

per aspera ad astra

Verdomd, hij is echt tevreden :P


Journalism is printing what someone else does not want printed; everything else is public relations.

Pagina: 1