trochu by mne překvapilo, kdyby dneska někdo používal otevřený plain textový protokol.
Očekával bych M$ Exchange, maximálně s fallbackem na SSL-IMAP, ale s podmínkou mutual podnikového certifikátu.
Proto bych se vůbec nepokoušel si skládat protokol, ale rovnou volal služby systému.
outlook posílá data na COM port
Re: outlook posílá data na COM port
Za pravopisné chyby v této zprávě může moje učitelka češtiny.
Re: outlook posílá data na COM port
Fuldo, vůbec nechápu, co jsi myslel.
Věc jsem už vyřešil - povolil jsem v Outlooku pravidlo pro spuštění externí aplikace, napsal baťák na inicializaci seriáku a odeslal znak do arduina přes com4.
That's all folks
PS: když mi někdo vysvětlí, jak se to udělá přes VB, bude to také zajímavé
Věc jsem už vyřešil - povolil jsem v Outlooku pravidlo pro spuštění externí aplikace, napsal baťák na inicializaci seriáku a odeslal znak do arduina přes com4.
That's all folks
PS: když mi někdo vysvětlí, jak se to udělá přes VB, bude to také zajímavé
fischertip.cz, Stavebnice.com, MerkurRobot.cz, KlubTechniku.cz
Re: outlook posílá data na COM port
a-ha, OK, možná to bude užitečné pro ostatní, tak to trochu popíšu.
To že má Microsoft extrémně rád basic je známá věc. Proč tomu tak je je také známo.
To že například makro v excelu je visual basic script je také většině lidí známo.
To že existují lidi, kteří programují ve visual basicu se asi také dá očekávat.
Takže se stačí rozhlédnout, jestli někde nemáme interpreter visual basicu (všichni víme, že basic je interpretovaný jazyk).
Mno a ejhle, v samotném systému bez přidaného office máme dva základní. Předvedeme si malé kouzlo. Vytvoříme něco jako program
Uložíme a pak z příkazové řádky provedeme kouzlo:
A hádejte co se stane?
Mno, to je taková lehčí magie, psát interpret je pro děti. Tak co si dát něco "ostřejšího"?
Začneme hodně podobně, ubereme jedno písmenko (s), protože to znamená "script" a to je málo tvrdé
Uložíme a pak z příkazové řádky provedeme větší magii:
Tohle už vyžaduje většího odborníka, člověk si musí vybrat jakou chce použít verzi (to jsou ta magická čísla) a vůbec musí tak nějak tušit co je co.
A teď se stane ta magie:
Na konci kouzla nám v aktuálním adresáři přibylo hádejte co? No jasně:
A hádejte co to dělá?
Tak a abych uvedl správné datumy, tak vbscript máme v systému od verze W98, zatímco kompiler od verze W10
Pokud je někdo rozhodně proti basicu, je tu od W10 ještě možnost použít JScript, který se tváří jako C# interpreter.
S instalací Office se nám přidá VBA, který navíc disponuje celkem použitelným IDE. Ale to už znají všichni, kdo si pustili advanced makro v excelu.
A jako bonus pro poctivé čtenáře si uvedeme ještě jeden příklad. Jak udělat pořádné okno s pořádným nápisem
Zase použijeme magické
To že má Microsoft extrémně rád basic je známá věc. Proč tomu tak je je také známo.
To že například makro v excelu je visual basic script je také většině lidí známo.
To že existují lidi, kteří programují ve visual basicu se asi také dá očekávat.
Takže se stačí rozhlédnout, jestli někde nemáme interpreter visual basicu (všichni víme, že basic je interpretovaný jazyk).
Mno a ejhle, v samotném systému bez přidaného office máme dva základní. Předvedeme si malé kouzlo. Vytvoříme něco jako program
notepad test.vbs
:
Kód: Vybrat vše
function PrintIt(A)
wscript.echo A
End Function
For X = 1 to 5
PrintIt(X)
Next
cscript test.vbs
A hádejte co se stane?
Mno, to je taková lehčí magie, psát interpret je pro děti. Tak co si dát něco "ostřejšího"?
Začneme hodně podobně, ubereme jedno písmenko (s), protože to znamená "script" a to je málo tvrdé
notepad test.vb
:
Kód: Vybrat vše
Module example
Sub PrintIt(A)
Console.WriteLine(A)
End Sub
Sub Main(args as string())
For X = 1 to 5
PrintIt(X)
Next
End Sub
End Module
C:\Windows\Microsoft.NET\Framework\v4.0.30319\vbc.exe test.vb
Tohle už vyžaduje většího odborníka, člověk si musí vybrat jakou chce použít verzi (to jsou ta magická čísla) a vůbec musí tak nějak tušit co je co.
A teď se stane ta magie:
Kód: Vybrat vše
Microsoft (R) Visual Basic Compiler version 14.8.3761
for Visual Basic 2012
Copyright (c) Microsoft Corporation. All rights reserved.
This compiler is provided as part of the Microsoft (R) .NET Framework, but only supports language versions up to Visual Basic 2012, which is no longer the latest version. For compilers that support newer versions of the Visual Basic programming language, see http://go.microsoft.com/fwlink/?LinkID=533241
test.exe
A hádejte co to dělá?
Tak a abych uvedl správné datumy, tak vbscript máme v systému od verze W98, zatímco kompiler od verze W10
Pokud je někdo rozhodně proti basicu, je tu od W10 ještě možnost použít JScript, který se tváří jako C# interpreter.
S instalací Office se nám přidá VBA, který navíc disponuje celkem použitelným IDE. Ale to už znají všichni, kdo si pustili advanced makro v excelu.
A jako bonus pro poctivé čtenáře si uvedeme ještě jeden příklad. Jak udělat pořádné okno s pořádným nápisem
notepad okno.vb
:
Kód: Vybrat vše
Imports System
Imports System.Drawing
Imports System.Windows.Forms
Public Class HelloWindows
Inherits Form
Private lblHelloWindows As Label
Public Shared Sub Main( )
Application.Run(New HelloWindows( ))
End Sub
Public Sub New( )
lblHelloWindows = New Label( )
With lblHelloWindows
.Location = New Point(37, 31)
.Size = New Size(392, 64)
.Font = New Font("Arial", 36)
.Text = "Hello, Windows!"
.TabIndex = 0
.TextAlign = ContentAlignment.TopCenter
End With
Me.Text = "Programming Visual Basic .NET"
AutoScaleBaseSize = New Size(5, 13)
FormBorderStyle = FormBorderStyle.FixedSingle
ClientSize = New Size(466, 127)
Controls.Add(lblHelloWindows)
End Sub
End Class
C:\Windows\Microsoft.NET\Framework\v4.0.30319\vbc.exe okno.vb
a pak spustíme okno.exe
Za pravopisné chyby v této zprávě může moje učitelka češtiny.
Re: outlook posílá data na COM port
pravopisné chyby jsem nenašel a programy fungují, jak mají. jen mi připadá, že bych si musel pro řešení mého zadání asi napsat vlastního klienta pro exchange, a to je poněkud složitější level.i tak díky fuldo, pěkně napsané.
fischertip.cz, Stavebnice.com, MerkurRobot.cz, KlubTechniku.cz
Re: outlook posílá data na COM port
Nebo by jsi se musel podívat na začátek tohoto vlákna, kde se píše o magickém slově VBA a jeho použití v outlooku.
Prostě si uděláš VBA makro, které použiješ jako filtr.
V podstatě to nebude o moc jiné, než tvoje volání dávky, rozdíl bude v tom, že použiješ přímo prostředky outlooku a nebudeš do sebe muset matlat několik interpretrů. Prostě to bude takové systematické, jako když to tvoří běloši a ne arduino slepené tavnou pistolí na indickém webu.
Prostě si uděláš VBA makro, které použiješ jako filtr.
V podstatě to nebude o moc jiné, než tvoje volání dávky, rozdíl bude v tom, že použiješ přímo prostředky outlooku a nebudeš do sebe muset matlat několik interpretrů. Prostě to bude takové systematické, jako když to tvoří běloši a ne arduino slepené tavnou pistolí na indickém webu.
Za pravopisné chyby v této zprávě může moje učitelka češtiny.
Re: outlook posílá data na COM port
Každý Exchange včetně toho v Office 365 má IMAP konektor, stačí ho nemít vypnutý.
Btw pokud by to podle tohoto řešil ještě někdo jiný, tak v "opravdovém korporátu" s alespoň běžnou úrovní zabezpečení Vám většina výše popsaných praktik (nepodepsané .exe, pravidla v Outlooku volající externí programy, atd. atd.) fungovat nebude
Btw pokud by to podle tohoto řešil ještě někdo jiný, tak v "opravdovém korporátu" s alespoň běžnou úrovní zabezpečení Vám většina výše popsaných praktik (nepodepsané .exe, pravidla v Outlooku volající externí programy, atd. atd.) fungovat nebude
"all your robots are belong to us"
robodoupe.cz
robodoupe.cz
Re: outlook posílá data na COM port
Dex> máš samosebou s bezpečností pravdu. Na druhou stranu nekteré věci občas jdou.
fulda> pokud chci něco jednoduchého a zeptám se přímo v názvu, tak 2 řádky v .bat mi přijde podstatně jednodušší než se patlat s VBA
fulda> pokud chci něco jednoduchého a zeptám se přímo v názvu, tak 2 řádky v .bat mi přijde podstatně jednodušší než se patlat s VBA
fischertip.cz, Stavebnice.com, MerkurRobot.cz, KlubTechniku.cz