Pfad bei "Programm starten" wird nicht übernommen

Antworten
Uli
Beiträge: 15
Registriert: Mittwoch 13. Mai 2009, 16:14

Pfad bei "Programm starten" wird nicht übernommen

Beitrag von Uli » Samstag 9. April 2011, 08:57

Hallo zusammen,

ich setze in einem Projekt die Funktion "Programm starten" ein.
Der Pfad der .exe - Datei existiert auf meinem Rechner nicht, jedoch auf dem Kunden-PC.
Wenn ich mein Projekt kompiliere wird der "manuell" eingegebene Pfad in das kompilierte Projekt mit übernommen
und funktioniert dort einwandfrei.

In meinem PL-Projekt wird er aber, obwohl ich das Projekt abgespeichert habe, nach Neustarts durch den
Pfad "C:\Programme\ProfiLab-Expert40\Data\..." überschrieben.

Warum ist das so und was kann ich dagegen tun? :roll:

Vielen Dank vorab und viele Grüße,
Uli

Tüftler
Beiträge: 94
Registriert: Dienstag 11. Januar 2011, 20:58

Re: Pfad bei "Programm starten" wird nicht übernommen

Beitrag von Tüftler » Montag 11. April 2011, 14:22

Kannst du das betreffende Projekt einmal Hochladen.
Damit ich es mir anschauen kann ich mir anschauen kann den ich hatte damit noch nie Probleme!

Uli
Beiträge: 15
Registriert: Mittwoch 13. Mai 2009, 16:14

Re: Pfad bei "Programm starten" wird nicht übernommen

Beitrag von Uli » Montag 11. April 2011, 17:00

...und da ist es auch schon.

Jetzt aber nicht erschrecken, das Ganze besteht nur aus zwei Elementen.
Aber zu meinem Problem:
Ich gebe im Element "Programm starten" den Pfad einer Datei ein, der auf meinem Rechner jedoch nicht existiert.
Nehmen wir einmal an der Pfad ist "c:\test\test.txt"
Parameter übergebe ich nicht und bei Aktion wähle ich "OPEN" an.
Nun speichere ich das Projekt ab, schließe es und rufe es danach erneut auf.
Und siehe da, mein eben eingegebener Pfad steht plötzlich auf "C:\Programme\ProfiLab-Expert40\Data\test.txt"
Dies geschieht jedoch nicht, wenn die Datei im Pfad "c:\test\test.txt" tatsächlich existiert, dann bleibt der Pfad erhalten
Wenn ich das Projekt vor dem Schließen kompiliert habe, ist in der kompilierten Version der Pfad "c:\test\test.txt"
übernommen worden.

Das Problem ist nun, dass ich ein Projekt habe, in dem ich mehrere Dateien in verschiedenen Pfaden auf einem Kundenrechner öffnen möchte.
Die Pfade dort stehen fest, ich muss mich dem anpassen.
Allesamt existieren nicht auf meinem Rechner. So muss ich jedes Mal wenn ich das Projekt ändere, alle Verweise prüfen bzw. neu eingeben.
Wenn ich auch nur einen vergesse oder mich vertippe ist die kompilierte Version fehlerhaft.
Das kann doch nicht gewollt sein, oder :shock:

Betriebssystem ist WinXP SP3 Professional (bei Home siehts aber genau so aus...)
Dateianhänge
Programmaufruf.prj
(598 Bytes) 392-mal heruntergeladen

Tüftler
Beiträge: 94
Registriert: Dienstag 11. Januar 2011, 20:58

Re: Pfad bei "Programm starten" wird nicht übernommen

Beitrag von Tüftler » Dienstag 12. April 2011, 07:56

Mir ist gerade noch etwas eingefallen und zwar was Passiert wen du In Profilab ein Hacken bei der Option Während der Laufzeit einstellbar setzt und dann das Projekt Kompilierst.
Und anschließend auf dem Kundenrechner wo die Dateien Ja vorhanden sind den entsprechenden Pfad Einträgst. :?

Uli
Beiträge: 15
Registriert: Mittwoch 13. Mai 2009, 16:14

Re: Pfad bei "Programm starten" wird nicht übernommen

Beitrag von Uli » Dienstag 12. April 2011, 08:50

Ja, das funktioniert - jedoch nur so lange wie die kompilierte Anwendung läuft. :cry:

Beim nächsten Neustart verfällt der angewählte Pfad wieder und PL versucht dann auf das DATA-Verzeichnis der kompilierten Version zuzugreifen.
:o Auch dieser Weg eignet sich nicht für manuell eingegebene Pfade.
Kopiert man die kompilierte Version nun in ein anderes Verzeichnis, dann ändert sich auch der Pfad auf das dann dort vorhandene DATA-Verzeichnis.
Da wird also mit relativen Pfaden gearbeitet.
Soweit sogut, das eignet sich dann jedoch ausschließlich für im DATA-Verzeichnis mit der kompilierten Version ausgelieferte Dateien.
Spätestens beim öffnen von Dateien in Pfaden auf dem Kundenrechner zieht sich die Schlinge dann zu.
Nun stellt sich mir die Frage, warum kann ich denn überhaupt zur Laufzeit Pfade auswählen, die sowieso nur für die eine Sitzung gültig sind?
Ich gehe von einem Bug aus :?: :!:

Tüftler
Beiträge: 94
Registriert: Dienstag 11. Januar 2011, 20:58

Re: Pfad bei "Programm starten" wird nicht übernommen

Beitrag von Tüftler » Dienstag 12. April 2011, 09:12

Ich hab mir das gerade auch angeschaut und auch die frage gestellt.
Aber ich würde auch sagen dass das ein Fehler von Profilab ist!

abacom
Site Admin
Beiträge: 3917
Registriert: Dienstag 23. September 2008, 10:54
Kontaktdaten:

Re: Pfad bei "Programm starten" wird nicht übernommen

Beitrag von abacom » Mittwoch 13. April 2011, 09:24

Beim Compilieren "trägt" ProfiLab die verwendeten, externen Dateien "zusammen",
legt Sie mit ins Kompilat und passt die Pfade an (damit im Kompilat
später alles läuft). Ein Arbeiten im Editor mit "nicht vorhanden
Dateien/Pfaden" ist daher leider nicht möglich.
Wenn die Textdatei fehlt, dann sollte man Sie halt anlegen.
ABACOM support

funkybaer
Beiträge: 440
Registriert: Mittwoch 22. Oktober 2008, 08:51
Wohnort: Kitzingen

Re: Pfad bei "Programm starten" wird nicht übernommen

Beitrag von funkybaer » Mittwoch 13. April 2011, 09:38

Hallo Uli

Wenn Profilap den Pfad nicht findet ( anderes Laufwerk ) dann würde ich einen USB
Stick nehmen , die Dateien und Pfade darauf anlegen , und als das entsprechende
Laufwerk einrichten .

Ich habe das gleiche Problem , das ich auf dem D: Laufwerk Profilap laufen habe (laptop) und
die Daten auf dem anderem Rechner auf E: liegen - also Usbstick rein und als E: Laufwerk eingestellt .
Geht so problemlos .

Gruß Gerhard

Uli
Beiträge: 15
Registriert: Mittwoch 13. Mai 2009, 16:14

Re: Pfad bei "Programm starten" wird nicht übernommen

Beitrag von Uli » Mittwoch 13. April 2011, 17:15

Hallo Gerhard,

vielen Dank für deinen Tipp.
Das wird wahrscheinlich der beste Weg für den Anwendungsfall sein.
So werde ich es dann auch machen ;)

Uli

Antworten

Zurück zu „Thema: Schaltung und Bauteile“