Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[VB] copy file from dynamic location to static local folder

Pagina: 1
Acties:
  • 209 views

  • its_Muppet
  • Registratie: Juli 2003
  • Laatst online: 17-11 16:52
Boeren, burgers en buitenlui,

ik ben een beetje aan het k#tten met VB en kom er niet uit. Ik ben een aangepaste installatie aan het maken voor een bestaande MSI met Wise Package studio. Das het probleem niet, maar ik heb een stukje VB code nodig die het volgende doet:

Na de installatie van de MSI, dient er vanuit dezelfde map waar de MSI zich bevind een test.MDE bestand gekopieerd te worden naar de door de MSI aangemaakte map C:\Program Files\Test\Test\
Het punt is alleen dat de locatie waar van af de installatie plaatsvind nog niet duidelijk is.

Nu heb ik bepaalde templates gezocht en gevonden, maar ik krijg het niet voor elkaar om het bestand aan te geven in diezelfde folder. Ik heb wel een manier gevonden om de currentdir op te vragen.

Wat ik tot nog toe heb is dit:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
Sub Copy_Folder()
'This example copy all files and subfolders from FromPath to ToPath.
'Note: If ToPath already exist it will overwrite existing files in this folder
'if ToPath not exist it will be made for you.
    Dim FSO As Object
    Dim FromPath As String
    Dim ToPath As String

    FromPath = "G:\netwerkpad\bronmap"  '<< Change
    ToPath = "c:\Program Files\Test\Test"    '<< Change

    'If you want to create a backup of your folder every time you run this macro
    'you can create a unique folder with a Date/Time stamp.
    'ToPath = "C:\Users\Ron\" & Format(Now, "yyyy-mm-dd h-mm-ss")

    If Right(FromPath, 1) = "\" Then
        FromPath = Left(FromPath, Len(FromPath) - 1)
    End If

    If Right(ToPath, 1) = "\" Then
        ToPath = Left(ToPath, Len(ToPath) - 1)
    End If

    Set FSO = CreateObject("scripting.filesystemobject")

    If FSO.FolderExists(FromPath) = False Then
        MsgBox FromPath & " doesn't exist"
        Exit Sub
    End If

 'this is a trick - will display a "Please Wait" window even though the script is finished
     'why you ask?
     'the user needs to see that something runs when he clicks the .vbs file
 
     WshShell.Popup "Processing files. Please wait...", (delay), "Processing files...", 5
 
     Set objFSO = Nothing
     Set WshShell = Nothing
 
     'this will display a MsgBox after the "Please Wait" window closes, letting the user know the process is complete
     MsgBox "Process completed successfully", 64 + 262144, "Process complete"

End Sub


Nu heb ik de volgende code gevonden om de currentdir uit te lezen, welke op de een of andere manier in regel 9 ingevoegd zou moeten worden:

code:
1
WScript.Echo left(WScript.ScriptFullName, InStrRev(WScript.ScriptFullName, "\") - 1)


Maar dan heb ik alleen maar de currentdir en niet het test.MDE bestand.

Ow ja, als je denkt dat het hoofdscriptje van standaardvoorbeelden aan elkaar hangt.........Dan heb je gelijk :P

Desalwelteplus zou ik enige hulp zeer waarderen.

"Assumption is the mother of all f#ckups" Travis Dane (Under Siege 2: Dark Territory)


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Waar hoort mijn topic?
WEB >> PRG

Verder: Wat heb je al geprobeerd? Wat lukt er niet? Waarom volstaat een Foo = Left(....) & "\test.mde") niet :? En heb je uberhaupt enig idee waar je mee bezig bent of doe je aan "copy/paste programming"? Zit hier enige code van jezelf tussen of lopen we nu support te verlenen op andermans code? Want, to be honest, zie ik niet heel veel meer dan een scriptrequest danwel Kan iemand even...? in dit topic.

[ Voor 47% gewijzigd door RobIII op 31-08-2011 09:35 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • its_Muppet
  • Registratie: Juli 2003
  • Laatst online: 17-11 16:52
Kort door de bocht komt het dan idd wel neer op een script request. En nee, ik weet eigenlijk niet waar ik mee bezig ben. De codes die ik gepost heb, komen van allerhande sites, waar ik zelf een interpretatie aangegeven heb, ergo de variabelen ingevuld.

"Assumption is the mother of all f#ckups" Travis Dane (Under Siege 2: Dark Territory)


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Mja, sorry, maar dan moet ik je toch wijzen op voorgaande linkjes en 't feit dat er meer dan voldoende tutorials op internet te vinden zijn vwb VBScript (!= VB != VBA != VB.Net overigens) en dan moet ik je dus ook adviseren je eerst de basiskennis eigen te maken. Zolang je niet weet waar je over praat (en don't worry, zo zijn we allemaal ooit eens begonnen) kunnen we je niet (goed) helpen anders dan 't voor te kauwen. Het is wel zo handig als je bekend bent met was (basis) programmeerkennis, termen etc.

[ Voor 7% gewijzigd door RobIII op 31-08-2011 10:18 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Dit topic is gesloten.