Puppy Linux Discussion Forum Forum Index Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Thu 18 Dec 2014, 05:39
All times are UTC - 4
 Forum index » House Training » Users ( For the regulars ) » Für deutschsprachige Anhänger
Windowsprogramme unter Wine
Moderators: MU
Post_new_topic   Reply_to_topic View_previous_topic :: View_next_topic
Page 1 of 1 Posts_count  
Author Message
RSH


Joined: 05 Sep 2011
Posts: 2420
Location: Germany

PostPosted: Thu 21 Aug 2014, 02:50    Post_subject:  Windowsprogramme unter Wine
Sub_title: Jedes unter Wine funktionierende Windowsprogramm voll funktionsfähig mit Dateitypen verknüpfen !!!
 

Ok,

heute gibt's 'was Leckeres!

Verwendet hier jemand Windowsprogramme unter Wine?

Schon 'mal geärgert, daß manche Programme sich nicht voll funktionsfähig mit bestimmten Dateitypen verknüpfen lassen?

Voll funktionsfähig meint hier, daß eine übermittelte Datei auch tatsächlich in das Windowsprogramm geladen wird.

Das gehört nun der Vergangenheit an.

Seit meinen LazY-Puppy-Anfängen besitze ich ein Wine SFS, das Corel Photopaint 8 installiert hat. Alles funktioniert wunderbar, bis auf das Übermitteln einer Datei an Corel Photopaint 8. Heute habe ich dies gelöst.

Zuerst habe ich ein Skript mit folgendem Inhalt erstellt:
Code:
#!/bin/bash -a
#------------------------------------------------------------------------------
# Executing Corel Photopaint 8 in Wine and submit a File
# 2014-08-21 RSH for LazY Puppy
#------------------------------------------------------------------------------

SUBMIT="$1"
exec wine "C:\\Corel\\Graphics8\\Programs\photopnt.exe" "C:\\`basename "$SUBMIT"`" >/dev/null
   
# End

Skriptpfad und -name: /usr/local/bin/corelphotopaint-executor

Dann habe ich ein zweites Skript erstellt, das in der Lage ist, ein im Skript definiertes Wine SFS zu laden, bevor es das gewünschte Programm startet und die Datei lädt:
Code:
#! /bin/sh
#------------------------------------------------------------------------------
# Load Wine SFS and execute Windows .exe Application
#------------------------------------------------------------------------------

# Set Name of your Wine SFS here
WineSFS="LP2_Wine.sfs"

FileLoopMnt() { mount |grep loop* |sed 's# .*$##' | while read N
   do losetup-FULL $N |grep $WineSFS |sed 's#^.* .##;s#.$##' ;done ; }
fm=$(FileLoopMnt)

bfm=`basename $fm`
if [ "$bfm" = "" ]; then
   sfs_load --cli --skip-fixmenus --quiet "$WineSFS"
   cp -af "$1" "/root/.wine/drive_c/"
   /usr/local/bin/corelphotopaint-executor "$1" >/dev/null
   #rox "/root/.wine/drive_c"
   cp -af -u "/root/.wine/drive_c/`basename "$1"`" "$1"
   rm -f "/root/.wine/drive_c/`basename "$1"`"
   #######################
   else # [ "$bfm" = "" ];
   #######################
   cp -af "$1" "/root/.wine/drive_c/"
   /usr/local/bin/corelphotopaint-executor "$1" >/dev/null
   #rox "/root/.wine/drive_c"
   cp -af -u "/root/.wine/drive_c/`basename "$1"`" "$1"
   rm -f "/root/.wine/drive_c/`basename "$1"`"
fi

Skriptpfad und -name: /usr/local/bin/defaultcorelphotoeditor

Anschließend noch die Standardaktion für den Dateityp .cpt auf das Kommando, /usr/local/bin/defaultcorelphotoeditor "$@", gesetzt.

Das Mysterium liegt darin begründet, daß echte Windowsprogramme noch nie ein GNU/Linux Dateisystem gesehen haben, und deshalb mit Pfaden, wie: /mnt/sda1, nichts anfangen können. Anders bei z.B. Audacity, das ein Cross-Plattform-Programm ist, welchem (dem Source Code) das GNU/Linux Dateisystem bekannt ist.

Kopiert man nun die übermittelte Datei zuerst nach /root/.wine/drive_c und übermittelt die Datei von dort, dann wird sie anstandslos geladen, sofern das Programm selbst über eine solche Funktion verfügt.

Anschließend kopiert man die Datei mit der Option, -u (für nur Neuere), zurück und entfernt jene am neuen Ort.

Das war's...

Für LazY Puppy Anwender ist es wahrscheinlich sinnvoll, im Skript den Befehl, sfs_load, durch lazy_sfs_load zu ersetzen und den Pfad des SFS nach $LP2BDL/$WineSFS abzuändern. Müßt ihr ausprobieren. Das originale Wine SFS von LazY Puppy heißt: LP2_Wine.sfs und ist unter WineSFS= bereits definiert.

Ich denke, es ist offensichtlich, was geändert werden muß, um diese Skripte für ein anderes Windowsprogramm verwenden zu können.

I'm a Hacker

(Richard Stallman, RSH)

_________________
LazY Puppy
RSH's DNA
SARA B.
Back to top
View user's profile Send_private_message 
slackfan

Joined: 29 Mar 2009
Posts: 133

PostPosted: Thu 21 Aug 2014, 15:01    Post_subject:  

Hab' alles mal testen wollen, aber, wenn ich mich gut erinnere, als Du, als Du Deine ursprüngliche Depository gelöscht hast, da einiges vermasselt: von Corel ist meines Erachtens heute nichts, gar nichts mehr zu finden, und damit auch nicht Veranlassung, nach mehr zu suchen:

Du lebst ja mit den Depots aus Deiner Festplatte!

sollte ich mich irren, nehme ich gern alles zurück, aber momentan sehe ich da nichts...
Back to top
View user's profile Send_private_message 
RSH


Joined: 05 Sep 2011
Posts: 2420
Location: Germany

PostPosted: Thu 21 Aug 2014, 17:47    Post_subject:  

Hallo slackfan.

Die obige Anleitung und die darin enthaltenen Informationen und Skripte sind nicht dafür veröffentlicht worden, um bei Euch anderen Puppy Anwendern Corel-eigene Dateien nach Corel Photopaint senden zu können. Es hat nie ein Wine SFS mit integriertem Corel Photopaint zum Heruntergeladen gegeben, denn Corel Photopaint ist keine Open Source Software. Dieses SFS existiert nur in meiner lokalen Modulsammlung.

Neben Corel Photopaint gibt es andere Programme, die mit Pfaden, die mit /mnt beginnen, nichts anfangen können. Für die Verwendung mit diesen anderen Programmen, müssen die veröffentlichten Skriptbeispiele natürlich angepaßt werden. Also z.B. den Programmpfad, C:\\Corel\\Graphics8\\Programs\photopnt.exe, bearbeiten und an den Programmpfad des gewünschten Programmes angleichen und die Skripte natürlich dem Programm zugeordnet umbenennen.

Gruß,

RSH

P.S.

Sicher gibt es noch eine smartere Möglichkeit, allerdings habe ich bisher keine gefunden.

_________________
LazY Puppy
RSH's DNA
SARA B.

Edited_time_total
Back to top
View user's profile Send_private_message 
RSH


Joined: 05 Sep 2011
Posts: 2420
Location: Germany

PostPosted: Thu 21 Aug 2014, 22:54    Post_subject:  

Und da ist sie auch schon, die smartere Möglichkeit.

Skript 1 folgendermaßen abgeändert:
Code:
#!/bin/bash -a
#------------------------------------------------------------------------------
# Executing Corel Photopaint 8 in Wine and submit a File
# 2014-08-21 RSH for LazY Puppy
#------------------------------------------------------------------------------

SUBMIT="$1"
#exec wine "C:\\Corel\\Graphics8\\Programs\photopnt.exe" "C:\\`basename "$SUBMIT"`" >/dev/null
exec wine start /Unix "/root/.wine/drive_c/Corel/Graphics8/Programs/photopnt.exe $@"
   
# End


Skript 2 folgendermaßen abgeändert:
Code:
#! /bin/sh
#------------------------------------------------------------------------------
# Load Wine SFS and execute Windows .exe Application
#------------------------------------------------------------------------------

# Set Name of your Wine SFS here
WineSFS="LP2_Wine.sfs"

FileLoopMnt() { mount |grep loop* |sed 's# .*$##' | while read N
   do losetup-FULL $N |grep $WineSFS |sed 's#^.* .##;s#.$##' ;done ; }
fm=$(FileLoopMnt)

bfm=`basename $fm`
if [ "$bfm" = "" ]; then
   sfs_load --cli --skip-fixmenus --quiet "$WineSFS"
   /usr/local/bin/corelphotopaint-executor "$1" >/dev/null
   #######################
   else # [ "$bfm" = "" ];
   #######################
   /usr/local/bin/corelphotopaint-executor "$1" >/dev/null
fi

Das Kopieren der übermittelten Datei entfällt nun.

Anscheinend kann man Wine einige Kommandos oder Optionen übermitteln, wie z.B.: start oder /Unix. Die Eingabe # Wine --help im Terminal brachte jedoch nichts dergleichen zutage.

Geoffrey wrote:
I use this command to run windows apps, as an example:
Code:
exec wine start /Unix "/root/.wine/drive_c/Program Files/Foxit Software/Foxit Reader/Foxit Reader.exe $@"


the quotes are needed if there are spaces in the path or file names

_________________
LazY Puppy
RSH's DNA
SARA B.
Back to top
View user's profile Send_private_message 
Display_posts:   Sort by:   
Page 1 of 1 Posts_count  
Post_new_topic   Reply_to_topic View_previous_topic :: View_next_topic
 Forum index » House Training » Users ( For the regulars ) » Für deutschsprachige Anhänger
Jump to:  

Rules_post_cannot
Rules_reply_cannot
Rules_edit_cannot
Rules_delete_cannot
Rules_vote_cannot
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.0721s ][ Queries: 11 (0.0111s) ][ GZIP on ]