Miten saisi selattua ja valittua tiedoston Windowsin selaus dialogista vbscriptistä.
Tarkoitus olisi saada suoritettua qpdf.exe niin että voisi antaa sille avattavan pdf tiedoston nimi hiirellä windowsin selausikkunasta. Eli vbscriptilla tiedoston valinta ja välitys exe-ohjelmalle.
Tiedostonvalintadialogi vbscriptille
7
230
Vastaukset
- simpleGU
Rankasti googlettamalla ja yrityserehdys-menetelmällä
***********************************************************************************
Dim objDialog
Set objDialog = CreateObject("MSComDlg.CommonDialog")
With objDialog
.Filter = "*.pdf"
' .InitDir = "C:"
.MaxFileSize = 256
.Flags = &H80000 &H4 &H8
End With
objDialog.ShowOpen
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run ".\bin\qpdf.exe " & chr(34) & objDialog.FileName & chr(34) & " " & chr(34) & objDialog.FileName & "avattu.pdf" & chr(34)
***********************************************************************************
Olis kyllä hyvä opetella mutta kun ei koskaan riitä kärsivällisyys.- simpleGU
vbs- sripti on kansiossa "qpdf-5.1.2", jossa kansiossa on kansio "bin" (ja siellä "qpdf.exe").
- simpleGUI
simpleGU kirjoitti:
vbs- sripti on kansiossa "qpdf-5.1.2", jossa kansiossa on kansio "bin" (ja siellä "qpdf.exe").
Jotta alkuperäinen tarkoitus tulee ohjelmalla niin pitää tietysti olla decrypt mukana
WshShell.Run ".\bin\qpdf.exe " & " " & "--decrypt" & " " & chr(34) & objDialog.FileName & chr(34) & " " & chr(34) & objDialog.FileName & "avattu.pdf" & chr(34)
Tää selostus menee samalla tavalla kuin ongelman ratkaisukin: tipotellen.
Tuosta puuttuu vielä virheenkäsitelly kokonaan. - SimpleGUI
ActiveX component can't create object."MSComDlg.CommonDialog"
Code:800A01AD
Eipä toimi joka koneessa. Koneissa joissa toimi on asennettu jokin ohjelma. Yhdessä koneessa on ainakin joskus ollut asennettuna Visual Studio.
Onko sellaista vaihtoetoa joko toimisi kaikissa Windows 7/Vista/8 koneissa?
Ettei tarvitse asentaa mitään koneeseen jossa käyttää skriptiä. - SimpleGUI
SimpleGUI kirjoitti:
ActiveX component can't create object."MSComDlg.CommonDialog"
Code:800A01AD
Eipä toimi joka koneessa. Koneissa joissa toimi on asennettu jokin ohjelma. Yhdessä koneessa on ainakin joskus ollut asennettuna Visual Studio.
Onko sellaista vaihtoetoa joko toimisi kaikissa Windows 7/Vista/8 koneissa?
Ettei tarvitse asentaa mitään koneeseen jossa käyttää skriptiä.Tämä toimii seiskassa mutta kasissa ontaa kummallisen virheen "Määrittämätön virhe 80004005 rivi 3 merkki 1 eli rivin "Set file = shell.BrowseForFolder(0, "Choose a file:", &H4000,17)" alkuun.
**************
Dim shell
Set shell = CreateObject("Shell.Application")
Dim file
Set file = shell.BrowseForFolder(0, "Choose a file:", &H4000,17)
BrowseForFile = file.self.Path
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run ".\bin\qpdf.exe " & " " & "--decrypt" & " " & chr(34) & BrowseForFile & chr(34) & " " & chr(34) & BrowseForFile & "avattu.pdf" & chr(34)*****
***************************
On vaikeeta kun mikä toimii xp:ssä ei toimi vistasta ylöpäin ja mikä toimii seiskassa ei toimi enää kasissa. - SimpleGUI
SimpleGUI kirjoitti:
Tämä toimii seiskassa mutta kasissa ontaa kummallisen virheen "Määrittämätön virhe 80004005 rivi 3 merkki 1 eli rivin "Set file = shell.BrowseForFolder(0, "Choose a file:", &H4000,17)" alkuun.
**************
Dim shell
Set shell = CreateObject("Shell.Application")
Dim file
Set file = shell.BrowseForFolder(0, "Choose a file:", &H4000,17)
BrowseForFile = file.self.Path
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run ".\bin\qpdf.exe " & " " & "--decrypt" & " " & chr(34) & BrowseForFile & chr(34) & " " & chr(34) & BrowseForFile & "avattu.pdf" & chr(34)*****
***************************
On vaikeeta kun mikä toimii xp:ssä ei toimi vistasta ylöpäin ja mikä toimii seiskassa ei toimi enää kasissa.Siis rivi 4 eikä 3
- SimpleGUI
SimpleGUI kirjoitti:
Tämä toimii seiskassa mutta kasissa ontaa kummallisen virheen "Määrittämätön virhe 80004005 rivi 3 merkki 1 eli rivin "Set file = shell.BrowseForFolder(0, "Choose a file:", &H4000,17)" alkuun.
**************
Dim shell
Set shell = CreateObject("Shell.Application")
Dim file
Set file = shell.BrowseForFolder(0, "Choose a file:", &H4000,17)
BrowseForFile = file.self.Path
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run ".\bin\qpdf.exe " & " " & "--decrypt" & " " & chr(34) & BrowseForFile & chr(34) & " " & chr(34) & BrowseForFile & "avattu.pdf" & chr(34)*****
***************************
On vaikeeta kun mikä toimii xp:ssä ei toimi vistasta ylöpäin ja mikä toimii seiskassa ei toimi enää kasissa.Tämä tomii mutten käsitä sitä
*****************'''
BrowseForFile = Replace(CreateObject("WScript.Shell").Exec("mshta.exe ""about:FILE.click();new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(1).WriteLine(FILE.value);close();moveTo(-32000,-32000);""").StdOut.ReadAll, vbCrLf, "")
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run ".\bin\qpdf.exe " & " " & "--decrypt" & " " & chr(34) &_
BrowseForFile & chr(34) & " " & chr(34) & BrowseForFile & "avattu.pdf" & chr(34)
***********************
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Jos venäjällä olisi kansan valitsema presidentti, olisiko Ukrainan sotaa?
Ei varmasti olisi. Sehän on tiedossa, että raskaalla vaalivilpillä putin jatkaa pressana.2763971Riikka jytkytti naftan hinnan jo yli 2,3 euroon
Sannan aikaan esimerkiksi dieseliä selvästi kalliimpaa bensaakin sai 1,3 eurolla. https://www.is.fi/autot/art-2000011881053645Vasemmiston feministinaiset puolustavat islamia
mikä on täysin järjenvastaista, mutta eihän femakoilla paljon järkeä olekkaan, leijuvat siellä omassa kuplassaan. Myös1772636Päivän Sanna: Suomi maailman onnellisin maa
Sanna muutti Suomen maailman onnellisimmaksi maaksi. Hänen pyyteetön työnsä maailmalla tuottaa edelleen tulosta.422397- 622345
- 1541942
- 341737
- 411353
Onko jo liian "vanha" vai mitä mieltä olet? 57-v. saa raakaa tekstiä tv:ssä
The Summit Suomi tv-ohjelmassa 57-vuotiaan Maritan jaksamista kyseenalaistettiin iän takia. Onko tässä iässä jo liian "v311317- 461222