Verschillen tussen Windows versies (hoe te vinden)

Pagina: 1
Acties:

  • Skinkie
  • Registratie: Juni 2001
  • Laatst online: 09-06-2020

Skinkie

Op naar de 500

Topicstarter
Tijdens mijn ontwikkelwerk aan een crossplatform educatie tool (http://www.speakgoodchinese.org/) ben ik achter erg merkwaardige verschillen gekomen tussen verschillende WinXP versies. Sommige gebruikers kunnen het programma niet eens starten, anderen hebben hebben een probleem bij het opnemen van het geluid.

Het gaat hierbij om identieke installaties van het programma. De problemen met de audio heb ik opgelost door niet rechtstreeks aan het audio verwerkings programma te linken, maar via shell calls iets externs op te starten. Maar de problemen met de basis libraries, in dit geval Cairo (onderdeel van GTK+) zijn totaal nieuw voor mij.


Ik ben op zoek naar een tool die ik gebruikers van WinXP kan geven om te checken welke systeem bibliotheken ze hebben. Het oplossen van het probleem is ook een optie, maar dat gaat wat moeilijk... als je zelf geen systeem hebt waarop het werkt en waarop het niet werkt.

Het programma laat zich onder andere Linux 'gewoon' werken... zonder 'vieze' shell truckjes. Alles is dan ook in plain C geschreven, en behalve Microsoft de schuld geven van bug-incompatible Windows versies kom ik ook niet.


Alles wordt op een Linux installatie gecompileerd met MingW32. (Inclusief de bijbehorende GTK+ bibliotheken.)

Steun Elkaar, Kopieer Nederlands Waar!


  • MuddyMagical
  • Registratie: Januari 2001
  • Laatst online: 16:22
Ik weet niet hoe je kan uitlezen welke libs er zijn geinstalleerd.
Maar als je bijvoorbeeld VMware installeerd heb je een mogelijkheid om te testen op verschillende installatie's. Persoonlijk zou ik toch proberen om het probleem op te lossen.

  • Free rider
  • Registratie: November 2006
  • Laatst online: 26-01 23:56
Als het probleem een ontbrekende dll is, moet je eens naar de Dependency Checker kijken. Deze zit in de Platform SDK (gratis download) wordt meegeleverd met Visual Studio (en wellicht nog andere ontwikkelomgevingen). Het programma heet Depends.exe, en toont de dlls waar een exe of dll van afhankelijk is. Mocht deze niet gevonden worden dan wordt de dll in het rood getoond.

Als je systeem voldoende krachtig is kan je Virtual PC installeren en een image aanmaken met een kale Windows installatie. Daarna ga steeds meer software installeren (bv. IE, MS Office, MDAC, .NET Framework) totdat je software werkt.

Verwijderd

Aangezien je een POSIX-systeem zoals MinGW gebruikt, kan je 'ldd' te gebruiken voor een lijst met dependencies. Bij dependency errors worden de missende libraries vermeld.

In de tutorial van Autopackage zie je ook een manier om de dependencies zoveel mogelijk te beperken. Het is altijd goed om alleen dependencies te hebben die je ook daadwerkelijk gebruikt. Dat maakt het lichter, makkelijker te packagen en makkelijker te porten.

  • Skinkie
  • Registratie: Juni 2001
  • Laatst online: 09-06-2020

Skinkie

Op naar de 500

Topicstarter
Het is zeker geen dependancy probleem. All dll's worden geresolved. (Sterker nog: alle bijbehorende bibliotheken worden meegeleverd (onder mingw32 gecompiled) en het totaal wordt eerst onder Wine getest.) Maar het gaat fout op de meest bizare dingen.


Een foutmelding van een gebruiker:
C:\Program Files\SpeakGoodChinese>singleword
Assertion failed: scaled_font->ref_count > 0, file cairo-scaled-font.c, line 607


This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.

C:\Program Files\SpeakGoodChinese>
Nu is Cairo toch wel de basis van het geheel, maar in godesnaam waarom draait het wel bij die persoon wel op WinXP Home en niet op WinXP Pro :{ Dit is niet eens de vaagste foutmelding om te zien.


Mijn probleem is dus: Ik weet niet met *welke* installaties het mis gaat, en zoek dus een tool om dat te kunnen vergelijken. Zit er in Windows niet iets slims om de versies van de systeem bibliotheken op te sommen?

Steun Elkaar, Kopieer Nederlands Waar!


  • Free rider
  • Registratie: November 2006
  • Laatst online: 26-01 23:56
Je kan met Windows Explorer eenvoudig alle aanwezige dlls, en hun versienummers opzoeken. Het zijn er duizenden, aannemend dat je werkt met kale basissystemen waarop niets geinstalleerd is. Als er software op geinstalleerd is kan het in de tienduizenden lopen.

Op sysinternals staat een utility (proces explorer) die alle processen toont, net als task manager, maar ook nog alle dlls die door ieder proces worden gebruikt. Gebruik deze als je de software wel kan starten.

NB: Ik heb nog nooit van Cairo gehoord, maar het lijkt me dat de producent de systeemeisen heeft gepubliceerd. Wellicht zit daar een aanwijzing.

[ Voor 3% gewijzigd door Free rider op 05-08-2007 12:05 ]


  • roy-t
  • Registratie: Oktober 2004
  • Laatst online: 01-02 08:49
Skinkie schreef op zondag 05 augustus 2007 @ 01:59:
Het is zeker geen dependancy probleem. All dll's worden geresolved. (Sterker nog: alle bijbehorende bibliotheken worden meegeleverd (onder mingw32 gecompiled) en het totaal wordt eerst onder Wine getest.) Maar het gaat fout op de meest bizare dingen.


Een foutmelding van een gebruiker:


[...]


Nu is Cairo toch wel de basis van het geheel, maar in godesnaam waarom draait het wel bij die persoon wel op WinXP Home en niet op WinXP Pro :{ Dit is niet eens de vaagste foutmelding om te zien.


Mijn probleem is dus: Ik weet niet met *welke* installaties het mis gaat, en zoek dus een tool om dat te kunnen vergelijken. Zit er in Windows niet iets slims om de versies van de systeem bibliotheken op te sommen?
Installeer Visual Studio op de windows pc, en draai het programma nog een keer, dan krijg je naast het knopje "programma sluiten" ook de optie "Fout Opsporen" daarna kom je precies in het stukje gecompilde code wat fout gaat.

Zowiezo klinkt het hier alsof je met Wine windows XP test, probeer eens zelf met een echte windows XP te testen (is toch net wat anders)

Verder omdat het chinees is, standaard windows XP pc kunnen niet goed overweg met unicode/chinese karakters.

EDIT: ik download het nu voor de gein even, kijken of ik iets vind.

Edit2: het programma werkt redelijk bij me: sommige tekens worden veranderd naar cijfers ipv naar accenten, verder start je het programma met een bat bestand? |:(
code:
1
2
3
@echo off
cd /d %~dp0
sgc.exe

Sorry maar? kinda useless? en kan alleen nog meer problemen veroorzaken.


Ook heb je inderdaad netjes libs mee gestuurd, maar alleen zelfgemaakte libs, misschien dat er toch unicodelibs e.d. missen.

en:
code:
1
2
>singleword
Assertion failed: scaled_font->ref_count > 0, file cairo-scaled-font.c, line 607

Je hebt dus blijkbaar een functie voor een enkel woord (zie ik ook in je programma) er gaat iets fout met het cairo-scaled-font (een lettertype dus) heb je daar al verder naar gekeken (niet eens zo'n heel vage error eigenlijk)


Ik zou iig proberen om op windows om het bat bestand heen te werken, gebruik gewoon netjes
C:\sgc.exe -singleword en
C:\sgc.exe -normal
als commandline parameters voor je snelkoppelingen ipv het bat bestand.

probeer windows compatible software even uit op echte windows met ontwikkelomgeving geinstalleerd zo kom je toch wat problemen tegen omdat whine niet exact windows is.

Ook heb je in C misschien de neiging om zo direct mogelijk tegen de hardware te praten, maar Windows XP (en Vista helemaal) vinden dat niet zo leuk, en dit kan ook problemen veroorzaken met bijzondere hardware.

verder kan ik de fout niet herproduceren helaas, maarja deze machine loopt al meer dan 2jr dus heeft zijn libjes wel voor elkaar.

Nu ik hoop dat je met dit zooitje brainfarts weer iets verder komt, geen oplossingen helaas.

EDIT: Oh en plzz give uninstaller in het startmenu!!

[ Voor 38% gewijzigd door roy-t op 05-08-2007 14:17 ]

~ Mijn prog blog!


  • Skinkie
  • Registratie: Juni 2001
  • Laatst online: 09-06-2020

Skinkie

Op naar de 500

Topicstarter
therat10430 schreef op zondag 05 augustus 2007 @ 14:02:
Installeer Visual Studio op de windows pc, en draai het programma nog een keer, dan krijg je naast het knopje "programma sluiten" ook de optie "Fout Opsporen" daarna kom je precies in het stukje gecompilde code wat fout gaat.
Interessant ga ik eens bekijken op een PC die dood gaat...
Zowiezo klinkt het hier alsof je met Wine windows XP test, probeer eens zelf met een echte windows XP te testen (is toch net wat anders)
Ik heb in Qemu een ander probleem in de basis van dit programma, iets *echt* heel vaags (reproduceerbaar), en VMware werd bij m'n huidige kernel onstabiel. Dus op onze compile doos draait wine :)
Verder omdat het chinees is, standaard windows XP pc kunnen niet goed overweg met unicode/chinese karakters.
Zit geen chinees karakters is het hele programma ;)
EDIT: ik download het nu voor de gein even, kijken of ik iets vind.

Edit2: het programma werkt redelijk bij me: sommige tekens worden veranderd naar cijfers ipv naar accenten, verder start je het programma met een bat bestand? |:(
code:
1
2
3
@echo off
cd /d %~dp0
sgc.exe

Sorry maar? kinda useless? en kan alleen nog meer problemen veroorzaken.
Niet clueless... dit is de enige fix om circa 200 regels C code te reduceren tot een portabele (lees: win32) fix. Het programma moet weten waar hij vanuit opstart. Momenteel heeft NSIS geen enkele optie om het 'pad' van de snelkoppeling te zetten naar het pad waar het programma is geinstalleerd. Zonder dat pad kan de mappenstructuur niet worden ingelezen. Er is een fix voor die zit in 'The Gimp' voor Win32, maar ik had even wat anders te doen, en dit was de eenvoudigiste fix die bij iedereen werkt.
Ook heb je inderdaad netjes libs mee gestuurd, maar alleen zelfgemaakte libs, misschien dat er toch unicodelibs e.d. missen.

en:
code:
1
2
>singleword
Assertion failed: scaled_font->ref_count > 0, file cairo-scaled-font.c, line 607

Je hebt dus blijkbaar een functie voor een enkel woord (zie ik ook in je programma) er gaat iets fout met het cairo-scaled-font (een lettertype dus) heb je daar al verder naar gekeken (niet eens zo'n heel vage error eigenlijk)
Dit is een gui, net als sgc.exe alleen gelimiteerd tot het intikken van woorden. Het vreemde is, bij sommige mensen werkt dit dus gewoon. Zonder foutmeldingen etc. Ik ben echt benieuwd *waarom* dat is.
Ik zou iig proberen om op windows om het bat bestand heen te werken, gebruik gewoon netjes
C:\sgc.exe -singleword en
C:\sgc.exe -normal
als commandline parameters voor je snelkoppelingen ipv het bat bestand.
Zoals ik al schreef moet eerst die 'waar sta ik op de hardeschijf'-fix worden geimplementeerd/gekopieerd van 'The Gimp' dan kunnen dit soort commandline truckjes zeker de weg vinden naar het programma.
Ook heb je in C misschien de neiging om zo direct mogelijk tegen de hardware te praten, maar Windows XP (en Vista helemaal) vinden dat niet zo leuk, en dit kan ook problemen veroorzaken met bijzondere hardware.
De basis van het programma communiceert met 'Praat' een programma dat z'n sporen verdient heeft in cross-platform audio. Maar ik ben duidelijk niet in staat geweest om er tegen te linken zonder WinXP problemen te voorkomen. Het zal duidelijk Visual Studio moeten worden, of iets anders wat me kan helpen.
EDIT: Oh en plzz give uninstaller in het startmenu!!
Zal ik regelen ;)

Steun Elkaar, Kopieer Nederlands Waar!


  • Xiphalon
  • Registratie: Juni 2001
  • Laatst online: 17:09
therat10430 schreef op zondag 05 augustus 2007 @ 14:02:
[...]
EDIT: Oh en plzz give uninstaller in het startmenu!!
Die hoort daar niet, in windows hoort 'ie in de add/remove programs lijst.

  • Skinkie
  • Registratie: Juni 2001
  • Laatst online: 09-06-2020

Skinkie

Op naar de 500

Topicstarter
darkmage schreef op zondag 05 augustus 2007 @ 18:46:
[...]


Die hoort daar niet, in windows hoort 'ie in de add/remove programs lijst.
Zal eens kijken of de installatie wordt geregistreerd. Volgens mij was dat nu juist wel een standaard optie. Overigens wist de installer alles behalve user generated content.

Steun Elkaar, Kopieer Nederlands Waar!


  • Xiphalon
  • Registratie: Juni 2001
  • Laatst online: 17:09
Skinkie schreef op zondag 05 augustus 2007 @ 19:00:
[...]

Zal eens kijken of de installatie wordt geregistreerd. Volgens mij was dat nu juist wel een standaard optie. Overigens wist de installer alles behalve user generated content.
En dat is prima!

[back on-topic]is DEP geen oorzaak van het crashen?

  • roy-t
  • Registratie: Oktober 2004
  • Laatst online: 01-02 08:49
darkmage schreef op zondag 05 augustus 2007 @ 18:46:
[...]


Die hoort daar niet, in windows hoort 'ie in de add/remove programs lijst.
Stond ie ook niet ;) de uninstaller stond alleen in de installatie map, en liet daarna de helft van de bestanden nog staan ook :)

Btw, sorry voor mijn misschien harde kritieken vooral over dat bat bestand! (AARG bat bestanden) Maar ik zie dus dat dat een goede reden heeft (hoewel het idioot blijft dat C blijkbaar geen App.path heeft of iets dergelijks).

Hmm er komen geen chinese tekens invoor? :P was ik kinda van uit gegaan. toch raar dat ik in sommige woorden (onderin) een 3 kreeg, dacht dat dat speciale tekens moesten zijn.

Als je er achter bent hoe het probleem te reproduceren is wil ik het wel even over mijn xp machine gooien, geef maar een dmmetje dan (vergeet dit topic misschien)

~ Mijn prog blog!


  • Skinkie
  • Registratie: Juni 2001
  • Laatst online: 09-06-2020

Skinkie

Op naar de 500

Topicstarter
therat10430 schreef op maandag 06 augustus 2007 @ 11:04:
Stond ie ook niet ;) de uninstaller stond alleen in de installatie map, en liet daarna de helft van de bestanden nog staan ook :)
Dat hij niet in dat lijstje staat is gewoon dom van me, want dat had ik bent uit de NSIS docs kunnen halen. Dat 'de helft' blijft staan. Heeft een reden. Als je meer data download en wat met de voorbeeld downloads doet (zoals lijsten bewerken) wil je niet dat 70MB aan voorbeelden worden gegegooid. Maar je hebt overigens wel een punt :)
Btw, sorry voor mijn misschien harde kritieken vooral over dat bat bestand! (AARG bat bestanden) Maar ik zie dus dat dat een goede reden heeft (hoewel het idioot blijft dat C blijkbaar geen App.path heeft of iets dergelijks).
Windows heeft dat niet, Linux wel. Of eigenlijk: Linux heeft een eenvoudigere manier om dit te doen. Als ik alleen al die snelkoppeling zou kunnen aanpassen was ik er ook geweest. Geen .bat bestand nodig.
Hmm er komen geen chinese tekens invoor? :P was ik kinda van uit gegaan. toch raar dat ik in sommige woorden (onderin) een 3 kreeg, dacht dat dat speciale tekens moesten zijn.
Documentatie niet gelezen ;) Dat is nu Pinyin. Pinyin is een vorm van 'chinees' in dit gevan Mandarijn waarin je het woord schrijft en in welke 'toon' je die moet uitspreken. Een 1 staat bijvoorbeeld voor: "houd de toon hoog aan". Het doel van deze software is om de toonuitspraak (pitch curves) te leren en weten hoe je Pinyin uitspreekt.
Als je er achter bent hoe het probleem te reproduceren is wil ik het wel even over mijn xp machine gooien, geef maar een dmmetje dan (vergeet dit topic misschien)
En dat is nu direct het probleem :) Ik vond die Data Execution Prevention overigens een *hele* goede tip.

Steun Elkaar, Kopieer Nederlands Waar!


  • Skinkie
  • Registratie: Juni 2001
  • Laatst online: 09-06-2020

Skinkie

Op naar de 500

Topicstarter
Ik hoor net van 1 persoon dat DEP uitzetten niet werkt. Maar ik haal DEP nog niet van de lijst met mogelijke oorzaken.

Steun Elkaar, Kopieer Nederlands Waar!


  • leuk_he
  • Registratie: Augustus 2000
  • Laatst online: 28-01 19:27

leuk_he

1. Controleer de kabel!

Bij eMule krijg je een "minidump" die door de developer kunnen worden geanalyseerd. Geen idee of dit te porten is van de Microsoft visual studio MFC c++ omgeving naar mingw

hier:

http://www.codeproject.com/debug/crash_report.asp

Need more data. We want your specs. Ik ben ook maar dom. anders: forum, ff reggen, ff topic maken
En als je een oplossing hebt gevonden laat het ook ujb ff in dit topic horen.


  • Skinkie
  • Registratie: Juni 2001
  • Laatst online: 09-06-2020

Skinkie

Op naar de 500

Topicstarter
http://www.chinese-forums...hmentid=1290&d=1186412322

Dit heeft een van de gebruikers opgeslagen. Geen idee waarmee dit 'standaard' uit te lezen is. Het is een windows dump.

Steun Elkaar, Kopieer Nederlands Waar!


  • _js_
  • Registratie: Oktober 2002
  • Laatst online: 13-01 07:19
Ik zie de attachment niet want je moet inloggen, maar over het algemeen kun je windows dumps uitlezen met de windows debugging tools van microsoft (gratis).

Ik denk dat het handig is om te kijken waarom je reference count 0 is, blijkbaar mist er toch ergens een font of een dll bij die mensen, dus kijk in (post eventueel hier) dat deel code waar de assert zit en het deel waar de reference count verhoogt wordt.

  • farlane
  • Registratie: Maart 2000
  • Laatst online: 01-02 13:20
Skinkie schreef op maandag 06 augustus 2007 @ 17:08:
http://www.chinese-forums...hmentid=1290&d=1186412322

Dit heeft een van de gebruikers opgeslagen. Geen idee waarmee dit 'standaard' uit te lezen is. Het is een windows dump.
Dr Watson kan wat met minidumps en ook de MS debugger windbg.

How to gather information after a memory dump in Windows XP

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


  • Skinkie
  • Registratie: Juni 2001
  • Laatst online: 09-06-2020

Skinkie

Op naar de 500

Topicstarter
Voor de mensen die zouden willen kijken hier een 'dutch' mirror ;)

http://uva.hobby-site.com/~skinkie/f4f1_appcompat.txt

Steun Elkaar, Kopieer Nederlands Waar!


  • 0siris
  • Registratie: Augustus 2000
  • Laatst online: 31-01 09:48
Skinkie schreef op zaterdag 04 augustus 2007 @ 16:27:
Tijdens mijn ontwikkelwerk aan een crossplatform educatie tool (http://www.speakgoodchinese.org/) <knip>
Moet dit niet "well" als bijwoord zijn? Dus speak chinese well? Of mis ik nu een grap a la de site van Engrish.com?

ach...in een volgend leven lach je er om!


  • roy-t
  • Registratie: Oktober 2004
  • Laatst online: 01-02 08:49
*speelt nog weer even verder met je prog*

Ik zit nu toevallig achter een leuk win98 systeempje en kom daar nog wat meer dingen tegen, die misschien direct of indirect kunnen helpen

(je bat bestandjes werken niet onder 98, de enige uitvoer die je krijgt is een dos-prompt met "OFF" als uitvoer, geen programma start)

Als ik het programma handmatig start krijg ik de volgende error (die misschien wat betekend)

code:
1
Het bestand LIBPRAAT.DLL is gekoppeld aan ontbrekende uitvoer SHELL32.DLL:SHGetSetSettings.

(dit kan natuurlijk ook komen doordat het programma nu door niet werkende batbestanden niet weet waar het is)

Verder, even over andere manieren om met c de working directory te vinden:
code:
1
2
3
4
5
6
7
8
9
Voorbeeld: C-functies Geïntegreerd bestandssysteem
Dit eenvoudige programma in C-taal laat het gebruik van een aantal functies van het geïntegreerde bestandssysteem zien.

Het programma voert de volgende bewerkingen uit:

1 
Gebruikt de functie getuid() om het echte gebruikers-ID (uid) vast te stellen. 
2 
Gebruikt de functie getcwd() om de actieve directory vast te stellen.

http://publib.boulder.ibm...rzaaxcfunctionexample.htm
(maar weet niet zeker of dat voor windows is)

En ja verder kon ik ook weinig tot niks vinden :S toch kan ik me niet voorstellen dat al die in c geschreven windows programma's een of andere "hack" nodig hebben om de current directory te vinden

~ Mijn prog blog!


  • Skinkie
  • Registratie: Juni 2001
  • Laatst online: 09-06-2020

Skinkie

Op naar de 500

Topicstarter
therat10430 schreef op maandag 06 augustus 2007 @ 19:38:
*speelt nog weer even verder met je prog*

Ik zit nu toevallig achter een leuk win98 systeempje en kom daar nog wat meer dingen tegen, die misschien direct of indirect kunnen helpen

(je bat bestandjes werken niet onder 98, de enige uitvoer die je krijgt is een dos-prompt met "OFF" als uitvoer, geen programma start)

Als ik het programma handmatig start krijg ik de volgende error (die misschien wat betekend)

code:
1
Het bestand LIBPRAAT.DLL is gekoppeld aan ontbrekende uitvoer SHELL32.DLL:SHGetSetSettings.

(dit kan natuurlijk ook komen doordat het programma nu door niet werkende batbestanden niet weet waar het is)
Nope, iets in praat heeft SHGetSetSettings nodig dat zit alleen in Win2k of groter (volgens mingw).
Verder, even over andere manieren om met c de working directory te vinden:
code:
1
2
3
4
5
6
7
8
9
Voorbeeld: C-functies Geïntegreerd bestandssysteem
Dit eenvoudige programma in C-taal laat het gebruik van een aantal functies van het geïntegreerde bestandssysteem zien.

Het programma voert de volgende bewerkingen uit:

1 
Gebruikt de functie getuid() om het echte gebruikers-ID (uid) vast te stellen. 
2 
Gebruikt de functie getcwd() om de actieve directory vast te stellen.

http://publib.boulder.ibm...rzaaxcfunctionexample.htm
(maar weet niet zeker of dat voor windows is)

En ja verder kon ik ook weinig tot niks vinden :S toch kan ik me niet voorstellen dat al die in c geschreven windows programma's een of andere "hack" nodig hebben om de current directory te vinden
getcwd voor het start menu wordt volgens mij c:\winxp\desktop etc. dat is het probleem. Ik heb dus de directory nodig waar de executable *zelf* staat. Maar goed, de implementatie ervan zit in 'The Gimp' maar ik wil het echt geen prioriteit maken als er belangrijkere dingen kapot zijn.

Steun Elkaar, Kopieer Nederlands Waar!


  • SKiLLa
  • Registratie: Februari 2002
  • Niet online

SKiLLa

Byte or nibble a bit ?

Lijkt me gewoon versie conflicten van shared DLLs. Dependy Walker kan je daar inderdaad mee helpen. DEP aan levert mogelijk Access Violations op, meestal gevolgd door een 0xC000005.

Die memory dumps zitten vol met info, stack traces, versie omschrijvingen & paden van geladen DLLs, etc. De Windows DDK Debugger is niet echt fijn om mee te werken (OllyDBG rulez), maar ik vermoed dat die dumps je wel de meeste info kunnen geven.

Heb je ook aan Administrator vs. user-rechten gedacht ?

'Political Correctness is fascism pretending to be good manners.' - George Carlin


  • Free rider
  • Registratie: November 2006
  • Laatst online: 26-01 23:56
Skinkie schreef op maandag 06 augustus 2007 @ 19:48:
getcwd voor het start menu wordt volgens mij c:\winxp\desktop etc. dat is het probleem. Ik heb dus de directory nodig waar de executable *zelf* staat. Maar goed, de implementatie ervan zit in 'The Gimp' maar ik wil het echt geen prioriteit maken als er belangrijkere dingen kapot zijn.
Het volledige pad naar een dll of exe in het actieve proces vraag je op met GetModuleFileName().

  • ParaNoiMia
  • Registratie: Mei 2000
  • Laatst online: 26-01 22:14
Ik heb net even zitten rondklikken in SingleWord en ik zie op een gegeven moment dit:

code:
1
2
3
4
5
6
7
8
Error: The value of the 'if' condition is undefined.
Script line 234 not performed or completed:
\<< if minimumModelFzero > 0 \>>
Script "C:\bsProgram Files\bsSpeakGoodChinese\bsSGC_ToneProt\bsSGC_ToneProt.praa
t" not completed.
Praatcon.exe: command file "C:\bsProgram Files\bsSpeakGoodChinese\bsSGC_ToneProt
\bsSGC_ToneProt.praat ..\bsrecords\bssingleword.wav test 200 3 none 0" not compl
eted.


Het programma is echt in c:\Program Files\SpeakGoodChinese geinstalleerd en verzint om 1 of andere reden BS erbij in het pad ? Het is dan logisch dat er bepaalde dingen niet gevonden kunnen worden.

Ik zeg niet dat het hieraan ligt, maar ik kan me voorstellen als jij een lib aan wil roepen en dat pad staat fout, zou dat wellicht de fout kunnen geven.

[ Voor 9% gewijzigd door ParaNoiMia op 06-08-2007 23:06 ]


  • leuk_he
  • Registratie: Augustus 2000
  • Laatst online: 28-01 19:27

leuk_he

1. Controleer de kabel!

bevat tekst als: (deel)
code:
1
2
3
4
5
<EXE NAME="sgc.exe" FILTER="GRABMI_FILTER_PRIVACY">
    <MATCHING_FILE NAME="libatk-1.0-0.dll" SIZE="768114" CHECKSUM="0xC80A17D" BIN_FILE_VERSION="1.12.4.0" BIN_PRODUCT_VERSION="1.12.4.0" PRODUCT_VERSION="1.12.4" FILE_DESCRIPTION="atk" COMPANY_NAME="Sun Microsystems Inc." PRODUCT_NAME="atk" FILE_VERSION="1.12.4.0" ORIGINAL_FILENAME="libatk-1.0-0.dll" INTERNAL_NAME="libatk-1.0-0" LEGAL_COPYRIGHT="Copyright © Sun Microsystems Inc." VERFILEDATEHI="0x0" VERFILEDATELO="0x0" VERFILEOS="0x4" VERFILETYPE="0x2" MODULE_TYPE="WIN32" PE_CHECKSUM="0xC235B" LINKER_VERSION="0x10000" UPTO_BIN_FILE_VERSION="1.12.4.0" UPTO_BIN_PRODUCT_VERSION="1.12.4.0" LINK_DATE="06/21/2007 13:36:17" UPTO_LINK_DATE="06/21/2007 13:36:17" VER_LANGUAGE="English (United States) [0x409]" />
    <MATCHING_FILE NAME="libcairo-2.dll" SIZE="2101528" CHECKSUM="0xA0213AEE" MODULE_TYPE="WIN32" PE_CHECKSUM="0x20BB4E" LINKER_VERSION="0x10000" LINK_DATE="06/22/2007 12:46:55" UPTO_LINK_DATE="06/22/2007 12:46:55" />
    <MATCHING_FILE NAME="libfontconfig-1.dll" SIZE="1382895" CHECKSUM="0xED289180" MODULE_TYPE="WIN32" PE_CHECKSUM="0x155590" LINKER_VERSION="0x10000" LINK_DATE="06/22/2007 12:42:24" UPTO_LINK_DATE="06/22/2007 12:42:24" />
    <MATCHING_FILE NAME="libfreetype-6.dll" SIZE=


Ofwel alle libraries die door het programma gebruikt worden. (echter niet de libraries die door de libraries gebruikt worden denk ik). Jammer.

Need more data. We want your specs. Ik ben ook maar dom. anders: forum, ff reggen, ff topic maken
En als je een oplossing hebt gevonden laat het ook ujb ff in dit topic horen.


  • Skinkie
  • Registratie: Juni 2001
  • Laatst online: 09-06-2020

Skinkie

Op naar de 500

Topicstarter
ParaNoiMia schreef op maandag 06 augustus 2007 @ 23:05:
Ik heb net even zitten rondklikken in SingleWord en ik zie op een gegeven moment dit:

code:
1
2
3
4
5
6
7
8
Error: The value of the 'if' condition is undefined.
Script line 234 not performed or completed:
\<< if minimumModelFzero > 0 \>>
Script "C:\bsProgram Files\bsSpeakGoodChinese\bsSGC_ToneProt\bsSGC_ToneProt.praa
t" not completed.
Praatcon.exe: command file "C:\bsProgram Files\bsSpeakGoodChinese\bsSGC_ToneProt
\bsSGC_ToneProt.praat ..\bsrecords\bssingleword.wav test 200 3 none 0" not compl
eted.


Het programma is echt in c:\Program Files\SpeakGoodChinese geinstalleerd en verzint om 1 of andere reden BS erbij in het pad ? Het is dan logisch dat er bepaalde dingen niet gevonden kunnen worden.

Ik zeg niet dat het hieraan ligt, maar ik kan me voorstellen als jij een lib aan wil roepen en dat pad staat fout, zou dat wellicht de fout kunnen geven.
\bs negeren dat slaat volgens mij op 'backslash' the errors die je krijgt zijn praat script errors. Ik gok dat je een niet bestaand pinyin ding hebt ingetikt. Dat het script het niet afvangt is niet netjes. Maar dat betekend al dat het programma zelf draait (als wrapper om het audio gedeelte heen).

Steun Elkaar, Kopieer Nederlands Waar!

Pagina: 1