View previous topic :: View next topic |
Author |
Message |
Pietschy Apprentice

Joined: 25 Jul 2002 Posts: 237
|
Posted: Sat Feb 08, 2003 1:31 pm Post subject: Wine und Linuxapplikationen |
|
|
Ich weis der Titel ist so ganz vielaussagend aber ich wusste nicht wie ich sonst tun sollte. Ausserdem ist das ganze noch nicht mal ne gentoofrage.
Ok vor kurzen gabs hier eine Thread indem es darum ging, wie man eMule mit Wine zum laufen bringt. Beim ausprobieren hat das ganze auf Anhieb geklappt. Jetzt stell ich mir aber die Frage ob es möglich ware wine zu sagen, das der default windwos Medienplayer zB der linux mplayer ist, sodas man zB bei eMule die Vorschau nutzen kann.
Ich hoffe das hat jetzt jemand verstanden
Ronny |
|
Back to top |
|
 |
Headhunter123 Guru


Joined: 19 Oct 2002 Posts: 509
|
Posted: Sat Feb 08, 2003 2:04 pm Post subject: |
|
|
Imo geht dat net. EMule denkt ja es würde unter Windows laufen, und unter WIndows kann man keine Linuxprogramme ausführen  |
|
Back to top |
|
 |
Pietschy Apprentice

Joined: 25 Jul 2002 Posts: 237
|
Posted: Sat Feb 08, 2003 10:30 pm Post subject: |
|
|
Danke
Ich geb mich aber noch nicht geschlagen, laut wine docu wird das starten von linux applikationen aus wine programmen herraus unterstüzt.
Ronny |
|
Back to top |
|
 |
SuEt Apprentice

Joined: 11 Oct 2002 Posts: 169 Location: Schweiz - Zurich
|
Posted: Sun Feb 09, 2003 1:56 am Post subject: |
|
|
nicht ganz deine frage aber versuch doch einfach mal:
mplayer /pfad/zu/temp/von/emule/filename
SuEt |
|
Back to top |
|
 |
Pietschy Apprentice

Joined: 25 Jul 2002 Posts: 237
|
Posted: Sun Feb 09, 2003 11:15 am Post subject: |
|
|
JO das klappt selbstverständlich, aber es wäre doch schöner und bequemer wenn mein Plan zur Durchführung gekommen ist.
Ronny |
|
Back to top |
|
 |
Headhunter123 Guru


Joined: 19 Oct 2002 Posts: 509
|
Posted: Sun Feb 09, 2003 11:26 am Post subject: |
|
|
Imo geht dat net. Im Emule Source muss irgendwo folgende Zeile stehen (oder so ähnlich)
Code: |
std::string mediaPlayer = "C:\\programme\\mplayer\\mplayer2.exe " + FILE;
ShellExecute (mediaPlayer.c_str(), SW_SHOW);
|
ShellExecute führt ein *Windows* Kommando aus. Da kann man net einfach so einen Linuxbefehl reinhauen. Was *evtl* möglich wäre ist das :
Code: |
std::string mediaPlayer = "cygwin wine H:\\usr\\bin\\mplayer " + FILE;
ShellExecute (mediaPlayer.c_str(), SW_SHOW);
|
Damit würdest du folgendes machen :
Emule ruft cygwin auf, cygwin ruft wine auf, wine ruft den (linux) mplayer auf. Ein Emulator der einen Emulator emuliert
Aber ob das das wahre ist ? |
|
Back to top |
|
 |
zweistein12 n00b

Joined: 21 Nov 2002 Posts: 40
|
Posted: Tue Feb 11, 2003 10:39 am Post subject: |
|
|
Quote: | Code: | std::string mediaPlayer = "C:\\programme\\mplayer\\mplayer2.exe " + FILE;
ShellExecute (mediaPlayer.c_str(), SW_SHOW);
|
|
Ich glaube kaum das ein Win-Prog so einen Pfad Hart codiert hat. Unter Windows wird eigentlich immer die Regestry befragt, wo denn der Standard-Mediaplayer zu finden ist, dieser wird ann entsprechend aufgerufen. SOmit waere es eigentlich moeglich wine sowas beizubringen. Wie weiss ich aber auch nicht. Wine faengt ja den Aufruf an die Registry ab. Am besten mal im Netz schauen, und die Wine-Doku lesen. |
|
Back to top |
|
 |
Headhunter123 Guru


Joined: 19 Oct 2002 Posts: 509
|
Posted: Tue Feb 11, 2003 2:58 pm Post subject: |
|
|
schau mal in die preview.cpp vom Emulesource  |
|
Back to top |
|
 |
Pietschy Apprentice

Joined: 25 Jul 2002 Posts: 237
|
Posted: Mon Feb 17, 2003 6:37 pm Post subject: |
|
|
Sorry ich wollt den Thread nicht einschlafen lassen habe nur irgendwie keine Zeit gehabt weiter zu testen.
@headhunter123
Ich habe dieses oder ähnliche Zeilen in den emule sourcen nicht finden können
emule benutz die Programme für die Vorschau die in der Registrie stehen von daher ist die Registrie das richtige Stichwort.
Folgende Vorgehensweise, bracht bei mir Teilerfolg. Einen unter wine zumindest startbaren WindwosPLayer installieren der in seine optionen eine funktion wie 'Dateientypen verknüpfen' osä hat Dateientypen natürlich gleichmal mit diesem Programm verknüpfen.Der Fusionplayer ging bei mir http://www.shareware.de/software/Programm_Fusion_6733.html
Dann die system.reg öffnen und zusehen das man die Dateinetypen an eine ander exe heftet (kann leider keine Beispiele einfügen, aber man sollte es sehen). Ach ja symlink (mplayer.exe) vom mplayer ins fake windows nicht vergessen sehr hilfreich.
Zumindest ruft emule jetzt den mplayer schonmal auf beim vorschauen, aber dummerweise bekommt mplayer den Windowspfad mitgegeben.
mplayer E:\pfad\video.mpg
son mist an dieses kleine dreckige Hürde hab ich gar nicht gedacht. Aber ich denke mit einem bash script sollte das lösbar sein.
Ronny |
|
Back to top |
|
 |
Pietschy Apprentice

Joined: 25 Jul 2002 Posts: 237
|
Posted: Mon Feb 17, 2003 7:24 pm Post subject: |
|
|
Pietschy wrote: |
Aber ich denke mit einem bash script sollte das lösbar sein.
|
mhhh Große Fresse nix dahinter, ich stehe auf dem Schlauch.
ICh brauch eine zündente idee, wie ich. Aus
E:\donkey\temp\file.mpg >> /windows/E/donkey/temp/file.mpg
mache ??? Mit sed war ich da irgendwie glücklos
Hilf mir ma jemand
Ronny |
|
Back to top |
|
 |
Egal Tux's lil' helper

Joined: 25 Jan 2003 Posts: 99
|
Posted: Tue Feb 18, 2003 2:07 pm Post subject: |
|
|
Zum Konvertieren des Pfades ^^
folgendes C-Programm sollte funktionieren (obwohl es nicht besonders schön ist)
Code: |
#include <stdio.h>
#include <string.h>
int main(int argc, char* argv[]) {
if( argc != 2) {
printf("Usage: convert [filename]\n");
return 1;
}
printf("/windows/E/");
for(int i=3; i<strlen(argv[1]); i++)
if( argv[1][i] == '\\' ) printf("/");
else printf("%c", argv[1][i]);
printf("\n");
}
|
einfach mit gcc [dateiname] -o convert kompilieren und mit.
./convert "[pfad]"
aufrufen
---------------------------------------------------------------------------------------------
was anderes:
Passt jetzt zwar nicht ganz dazu, aber ich hab auch ein kleines Problem mit
winex und eMule .. eMule läuft jetzt, aber wenn ich ein Kontextmenü öffne,
stürzt es immer ab .. hat jemand ne Idee woran das liegen könnte?
output:
Code: |
jupiter@jupiter ~ $ winex --debugmsg +all c:\\eMule-0.26b\\emule.exe
err:win32:PE_fixup_imports No implementation for shlwapi.dll.0(UrlCanonicalizeA) imported from wininet.dll, setting to 0xdeadbeef
err:win32:PE_fixup_imports No implementation for shlwapi.dll.0(UrlEscapeA) imported from wininet.dll, setting to 0xdeadbeef
wine: Unhandled exception, starting debugger...
err:seh:start_debugger Couldn't start debugger ("debugger/winedbg 134688584 136") (2)
Read the Wine Developers Guide on how to set up winedbg or another debugger
err:dc:DCE_FreeWindowDCE [000100ee] GetDC() without ReleaseDC()!
err:dc:DCE_FreeWindowDCE [00010025] GetDC() without ReleaseDC()!
|
die 2 Fehler vor "Unhandled exception ..." kommen ganz am Anfang der Rest erst wenn
ich ein Kontextmenü aufrufe.
--------------------------------
Edit: ich musste noch die msimg32.dll einbinden. Dann gehts .. hat sich also erledigt |
|
Back to top |
|
 |
Pietschy Apprentice

Joined: 25 Jul 2002 Posts: 237
|
Posted: Wed Feb 19, 2003 6:10 pm Post subject: |
|
|
dein winex problem:
Mich dolcht als ob bei die die shlwapi.dll fehlt. Kannst du dir bei www.dll-files.com besorgen und in den system32 ordner deines fakewindows entpacken.
ich benutzt wine nicht winex um emule auszuführen und "nur" version 0.25b von emule bei späteren versionen ist sense sobald ich versuche den einstellungsdialog zu öffen. leider gibts da keine debugmeldungen ich kann dem also nicht nachgehen.
---------------------------------------------------------------------------
Vielen dank für deine kleines prog, ...
... aber ich konnte es nicht übersetzen laut den meldungen stimmt irgendwas in der zeile 12 nicht. Ich hab aber auch keine Ahnung davon, also konnt ichs nicht lösen.
Aber egal. Ich habe mich erstmal wieder meinem bash script gewidmet und bin etwas teifer in die abgründe von sed eingestiegen.
Resultat:
Code: |
#!/bin/bash
#wine mplayer starter mplayer.exe
echo "$1" | sed -e 's|\\|/|g' | sed -e 's|E:|/windows/E|g' > /tmp/mplayer.tmp
mplayer -playlist /tmp/mplayer.tmp
rm -r /tmp/mplayer.tmp
|
Und es funktioniert.
Sprich der symlink von oben weg, das bashscript (mplayer.exe) hin. Vorschau funzt.
Verbesserungsvorschlage zum Script sind aber durchaus willkommen. |
|
Back to top |
|
 |
|