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
424
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
- 1452549
En kai koskaan saa sinua
Koska et usko että riitäisit minulle. Olet aina pitänyt itseäsi liian risana ja heikkona. Katkot korkeutesi, ja poraat k1541649Terveystalon lääkärit ylilaskuttaneet
Tämän pörriäiset osaavat, laskuttamisen. Terveystalo myöntää asian. https://www.hs.fi/suomi/art-2000011134269.html "K1331623Saran ökytyyli käänsi katseita.
On nyt kyllä Sara kasvoistaan, kuvan perusteella todellakin pyöristynyt ainakin kuvan perusteella.1461344- 661338
The Summit Suomi: Maxie avaa hyytävästä tilanteesta kuvauksissa: "Veri roiskui ja tajusi, että..."
Oletko seurannut The Summit Suomea? Tykkäätkö vai et tai mitä mieltä ylipäätään olet sarjasta? Moni katsoja on kaikonnut131170Työttömille lusmuille luvassa lisää keppiä
Hallitus aikoo kiristää velvoitteiden laiminlyönnistä seuraavia työttömyysturvan karensseja ensi vuodesta alkaen. Hall2721147- 156976
Miksi ihmeessä?
Erika Vikman diskattiin, ei osallistu Euroviisuihin – tilalle Gettomasa ja paluun tekevä Cheek22904Tiedän kaiken sinusta ja kaikesta
Tiedän miten kärsit. Tiedän millanen oikeesti oot. Tiedän miksi valehtelit, tiedän miksi satutit mua. Tiedän mitä tapaht58889