Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: Toegang tot het net vanuit Wine in Linux Lite  (gelezen 1002 keer)

Offline Ran

  • Lid
Toegang tot het net vanuit Wine in Linux Lite
« Gepost op: 2019/01/23, 11:25:32 »
Dag,
Het is een niet gemakkelijk probleem waar ik mee sukkel...
Ik programmeer in Pelle's C in Wine....
Dat werkt eigenlijk prima...
Nu wil ik even het net bereiken en zenden en ontvangen via Winsock...
Mijn programma werkt wel... maar het zenden werkt niet...
Zie mijn bijlage van de console Pelle's C...
De socket wordt gebonden maar zenden lukt niet...
Ik heb ook in VirtualBox en Wmware player het programma geplaatst
en daar zend het programma wel... binding socket ok en sending ok...
Maar aangezien het een 3D programma is dat wel werkt in in Wine
maar geen 3D in de virtuele omgeving (enfin de gratis virtuele machines dan)
kan ik dus ook daarmee niet verder...
Ergens heb ik geprobeerd met setcap net... maar zonder resultaat...
Wat is het gegeven juist... eigenlijk zit het programma te diep genest tov
Z: of C: ... en microsoft vraagt om iedere directory een naam van 8 letters (ten minste)
te geven als oplossing... maar dat kan ik dus niet...
Wie werkt er met Root en setcap en kan me helpen om vanuit Wine te zenden en
ontvangen ?????
Ik ben er al een ganse tijd mee bezig en het is niet evident... het is dus Lunix een Root
of setcap te geven en een programma/directory aan te wijzen die dus wel rechtstreeks
verbinding heeft met het net....
Groetjes en dank...
Fred(Ran)

Offline Bloom

  • Lid
Re: Toegang tot het net vanuit Wine in Linux Lite
« Reactie #1 Gepost op: 2019/01/23, 11:29:53 »
10022 staat voor "invalid argument". Een van de parameters bevat dus tekens die niet toegelaten zijn in Wine. Het kan ook om een rechtenprobleem gaan. Misschien helpt dit bij het zoeken?

Re: Toegang tot het net vanuit Wine in Linux Lite
« Reactie #2 Gepost op: 2019/01/23, 12:28:31 »
Als je overlapped sockets gebruikt, dan krijg je zeker in WINE problemen waardoor als het even had gewerkt, het al gauw zou blokkeren.

Diverse programma's zoals P2P hebben in de Windows versie bijvoorbeeld een optie om overlapped sockets niet te gebruiken.

Omdat je specifieke info over WIN32 nodig hebt, adviseer ik onderstaande artikel wat misschien wat gecompliceerd overkomt.

Socket overlapped I/O versus blocking/nonblocking mode


https://support.microsoft.com/en-us/help/181611/socket-overlapped-i-o-versus-blocking-nonblocking-mode

Citaat

When a socket is created, by default it is a blocking socket. You can use the FIONBIO command in the ioctlsocket API call, WSAEventSelect, or WSAAysncSelect to change the socket mode from blocking to nonblocking. If a Winsock call cannot complete immediately, the call fails and WSAGetLastError returns a WSAEWOULDBLOCK error if it's a nonblocking socket, or the call blocks until the operation completes if it's a blocking socket.

« Laatst bewerkt op: 2019/01/23, 12:31:44 door Geert Jalink »
motion@home:~$ sudo apt-get install steam

Offline Ran

  • Lid
Re: Toegang tot het net vanuit Wine in Linux Lite
« Reactie #3 Gepost op: 2019/01/23, 13:43:48 »
Ja ik heb ook al veel gezocht op internet...
Het belangrijkste dat ik ooit vond was deze site...
https://social.msdn.microsoft.com/Forums/ie/en-US/3076a9cd-57a0-418d-8de1-07adc3b486bb/socket-fails-with-error-10022-when-application-is-run-from-certain-network-shares-on-vista-and?forum=wsk

Waar microsoft ook een soort update heeft dat ik spijtig genoeg in Wine niet kan toepassen... groeten...

Re: Toegang tot het net vanuit Wine in Linux Lite
« Reactie #4 Gepost op: 2019/01/23, 16:57:29 »
Ja ik heb ook al veel gezocht op internet...
Het belangrijkste dat ik ooit vond was deze site...
https://social.msdn.microsoft.com/Forums/ie/en-US/3076a9cd-57a0-418d-8de1-07adc3b486bb/socket-fails-with-error-10022-when-application-is-run-from-certain-network-shares-on-vista-and?forum=wsk

Waar microsoft ook een soort update heeft dat ik spijtig genoeg in Wine niet kan toepassen... groeten...

De belangrijkste reden waarom je geen overlapped sockets mag gebruiken is dat Windows 7 met hezelfde probleem zit als WINE op GNU/LINUX. Programma's die jouw mogelijk zelfde paradigma gebruiken met WinSock plaagt ook Windows Software die echt louter op Windows zelf draait. Microsoft Windows zit dus ook in het schuitje als WINE zelf. Ik hoop dat je andere methoden kan vinden dan WinSock, er is bijvoorbeeld een reden dat software zoals Universal Media Server op OpenJDK of JAVA van Oracle draait.

Overlapped sockets zijn ook op Windows 7 en hoger uitgesloten van stabiliteit. De enige manier die dan overblijft is om te leren om geen Overlapped Sockets te gebruiken, dan zal het werken in alle Windows versies sinds XP en hoger en WINE.

P2P software op Windows gebruikt ook geen Overlapped Sockets, en oudere software waarbij ontwikkelaars ondanks open source aangeven hebben de optie gemaakt ' GEEN OVERLAPT SOCKECTS '.

Daarom dat belangrijke software voor multiple platforms met netwerk mogelijkheden gebruik maakt van OpenJDK en JAVA. Ondanks dat bijvoorbeeld Universal Media Server prima in native Linux had gedaan kunnen worden.

One more Thing, ARM CPU Architectuur komt er snel aan en zal gaan concurreren met x86/x64AMD en je zal dan zowieso ARM architectuur niet ondersteunen.

Ik ervaar geen enkele problemen met software die in WINE de configuratie heeft Overlapped Sockets uit te schakelen.

Je kan kijken of je een betere optie hebt bij het maken van een Socket, zowieso mag het geen Overlapped Socket zijn in WINE. Ik vermoed dat de ontwikkelaars achter WINE gezien dit soort sockets ook vanaf Windows 7 problemen geeft er daarom geen ondersteuning voor maken of het omzeilen. Zelfs met een lege IPTABLES werkte een WIN32 .exe programma korte tijd maar toen ik Overlapped Sockets uitschakelde voor dat programma werkte het feilloos op WINE.

Je kan dit wel degelijk prima doen bij het maken van de Socket, andere software doet dat ook optioneel. Het kwam met name sinds Windows 7 in beeld.

Daarnaast zijn er uiteraard Semaphores en MUTEXES, en Thread Dead Locks als je Overlapped Sockets gebruikt.

In Windows zitten heel veel dingen achter de schermen die in de broncode van Windows zelf software bugs omzeilen.

En WINE zal waarschijnlijk nooit BUGS in implementatie van User Land Software zoals de JOUWE wat feitelijk Microsoft zijn schuld is, willen omzeilen.

Microsoft heeft grote problem om zelfs hun eigen software compatible te houden. Er zijn genoeg websites voor code review over de broncode van Windows, en Windows zit echt vol met omzeilen van bugs in software van grote fabrikanten.

Je bent geen grote fabrikant. Ik ook niet, WINE ook niet. Maar STEAM wel. En daarom is er binnenkort een speciale versie van WINE genaamd ELECTRON.

Er is vast een alternatief desnoods SDL, waarvoor zie Wikipedia, dat is multiplatform. Gebruik maken van architectuur uit een lang verleden werkt gelukkig vaak op WINE en Windows.

Zelf heb ik ook wel wat klachten over WINE, met name dat software probleemloos werkt behalve dat ik met ALT-M het menu op moet roepen, en het gewoon doet, maar bijvoorbeeld dat het menu niet met de muis werkt.

Windows, bij Microsoft programmeerden ze zovaak om User Software implementaties heen, dat is eigenlijk vooral in het register van Windows 95 al duidelijk, waarbij voor honderden software programma's workarounds in Windows zitten.

Linux en WINE hebben een ander motto, het is op WINE de software die correct moet zijn, en workarounds zijn er liever niet.
motion@home:~$ sudo apt-get install steam

Offline Ran

  • Lid
Re: Toegang tot het net vanuit Wine in Linux Lite
« Reactie #5 Gepost op: 2019/01/23, 18:41:26 »
Geert Jalink en Bloom... hartelijk dank...
En Geert, ik ga het even grondig bestuderen... en je hebt natuurlijk
gelijk, ergens is de software (Windows) een soort warboel geworden...
Ik kocht een acer Kaby Lake processor waar ik nu op werk zelfs daar
kan ik na een dual Lunix/Windows 10 zelfs geen enkele werkende
acer grafische driver vinden die mij gewoon een 3D beeld kan geven...
alle acer drivers worden door Windows 10 verworpen... Acer heb ik
gemaild maar ik krijg ook daar geen antwoord... ze weten het niet...
Nu ja mijn werkstation is al jaren Linux en ik heb dus Win 10 weggedaan
en ja ik kan er ook Win 7 niet meer installeren... maar ok dat geeft
eigenlijk ook niet meer...
En inderdaad waar ik ooit zocht vond ik veel veronderstellingen maar
nooit werkende oplossingen...
Nu ik zal uw mail goed bestuderen nu ik een pad heb om te volgen...
hartelijk dank daarvoor...
Fred (Ran)   

Offline Ran

  • Lid
Re: Toegang tot het net vanuit Wine in Linux Lite
« Reactie #6 Gepost op: 2019/01/23, 18:47:18 »
Apropos... als ik een oplossing vind... post ik het hieronder...  :)

Offline Ran

  • Lid
Re: Toegang tot het net vanuit Wine in Linux Lite
« Reactie #7 Gepost op: 2019/01/29, 16:21:36 »
Wel ik kan nu via windows 7 ook weer verder programmeren daar ik
op Kaby Lake i5 7200u een oplossing heb gevonden om er windows 7
op te plaatsen niet zonder wat zoeken en wat problemen maar het
werkt perfect... dus winsock werkt via het programma perfect
momenteel... maar vanuit Wine krijg ik nog geen verbinding via
een socket... SDL ook al geprobeerd... ik kijk nog verder... maar
gelukkig... of juist niet... geeft Win 7 mij nog mogelijkheid om
via socket naar buiten te gaan... ergens had ik nooit de bedoeling
om windows er terug op te plaatsen...
Socket onder UNIX heb ik ook bekeken en geprobeerd maar dat is
ook problematisch... ergens vindt ja gewoon nooit alle headers die
je nodig hebt en sommige headers roepen zelfs soms zichzelf op...
GNU is bijna niet doenbaar.... winsock is simpel tov UNIX socket eigenlijk...
Enfin... ik hoop toch iets te vinden om vanuit Wine te communiceren...
 :)