Hei!
Miten saa tehtyä Windowsilla piip-ääniä PC speakerilla ILMAN consolea? Onko mahdollista ollenkaan? Vastaukseksi ei nyt käy ECHO ^G tai vastaava printf-viritelmä, kaipaisin ohjetta miten voisi ohjastella PC speakeria ilman, että näytöllä vilahtelee console-ikkunaa.
Tarve olisi yksinkertaisesti generoida jotenkin .exe, jonka ajamalla kuuluu äänimerkki, eikä mitään muuta.
Tällaista olen kokeillut:
#include // WinApi header file
void main()
{
Beep(1500,250);
}
...joka sinänsä toimii, mutta jotta tämän sai kääntymään Visual Studiossa oli pakko perustaa console application. Tuloksena yli 150 kB kokoinen .exe (kyllä nyt yksi piippaus pitäisi syntyä muutaman kB:n .exe:lläkin??) joka toimii, mutta ajettaessa vilahtaa näytöllä konsoli-ikkuna.
Miten tämä pitäisi tehdä oikealla tavalla? Ei luulisi olevan vaikea, mutta kun ei ole tuo Visual Studio meikäläiselle kovin tuttu...
PC speaker ohjastelu ilman consolea?
4
432
Vastaukset
- Ihan helppoo
Täytyyhän sillä joku isäntä olla. Kyllä pääikkunan voi joko piilottaa tai näyttää halutessaan oli se sitten konsoli tai ei. Siinähän voi olla upotettuna mediasoitin, jota ei näytetä, mutta joka kuuluu ja sitten voi vaikka mikkiin itte puhua paremmat äänet ja käyttää varastoistaan audioitten BMP: tä WAV: ia, jolta voi sanoa mitä vaan.
- Kikka57
Älä tee konsoli-ohjelmaa, vaan Windows-ohjelma.
Ota esimerkki ohjelmasta turhat pois, tähän tyyliin:
int APIENTRY _tWinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int nCmdShow)
{
Beep(1500,250);
return 0;
}- Hianoo!
Toi on hyvä idea, jos haluu soittaa yhden piipin yhdellä taajuudella. Jos haluu vaik piippolan vaarin soittaa kaikilla tarvittavilla taajuuksilla, niin laittaa vaan taajuuden jakeston uuteen piippiin perätysten niin kauan, että se on piippolan vaari siinä niin, että kaveritkin kuulee, vaikka mitään ei näy.
- alkup. kysyjä...
Kääntyi, 89088 tavua.. :-)
Onhan tuo edelleen suurehko, mutta ilmeisesti windowsilla ei pysty pienempään.. No, eipä tuo haittaa ja pääasia että toimii tarkoituksessaan. Tässä sovelluksessa ei tosiaan tarvita yhtä piippausta kummempaa eli haetaan pientä hälytysääntä joka ei ole liian häiritsevä, mutta erottuu lievästä taustahälinästä. Kokonaan toinen ja suurempi sovellus ajaa tämän exen hälytystilanteessa, se on idea.
En ole tosiaan winikkaan juurikaan mitään koodaillut, enempi sulautetulle puolelle perus C:llä ja vielä enempi assemblerilla. Sulautetussa ympäristössä tuollainen speakerin piippauskoodi vaatii ehkä parikymmentä tavua korkeintaan, joten siksi tuo 89088 kuulosti minusta isolta. Mutta tietysti jollain muutaman kB muistilla varustetulla sulautetulla ja PC:llä on eronsa.. :)
Kiitokset!
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Tänään pyörit ajatuksissa enemmän, kun erehdyin lukemaan palstaa
En saisi, silti toivon että sinä vielä palaat ja otetaan oikeasti selvää, hioituuko särmät ja sulaudummeko yhteen. Vuod225144- 254328
- 272461
- 342244
- 371998
- 151908
En ole koskaan kokenut
Ennen mitään tällaista rakastumista. Tiedän että kaipaan sinua varmaan loppu elämän. Toivottavasti ei tarvitsisi vain ka191587- 121521
Voi ei! Jari Sillanpää heitti keikan Helsingissä - Hämmästyttävä hetki lavalla...
Ex-tangokuningas on parhaillaan konserttikiertueella. Hän esiintyi Savoy teatterissa äitienpäivänä. Sillanpää jakoi kons211247Kerranki asiat oikein
Ilkka ja muut pienpuolueeet...teitte hyvän työn kun valitsitte pätevän henkilön virkaan eikä kepulle passelia!! Jatkakaa101174