[VB6] Bij "Openen met..." bestandsnaam opvragen

Pagina: 1
Acties:

  • Polderdijk
  • Registratie: December 2001
  • Laatst online: 19-05 14:10
Ik heb een programma gemaakt waarmee ik o.a. Excel documenten kan exporteren naar een standaard die wij weer kunnen gebruiken om in Navision te importeren.

We zijn uiteraard liever lui als moe en heb dus geen zin om telkens het programma op te starten en daarna het bestand te moeten zoeken. Nu heb ik dus er voor gezorgd dat het bestand in het "Openen met..." scherm (onder rechter muis) staat. Echter weet ik niet hoe ik dan de geselecteerde bestandsnaam moet achterhalen.

Ik weet ook niet exact hoe die benaming heet dus met GoT-search en google kwam ik niet ver.

[edit]
Ik heb op wat andere, engelse zoekwoorden gegoogeld en heb wat gevonden.

Ik kan gewoon d.m.v. Command$ afvangen :)

[ Voor 12% gewijzigd door Polderdijk op 22-11-2004 10:22 ]

Webhosting van SkyHost.nl: 25 Mb / 1 Gb windows hosting € 4,50 p/m excl.btw!


  • Ashtaroth
  • Registratie: December 2003
  • Laatst online: 16-02 09:59
<offtopic>
"We zijn uiteraard liever lui als moe..." doet gewoon pijn bij het lezen.

We zijn uiteraard liever lui dan moe...
</offtopic>

Sorry, moest ff.

  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 19-05 20:34

Gerco

Professional Newbie

Probeer eens zoiets:
code:
1
sFilename = Command$


Ja, zie edit in TS dus :)

Of die $ nog nodig is in VB6 weet ik niet, meestal niet, maar het komt me voor dat het soms weer wel moet (lang leve consistentie!)

[ Voor 61% gewijzigd door Gerco op 22-11-2004 11:10 ]

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


  • Polderdijk
  • Registratie: December 2001
  • Laatst online: 19-05 14:10
@Gerco,
Zie mijn edit, ik had het al gevonden ;)

Maar voor de duidelijkheid gebruik ik het exact zo:
Visual Basic:
1
2
3
4
5
If Command$ <> "" Then
    txtSource.Text = Replace(Command$, """", "")
    DoEvents
    Analiseer
End If

Het command geeft namelijk je bestandsnaam inclusief " om de string heen.

Wat ik echter wel gek vind is dat de functie analiseer ongeveer 2 tot 4 seconde duurt maar in die tijd wordt het scherm zelf nog niet opgebouwd. Hij trekt zich dus niks aan van de 2 DoEvents die ik er in hebt staan.

Ook in de functie Analiseer staan een aantal DoEvents maar dat werkt ook niet :?

Webhosting van SkyHost.nl: 25 Mb / 1 Gb windows hosting € 4,50 p/m excl.btw!


  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 19-05 20:34

Gerco

Professional Newbie

Waar staat die functie dan ? In de Form_Load ? Als dat het geval is, moet je er even een Me.Show tussengooien (voor een DoEvents) of je stelt het analyseren uit tot de Form_Activate bijvoorbeeld.

Niet dat je gebruikers er iets aan hebben dat het form zichtbaar is, ze kunnen er toch niets mee (je app is immers bezig), maar om een progressbar oid te tonen is het prima geschikt.

[ Voor 33% gewijzigd door Gerco op 22-11-2004 11:12 ]

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


  • Polderdijk
  • Registratie: December 2001
  • Laatst online: 19-05 14:10
Ik had hem idd in de Form_Load. Maar als je dan een bestand aanklikt welke aardig groot is en dus wat tijd nodig hebt, kunnen de gebruikers uiteraard de ilusie krijgen dat hij niet werkt of dat hij nog een keer moet klikken.

Ook de progressbar en logfile items kon je niet zien.

Nu ik voor de eerste DoEvent Me.Show hebt gezet, werkt het wel :)

Webhosting van SkyHost.nl: 25 Mb / 1 Gb windows hosting € 4,50 p/m excl.btw!


  • nenne
  • Registratie: Juni 2004
  • Laatst online: 06-06-2024
Polderdijk schreef op maandag 22 november 2004 @ 11:18:
Ik had hem idd in de Form_Load. Maar als je dan een bestand aanklikt welke aardig groot is en dus wat tijd nodig hebt, kunnen de gebruikers uiteraard de ilusie krijgen dat hij niet werkt of dat hij nog een keer moet klikken.

Ook de progressbar en logfile items kon je niet zien.

Nu ik voor de eerste DoEvent Me.Show hebt gezet, werkt het wel :)
Of de mousepointer veranderen in een zandloper zolang hij bezig is (vbHourGlas oid), dat verhelpt iig dat de gebruiker denkt dat er niets gebeurt...
Pagina: 1