www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

xps2pdf
Pojdi na stran 1, 2  Naslednja
 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> MS Windows razprave
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
ljudsko
Član
Član



Pridružen-a: Pon 31 Mar 2008 8:19
Prispevkov: 1184
Aktiv.: 5.63
Kraj: Koroška-Mežica

PrispevekObjavljeno: Sob Jan 23, 2010 1:22 pm    Naslov sporočila:  xps2pdf Odgovori s citatom

Lep pozdrav.
Ker velikokrat, ko narišem kakšno vezje, v različnih programih za TIV ni funkcije za izvoz v pdf datoteko, ampak xps datoteko, sem si iz spleta snel enostavno konzolno aplikacijo za tovrstno pretvorbo, xps2pdf. Odločil sem se, da iz te aplikacije naredim enostavno windows form aplikacijo, ker me moti vsakokratno ročno vpisovanje direktorijev in komand v cmdju.
Zadeve sem se lotil v visual basic-u. Zanima me, kako bi z gumbom klical datoteko xps2pdf.exe, ki pobere atribute iz dveh textboxov (prvi za izvorno datoteko .xps, drugi pa za izhodno datoteko .pdf) in izvede akcijo. Torej, katere kontrolnike potrebujem in kako se zadeva izvede. Mogoče ima kdo kakšen podoben primer..?
Komanda za enostavno pretvorbo ene xps datoteke v pdf datoteko za ta program v konzoli je:
Koda:
xps2pdf.exe (pri čemer moramo biti v direktoriju, kjer je ta program) [izvorna .xps datoteka] [izhodna .pdf datoteka]


Evente za gumbe za brskanje sem že napisal. Tukaj bi morda dodal še filter, da bi lahko za prvo datoteko izbral samo datoteko s končnico .xps, pri drugem pa .pdf. Kako bi to naredil?

Koda:
Public Class xps2pdf

    Private Sub ButtonBrskajIzvorna_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonBrskajIzvorna.Click
        OpenFileDialog1.ShowDialog()
        OpenFileDialog1.ReadOnlyChecked = True
        If Windows.Forms.DialogResult.OK Then
            TextBoxIzvorna.Text = OpenFileDialog1.FileName
        End If
    End Sub

    Private Sub ButtonBrskajIzhodna_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonBrskajIzhodna.Click
        OpenFileDialog1.ShowDialog()
        OpenFileDialog1.ReadOnlyChecked = True
        If Windows.Forms.DialogResult.OK Then
            TextBoxIzhodna.Text = OpenFileDialog1.FileName
        End If
    End Sub

    Private Sub ButtonPretvori_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonPretvori.Click

    End Sub
End Class


Tukaj pa še screen programčka...



program.PNG
 Opis:
 Velikost datoteke:  27.95 KB
 Pogledana:  0 krat

program.PNG



_________________
return;
brake;
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
Jaka57
Moderator
Moderator



Pridružen-a: Ned 12 Dec 2004 21:47
Prispevkov: 5820
Aktiv.: 24.51
Kraj: Grosuplje

PrispevekObjavljeno: Sob Jan 23, 2010 1:29 pm    Naslov sporočila:   Odgovori s citatom

Bullzip printer krasno pretvarja kakršne koli datoteke v pdf iz vseh programov. In zastonj je(Freeware)!
Dela tudi na Win7 (64).

Najdeš ga tukaj.

_________________
Lp, Jaka
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
ljudsko
Član
Član



Pridružen-a: Pon 31 Mar 2008 8:19
Prispevkov: 1184
Aktiv.: 5.63
Kraj: Koroška-Mežica

PrispevekObjavljeno: Sob Jan 23, 2010 1:52 pm    Naslov sporočila:   Odgovori s citatom

Dobro, nekaj se iz tega želim tudi naučiti Smile
_________________
return;
brake;
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
ljudsko
Član
Član



Pridružen-a: Pon 31 Mar 2008 8:19
Prispevkov: 1184
Aktiv.: 5.63
Kraj: Koroška-Mežica

PrispevekObjavljeno: Sob Jan 23, 2010 2:25 pm    Naslov sporočila:   Odgovori s citatom

Malo bližje sem že:

Koda:
Public Class xps2pdf

    Private Sub ButtonBrskajIzvorna_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonBrskajIzvorna.Click
        OpenFileDialog1.ShowDialog()
        OpenFileDialog1.ReadOnlyChecked = True
        If Windows.Forms.DialogResult.OK Then
            TextBoxIzvorna.Text = OpenFileDialog1.FileName
        End If
    End Sub

    Private Sub ButtonBrskajIzhodna_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonBrskajIzhodna.Click
        SaveFileDialog1.ShowDialog()
        If Windows.Forms.DialogResult.OK Then
            TextBoxIzhodna.Text = SaveFileDialog1.FileName
        End If
    End Sub

    Private Sub ButtonPretvori_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonPretvori.Click
        Dim izvorna As String
        Dim izhodna As String

        izvorna = TextBoxIzvorna.Text
        izhodna = TextBoxIzhodna.Text
        Shell("F:\xps2pdf\xps2pdf.exe -izvorna -izhodna")
    End Sub
End Class


Ko kliknem na gumb za pretvarjanje v pdf, se mi na hitro zažene nek exe file (mislim da prav ta, ki ga želim), vendar očitno brez parametrov, zato se nič ne zgodi. Kako naj vključim parametre drugače, kot zdaj?

_________________
return;
brake;
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
ljudsko
Član
Član



Pridružen-a: Pon 31 Mar 2008 8:19
Prispevkov: 1184
Aktiv.: 5.63
Kraj: Koroška-Mežica

PrispevekObjavljeno: Ned Jan 24, 2010 10:20 am    Naslov sporočila:   Odgovori s citatom

Stric google pomagal. Malo močneje sem ga moral pocukat za rokav.

Koda:
Dim izvorna As String
        Dim izhodna As String

        izvorna = TextBoxIzvorna.Text
        izhodna = TextBoxIzhodna.Text

        Shell("F:\xps2pdf\xps2pdf.exe " & izvorna & " " & izhodna, AppWinStyle.Hide)


Fora je bila v tem, da sem pozabil vstaviti presledke med potjo programa in parametri, ki jih potrebuje in mi je javljalo napako, da ne najde programa, ker je vse vzelo kot en string brez presledkov. Sedaj lepo deluje. Izdelal sem si prvo uporabno zadevo za windows okolje Smile

_________________
return;
brake;
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
airwolf
Član
Član



Pridružen-a: Sre 28 Maj 2008 17:17
Prispevkov: 2219
Aktiv.: 10.66
Kraj: Polhov Gradec

PrispevekObjavljeno: Ned Jan 24, 2010 4:36 pm    Naslov sporočila:   Odgovori s citatom

Samo, tole bo delovalo samo na disku F.
Koda:
F:\xps2pdf\xps2pdf.exe

A da bi naredil to tako, da bi program sam našel mapo v kateri je xps2pdf.exe se ne da?

_________________
LP Gašper
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
kljuka
Član
Član



Pridružen-a: Sob 03 Jan 2009 19:37
Prispevkov: 81
Aktiv.: 0.40
Kraj: Maribor

PrispevekObjavljeno: Ned Jan 24, 2010 6:05 pm    Naslov sporočila:   Odgovori s citatom

Koda:
OpenFileDialog1.Filter = "XPS datoteke (*.xps)|*.xps"
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
ljudsko
Član
Član



Pridružen-a: Pon 31 Mar 2008 8:19
Prispevkov: 1184
Aktiv.: 5.63
Kraj: Koroška-Mežica

PrispevekObjavljeno: Ned Jan 24, 2010 8:42 pm    Naslov sporočila:   Odgovori s citatom

@kljuka, hvala. Kako bi v filter še dodal, da mi za default ime datoteke ne bi pisalo "OpenFileDialog1", ampak samo "*".

@airwolf, to se da, direktorij sem navedel zato, ker program uporabljam samo zase, če bi ga napisal za koga drugega bi pa tole optimiziral. Išči pod funkcijami "My.Computer.FileSystem.GetFiles", na msdna imaš primere. Meni sicer to ni uspelo, ampak mi je vseeno ker ne rabim. Če pa želiš, pa lahko sam poizkusiš

_________________
return;
brake;
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
kljuka
Član
Član



Pridružen-a: Sob 03 Jan 2009 19:37
Prispevkov: 81
Aktiv.: 0.40
Kraj: Maribor

PrispevekObjavljeno: Ned Jan 24, 2010 11:18 pm    Naslov sporočila:   Odgovori s citatom

Pred prikazovanjem napišeš:

Koda:
OpenFileDialog1.FileName = "PacNekaDatoteka.txt"
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
ljudsko
Član
Član



Pridružen-a: Pon 31 Mar 2008 8:19
Prispevkov: 1184
Aktiv.: 5.63
Kraj: Koroška-Mežica

PrispevekObjavljeno: Pon Jan 25, 2010 6:34 pm    Naslov sporočila:   Odgovori s citatom

Hvala
_________________
return;
brake;
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
ljudsko
Član
Član



Pridružen-a: Pon 31 Mar 2008 8:19
Prispevkov: 1184
Aktiv.: 5.63
Kraj: Koroška-Mežica

PrispevekObjavljeno: Pon Jan 25, 2010 7:18 pm    Naslov sporočila:   Odgovori s citatom

Malo sem mislil dodati k programu, da bi mi po končanem konvertiranju odprlo pdf datoteko.
Zakaj mi ta vrstica ne deluje:
Koda:
Shell((My.Computer.FileSystem.GetFiles("C:\", True, (SaveFileDialog1.FileName))))


Napiše mi:
Koda:
Error   1   Value of type 'System.Collections.ObjectModel.ReadOnlyCollection(Of String)' cannot be converted to 'String'.   C:\Users\Blaz\Documents\Vb_projekti\xps2pdf\xps2pdf\Form1.vb   31   15   xps2pdf


PS.: Kako bi pri iskanju datotek z getfiles dodal več direktorijev, ne samo C:\ ?

_________________
return;
brake;
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
kljuka
Član
Član



Pridružen-a: Sob 03 Jan 2009 19:37
Prispevkov: 81
Aktiv.: 0.40
Kraj: Maribor

PrispevekObjavljeno: Pon Jan 25, 2010 9:28 pm    Naslov sporočila:   Odgovori s citatom

GetFiles vrne množico. Poleg tega, zakaj kompliciraš?

Shell(SaveFileDialog1.FileName)
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
ljudsko
Član
Član



Pridružen-a: Pon 31 Mar 2008 8:19
Prispevkov: 1184
Aktiv.: 5.63
Kraj: Koroška-Mežica

PrispevekObjavljeno: Pon Jan 25, 2010 11:57 pm    Naslov sporočila:   Odgovori s citatom

Zato:


Untitled.png
 Opis:
 Velikost datoteke:  244.53 KB
 Pogledana:  17 krat

Untitled.png



_________________
return;
brake;
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
kljuka
Član
Član



Pridružen-a: Sob 03 Jan 2009 19:37
Prispevkov: 81
Aktiv.: 0.40
Kraj: Maribor

PrispevekObjavljeno: Tor Jan 26, 2010 12:14 am    Naslov sporočila:   Odgovori s citatom

Ahaaa ... Ja ja ja ... Very Happy

Koda:
Process.Start(SaveFileDialog1.FileName)
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
ljudsko
Član
Član



Pridružen-a: Pon 31 Mar 2008 8:19
Prispevkov: 1184
Aktiv.: 5.63
Kraj: Koroška-Mežica

PrispevekObjavljeno: Tor Jan 26, 2010 5:10 pm    Naslov sporočila:   Odgovori s citatom

Deluje, ampak problem je v tem, da program nekaj časa potrebuje, da skonvertira datoteko, zato je še ne najde in javi napako. Kako bi ga "prisilil" v majhno zakasnitev (cca. 2 sekundi)...?
Ali pa če bi v zanki preverjal, če datoteka obstaja, ko jo najde (ko je kreirana), jo odpre..nekakšen if-else

_________________
return;
brake;
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> MS Windows razprave Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Pojdi na stran 1, 2  Naslednja
Stran 1 od 2

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 6 dni


Powered by phpBB © 2001, 2005 phpBB Group