|
|
Strona 1 z 1
|
[ Posty: 9 ] |
|
Autor |
Wiadomość |
Mustrum
Rejestracja: 2016-08-10, 13:59 Posty: 25 Pomógł: 4
|
Sleep w AMBASIC
Witam, jest jakiś odpowiednik funkcji Sleep w AMBASIC, albo obejście problemu (bez zarzynania procesora)?
Pierwszą alternatywą, jaką zauważyłem, jest śpiące zapytanie do bazy. Łagodnie rzecz ujmując, nie jest to zbyt zgrabne. Drugą możliwością, która przyszła mi do głowy jest napisanie innej śpiącej biblioteki COM, nim się za to zabiorę chciałbym wiedzieć czy nie istnieje prostsza alternatywa.
|
2016-09-13, 15:14 |
|
|
Autor |
Wiadomość |
Mix-soft.pl
|
|
|
rafal
Ekspert
Rejestracja: 2007-11-16, 15:08 Posty: 4004 Pomógł: 448
|
Re: Sleep w AMBASIC
Do czego konkretnie chcesz uzyc sleep? Na co chcesz czekac?
|
2016-09-13, 15:49 |
|
|
Mustrum
Rejestracja: 2016-08-10, 13:59 Posty: 25 Pomógł: 4
|
Re: Sleep w AMBASIC
Utworzyłem bibliotekę COM z nowym oknem w nowym procesie. Czekam, aż użytkownik zamknie to okno, żeby zebrać dane i pójść dalej z raportem. Dopisałem przed chwilą do niej funkcję spania (doszło do mnie, że skoro odpalam okno w innym procesie, nie będzie to miało na nie wpływu).
|
2016-09-13, 16:06 |
|
|
rafal
Ekspert
Rejestracja: 2007-11-16, 15:08 Posty: 4004 Pomógł: 448
|
Re: Sleep w AMBASIC
A raport nie poczeka jak otworzysz okno modalnie?
|
2016-09-13, 19:15 |
|
|
Mustrum
Rejestracja: 2016-08-10, 13:59 Posty: 25 Pomógł: 4
|
Re: Sleep w AMBASIC
Czekałby, gdybym nie tworzył dla okna osobnego wątku. Oryginalnie myślałem o utworzeniu prostej komunikacji między raportem a biblioteką w czasie gdy okno jest otwarte, jednak sprawa uprościła się do zebrania wypełnionych danych.
|
2016-09-14, 08:19 |
|
|
Jarek75
Ekspert
Rejestracja: 2009-03-07, 11:13 Posty: 597 Pomógł: 34
|
Re: Sleep w AMBASIC
Ja chyba umieszczam execa sleep.exe albo sleep.vbs w katalogu programu. Nie znam dobrego obejścia. Kod: Dispatch wsh int i wsh = CreateObject("Wscript.Shell") for i = 1 to i > 10 Popup(1, (using "%l", i)) wsh.Run(Katalog() + "sleep.vbs", 0, -1) next i
W pliku sleep.vbs:
|
2016-09-15, 11:49 |
|
|
Arek44
Rejestracja: 2016-06-03, 17:42 Posty: 48 Pomógł: 10
|
Re: Sleep w AMBASIC
Jarek75, czy ten kod działa u Ciebie? Testowałem na dwóch systemach i dostaję błąd wykonania OleDispatchException=0x80070002
|
2016-12-05, 21:32 |
|
|
Jarek75
Ekspert
Rejestracja: 2009-03-07, 11:13 Posty: 597 Pomógł: 34
|
Re: Sleep w AMBASIC
Działa. A ciekawe, czy na tych systemach możesz zwyczajnie kliknąć 2 razy w plik sleep.vbs? Bo ja mogę i nie dostaję żadnego błędu. Zmierzam do tego, że mogą być aktywne jakieś zabezpieczenia, które uznają plik vbs za zbyt ryzykowny do uruchomienia.
|
2016-12-05, 22:20 |
|
|
Arek44
Rejestracja: 2016-06-03, 17:42 Posty: 48 Pomógł: 10
|
Re: Sleep w AMBASIC
No właśnie u mnie też po dwukliku na pliku uruchamia się bez błędu. Dodałem MsgBox żeby było ładnie widać, czyli mam: Kod: WScript.Sleep 1000 MsgBox "TEST" Wywołać próbuję w Forte czyli Symfonii ERP 2016.1.a, może tu tkwi przyczyna?
|
2016-12-06, 23:16 |
|
|
|
Strona 1 z 1
|
[ Posty: 9 ] |
|
Kto jest online |
Użytkownicy przeglądający to forum: Nie ma żadnego zarejestrowanego użytkownika i 8 gości |
|
Nie możesz tworzyć nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz dodawać załączników
|
|
|
|