Archive for September, 2012

Vpc virtualboxra konverziója

Friday, September 21st, 2012

Van egy vpcm, amit havonta egyszer elő kell vennem, és dolgozni rajta 10 percet. Mivel Windows 8-ban nincs vpc, a hyperv-t nem támogatja a laptopom, betette a gépemre a lábát az ellenség keze, és felraktam a VirtualBoxot. A vpc fájlt simán át tudtam konvertálni, aztán már indult is.

Nullable típusok attributumokban

Tuesday, September 11th, 2012

CLR attributumokban sajnos nem lehet használni nullable típusokat, mivel ezeket metaadatként tárolja el a compiler, és az nincs felkészítve struktúrákra. Igazából még a decimalt sem eszi, ami elég bosszantó, ez azért beleférhetett volna.
Most mégis kellett nullable és ráadásul decimal att param, így kerültem ki:

public class SteppingSpecificationAttribute : Attribute
{
private double increment;
private double startValue;
private double endValue;

public SteppingSpecificationAttribute(double defaultValue)
{
DefaultValue = defaultValue;
}

public bool HasValueIncrement { get; private set; }
public bool HasValueStartValue { get; private set; }
public bool HasValueEndValue { get; private set; }

public double Increment
{
get { return increment; }
set
{
increment = value;
HasValueIncrement = true;
}
}

public double StartValue
{
get { return startValue; }
set
{
startValue = value;
HasValueStartValue = true;
}
}

public double EndValue
{
get { return endValue; }
set
{
endValue = value;
HasValueEndValue = true;
}
}

public double DefaultValue { get; set; }
}

Nem elegáns, de működik. Valakinek van jobb ötlete?

Később, amikor kiveszem a property-k értékét, akkor nézem meg, mi null és mi nem, valamint akkor konvertálok decimalra. A double-decimal konverzió okozhat adatvesztést, de ismerem milyen számok mennek be, ezekkel nincs ilyen gond.

SMS küldés skype-pal

Thursday, September 6th, 2012

Az egyik programomból SMS-t akartam küldeni, ha gond van vele. Skype apival ez nagyon egyszerű:

public class SmsSender
{
public static void Main()
{
new SmsSender().SendSms(“+36XXXXXXXXX”, “Test”);
}

public void SendSms(string phoneNumber, string smsText)
{
ISkype skype = new Skype();
ISmsMessage ismsmessage = skype.CreateSms(TSmsMessageType.smsMessageTypeOutgoing, phoneNumber);
ismsmessage.Body = smsText;
ismsmessage.Send();
}
}

Valszeg létrehozok neki egy saját skype accountot, rakok rá némi pénzt, aztán jöhet az sms.
A fentihez kell a Skype Desktop API, amihez kicsit hosszadalmasan regisztrálni kell, és a végén kapunk egy COM DLL-t, azt interoppal triviális hívni, mint fent is látható.

Code Contracts a VS 2012-ben

Wednesday, September 5th, 2012

Szegény Code Contracts még másodrangúbb szereplő lett, úgy érzem. VS 2012-ben fel sem jön a plusz füle, hiába telepítjük a Code Contracts csomagot.
Elevated VS 2012 Command Propmtból devenv.exe /setup -pal a helyére kerül a dolog. (Vigyázni, a 2012-es devenvet futtassuk.)

Moles meghülyül a 4.5-től

Tuesday, September 4th, 2012

Mivel a .NET 4.5 sunyin van verziózva, a Moles generátora megőrül tőle. Megoldás itt.
VS 2012-ben Fakes néven van benne egy újabb verziója, de csak az intergalaktikus verzióban. Ez nem volt jó döntés, tudom, hogy el kell adni az Ultimate-et, de csak a Fakes miatt nem fognak 12k$-t adni érte.

Windows 8 Search – cool

Monday, September 3rd, 2012

A kutyafáját, ez végre jó lett! Eddig Win7 alatt a Google Desktop Search-öt használtam. Tavaly óta viszont azt kivonták a forgalomból, volt most nagy meglepetés Win8 telepítés után. Kipróbáltam egy 3rd party keresőt, egy k. szar volt. Aztán rácöccentettem a Win8 beépített keresőjét a teljes vinyóra.

1. Gyönyörűen csendben indexel, nem marja el agresszíven a hddt.
2. A találatai meglepően jók. Letöltöttem a szűz gépemre a sysinternals pakkot. Bemásoltam egy közönséges könyvtárba. Rá pár percre Windows gomb + F, procmon, két enter, és már futott is a Process Monitor.
Grat ms, ez tetszik, nekem ezek a kis apróságok kellenek a produktivitáshoz. Már csak az enterek számát kellene csökkenteni valahogy. :)

Kód másolás VS 2012-ből

Monday, September 3rd, 2012

Ha powerpointba másoltam kódot a VS 2010-ből, akkor szépen átjött a színezés. 2012-ből viszont hozza a betűk háttérszínét is, amitől színes hátterű textboxba pasztázva ocsmány lesz a kód. Tud erre valaki gyógyírt?

Update: egyelőre az működik, ha bepasztázom Wordbe, ott átállítom a Highlight Colort transparentre (Highlight Colort a PowerPoint nem támogat, de azért pasztánál csak beveszi), majd onnan pasztázom tovább. Naggggyon gázos.

Windows 8 telepítve

Saturday, September 1st, 2012

Rászántam magam, és felraktam a Windows 8-t. A telepítés sokkal simábban ment mint vártam, 1-kor kezdtem, és most fél 6-kor már fenn van a szükséges programok zöme (Office, VS 2012, Far, Keepass, stb.).
A Win8 GUI egyelőre nekem a Win 3.1-re emlékeztet, az abban levő program managerben voltak egymásra hányva az ikonok. Tableten is áttekinthetetlen ez, nagyban se érzem jobbnak. De nyilván még nem olvastam utána, mi az egész logikája, azért fura.
Valójában rájöttem, hogy a gyakran használt programokat úgyis leraktam a TaskBarra, a többit meg kereséssel indítottam el a neve alapján. Úgy néz ki Windows+Q-ra bejön egy olyan izé, mint ami eddig a start menü keresője volt, ez nekem megfelel, csak hozzá kell szoknom.
A desktopját nézve nem is látom, hogy Win8 alatt vagyok. Hozzáteszem, egyelőre nincs is rá igényem, hogy mást lássak. Tény, hogy a start menü egyelőre hiányzik, de csak azért se rakok fel start menü pótló appokat, inkább átszokok az új guira, ha megy.
Ami meglepő volt, hogy a 10 éves HP 1010-es nyomtatómmal korábban sokat szívtam Vistától kezdve, de a Win8 a Vista 64 bites drivert szó nélkül megette. Ez igen kellemes meglepetés volt.
Végül, amin jót röhögtem, hogy nem voltam itthon egy órát, és kisfiam nem találta meg a YouTube-ot a Win8-on. :)