[ hyper-v ] compact `Virtual Hard Disks` after the snapshot was deleted

1) Turn off that virtual server

2) Actions > Edit disk …

3) choose compact

more detail : http://virtuatopia.com/index.php/Creating_and_Configuring_Hyper-V_Virtual_Hard_Disks_(VHDs)

Advertisements

[ windows vista ] optimize windows speed

น้องบ่นเรื่องคอมพ์ช้า ซึ่งเราลองเข้าดูก็พบว่าจริง

หลังๆ ช้าจนไม่อยากบู้ทวินโดวส์ อยากใช้ lightroom กับ iTune ก็ทนๆไปก่อน

ubuntu ยังเร็วได้ใจอยู่

 

ว่าจะไปลอง mac mini แต่ไปดู สเปค สเปคแม่มกากถุย ไม่ต่างอะไรกับคอมที่ใช้อยู่

เลยคิดว่าลองมา optimize คอมตัวเองดีกว่า

ลองได้สองสามอย่าง เอ๊ย แม่มเร็วขึ้นจริง เลยเอามาแชร์

 

control panel > Performance information and tools > use tools to improve performance

เมนูเดียวอยู่เลยแม่ม

ทำทั้ง Manage startup program, adjust visual effects, adjust power setting, open disk clean up แล้วยังทำ disk defragment อีก

พอโหลด เร็วปร๋อ จนเข้ามาปรับรูปเล่นได้

 

[ wifi ] ขยายสัญญาณ wireless network ในบ้าน ด้วย repeater

อารัมภบท

ปกติเราท์เตอร์วางอยู่ชั้นบน พอลงไปเล่นไอแพดชั้นล่าง เนตก็ติดๆ ดับๆ เหลือไม่ถึงขีด
ยิ่งฟังเพลง streaming จาก youtube แล้วฟังครึ่งๆกลางๆ เสียมู้ดหมด แม่บ่น

วันวาเลนไทน์เลยออกไปซื้อ repeater สักหน่อย

ซื้อรุ่นไหนดี

ตอนแรกเล็ง DLink DAE-1320 แต่แม่มพันทิพไม่ได้เอามาขายรึไงฟร่ะ มีแต่ DLink 505 (ราคา 900 บาท) ซึ่งเป็นตัวปลั๊กเสียบเหมือนกัน
แต่เจอกระทู้ของฝรั่งบอกว่า 505 พกสะดวกก็จริง แต่กระจายสัญญาณได้แค่ 1 ห้อง

หลายร้านบอกว่า มี TP-link
ถามอะไรลึกๆ คนขายก็งงอีก ไหนบอกว่า มีอะไรถามได้ ไงคระ -*-

หงุดหงิดๆ เลยลงไปเดินหาชั้น 1

สุดท้ายไปเจอร้าน Fiber net คนขายผู้หญิง คุยรู้เรื่องหน่อย ถามอะไรตอบได้

เห็นเขาบอกว่า dlink มันไม่ค่อยจะยอมทำ repeater เป็น universal ชอบทำให้มันต่อกับรุ่นของมันเท่านั้น (ไม่รู้จริงไหมนะ แต่เขาบอกมางี้)

เขาบอกว่า ถ้าเป็น universal มีเป็นของ ASUS หรือไม่ก็ linksys

ข้าพเจ้าสนใจ linksys เขาก็ชี้ไปตัวรถถัง WRT54GL

ตัวนี้เคยอ่านรีวิว ว่ามีคนเอามาทำเป็น repeater เยอะเหมือนกัน
แต่ติดที่ว่า มันเป็นรุ่นโบร่ำโบราณ wireless G โว้ย
เลยถามเขาไปว่า มี wireless N หรือเปล่า

เขาแนะนำ รุ่น E1200 (ราคา 1400 บาท) กับอีกรุ่นอะไรไม่รู้จำไม่ได้และ ราคา 1900 บาท
เขาบอกว่าลง ddwrt ได้เหมือนกัน

เลยสอยตัว E1200 มา ( NOTE : E1200 มีสองรุ่น เลาเอารุ่น v2 มาน้ะจ้ะ )

จ่ายบัตรเครดิตเสียเพิ่มอีก 3% จ่ายเงินสดก็ได้ฟร่ะ

ลงfirmwareใหม่

กลับบ้านมาก็ลงมือกระทำชำเรา โดยการลง firmware ใหม่ โดยอาศัยคำแนะนำจาก http://dd-wrt.com/wiki/index.php/Linksys_E1200v2

After using the trailed build file for the initial flash (yes the file with the router name in it) only use nv64k builds to upgrade with or you will brick your unit. Don’t confuse this unit with some of the other Linksys E-Series units that use nv60k builds, this one uses nv64k builds!

1. Read the Peacock Announcement carefully. <<< ไม่อ่านโว้ยยย
2. Disconnect all cables and wireless clients.
3. Do a 30/30/30 reset on router <<< ตอนแรกงงว่า 30/30/30 คือเชี่ยอัลไลฟร่ะ บังเอิญเขามีลิงก์ให้
มันคือ การกดปุ่ม reset หลังเครื่องค้างไว้ 30 วิ, หลังจากนั้นเอาสายไฟpowerออก ทั้งๆที่ยังกดปุ่ม reset ค้างอยู่ กดค้างอย่างนั้นไปอีก 30 วิ, หลังจากนั้น เสียบสายไฟกลับเข้าไปใหม่ กดค้างอีก 30 วิ รวมหลงจ๊งแล้วกดค้างไป 90 วินาที

นี่ลงทุนเอา iOS มาจับเวลาเลยนะ ตอนทำอ่ะ เด๋วไม่เป๊ะ 555
4. Connect 1 Lan cable to pc doing the flash and plug the other end into one of the router’s switch ports. Do not use the WAN port for flashing, it won’t work.
5. Log into Linkysys Web Interface Firmware Upgrade page at 192.168.1.1 and flash the firmware E1200v2 Trailed Initial Flash Build
6. Wait 5 minutes to assure flash integrity. << แถวๆนี้หน้า interface ก็เปลี่ยนเป็นของ ddwrt แล้วมั้ง ส่วนตัวคิดว่าน่าจะใช้ได้แล้ว แต่ก็ทำตามพิธีกรรมที่แม่มแนะนำไว้ให้จนจบอ่ะนะ
7. Power cycle by unplugging the E1200v2 for 5 seconds.
8. Plug the E1200v2 back in and wait about 2 minutes until it finishes booting.
9. Do a 30/30/30 reset on router. As reported from the forum, an additional power cycle after the 30-30-30 may be required as well.
10. Wait 3 minutes and log into web interface.
You are done.
After the initial flash – should you want to flash to a build with more features you can use a k2.6 nv64k BIG or mega build or any of the other build flavors that are of your liking for features. << หลังจากนั้นข้าพเจ้าลง nv64k v.2 BIG แจ้ ถ้าลิงก์เจ๊งหาได้จากหน้า Download ของ ddwrt โดยเอาชื่อรุ่นไป search เช่น E1200

UPDATE : 2016/11/01 เลาเปลี่ยนเป็น MEGA แล้วแจ้ Upgrade เอา

configuration

หลังจากนั้น เราก็ทำการ configure ให้มันทำงานในโหมด repeater โดยอาศัยคำแนะนำจาก เวปนี้

หลังจากมั่วๆ อยู่สักพัก ข้าพเจ้าเข้าใจว่า มันเซตได้สองแบบ

แบบแรก mode repeater : ใช้คนละวงกับ router ตัวแม่, DHCP จะเป็น router ของเราแจก, เนื่องจากมันคนละวงกัน คอมที่ต่อจะมองไม่เห็นคอมของเราท์เตอร์ตัวแม่

อันนี้หลังจากเซต wireless mode : repeater ใน wireless > basic settings แล้ว

ต้องไปเซต ไอพี กับ DHCP ใน Setup > Basic setup ด้วย

แบบที่สอง mode repeater bridge :ไปใช้วงเดียวกันกับ router ตัวแม่, DHCP จะเป็น router ตัวแม่แจก, ข้อดีคือ คอมที่ต่อจะมองเห็นคอมของเราท์เตอร์ตัวแม่

1. Setup > Basic setup เซต router ip ให้อยู่ในวงของตัวแม่ เช่น ตัวแม่ 192.167.17.1 อันนี้เซตเป็น

router ip : 192.168.17.2

subnet mask : 255.255.255.0

gateway : 192.168.17.1

local dns : 192.168.17.1

2. wireless > basic settings 

2.1 เซตคอนฟิคเพื่อไปต่อกับตัวแม่ 

wireless mode : Repeater bridge

Wireless Network Mode : {mode ของตัวแม่ เช่น G-only}
Wireless Network Name (SSID) : {SSID ตัวแม่}

Network Configuration : bridged

2.2 เซต ตัวกระจายสัญญาณ Add Virtual Interfaces

Wireless Network Name (SSID) : SSIDตัวใหม่

Wireless SSID Broadcast : Enable
AP Isolation : Disable
Network Configuration : Bridge

3. wireless > security (ใช้คู่กับ  settings wireless > basic settings  ที่เซตผ่านมาแล้ว)

Physical Interface wl0

Security mode : เซทให้ตรงกับของตัวแม่
Algorithms : เซทให้ตรงกับของตัวแม่
Shared Key :เซทให้ตรงกับของตัวแม่

Virtual Interfaces wl0.1

Security mode : เข้าใจว่าอะไรก็ได้นะ เพราะนี่เป็นของตัวลูก
WPA Algorithms : เข้าใจว่าอะไรก็ได้นะ เพราะนี่เป็นของตัวลูก
WPA Shared Key : เข้าใจว่าอะไรก็ได้นะ เพราะนี่เป็นของตัวลูก

NOTE : ลอง WPA2 แล้วไม่ work ตัวลูกมันออกอินเทอร์เน็ตไม่ได้ ping ตัวแม่ไม่เจอ เลยลดชั้นมาเป็น WPA

update 2016/11/05 : WPA2 จริงๆใช้ได้นะ

เห็นในบอร์ดบอก ถ้าลองแล้วไม่ work ให้ลอง disable security ดู

4. ทดลองผลของ wireless > security + wireless > basic settings

ถ้าเซตตัวแม่ของ wireless > security + wireless > basic settings ตัวแม่มันจะไปโผล่เป็น eth1 ใน table ใน status > wireless > Wireless Nodes > Access Point & Clients

ถ้ามันไม่โผล่ ให้ไปลองเช็คว่า ตัวแม่ มีการ filter mac address รึเปล่า ถ้ามีให้ add mac address ตัวลูกลงไปในตัวแม่ด้วย และ mac address ของ wireless ไม่ใช่อันที่เขียนไว้หลัง router แต่เป็นตัวที่โชว์ใน status > wireless > Wireless Status

5. Setup > Advanced Routing ( ref : http://www.dd-wrt.com/wiki/index.php/Repeater_Bridge )

Operating mode : “Router”

dynamic routing interface : Lan & Wlan

กว่าจะเซตได้เหนื่อยเหมือนกัน

NOTE : ddwrt มีปุ่มสองปุ่ม คือ ปุ่ม save, ปุ่ม apply changes

ซึ่งถ้า save เฉยๆ มันจะไม่ apply changes ให้เกิดขึ้นจริงๆ

บางทีก็ต้อง save ไว้หลายๆ หน้าก่อนแล้วค่อย apply changes ทีเดียว

อันนี้สำคัญเวลาเปลี่ยนไอพี โน่นนี่นั่น บลาๆๆๆๆ

เราเพิ่งมารู้ว่า save มันยังไม่ apply changes เลยทำ router หลงทาง หาแม่มไม่เจอ ต้อง 30-30-30 reset ไปหลายรอบเลย -*-

ทดสอบความเร็ว

status > wireless > Wireless Nodes > Access Point & Clients

Signal Quality ของ eth1 เขาบอกว่า ไม่ควรต่ำกว่า 10%

ของเราลองวางแล้วประมาณ 30% ลองความเร็วแล้ว ผ่านฉลุย

[ windows server ] setup RD server

1) set up at server manager

Server Manager > Remote Desktop Services > RD Server Session Host Connection

Edit Settings > Licensing > Remote Desktop License Server

rd_license_server

Licensing tab,

Remote Desktop Licensing mode : Per user

Add the License Server

rd_license_server_2

2) setup group policy

in “Edit Group Policy”

Computer Configuration\Policies\Administrative Templates\Windows Components\Remote Desktop Services\Remote Desktop Session Host\Licensing

local_group_policy

Configure the settings:

– Use the specified Remote Desktop license servers
– Set the Remote Desktop licensing mode

ref : http://terenceluk.blogspot.com/2014/10/how-to-define-remote-desktop-services.html

[ ax2012 ] compare layer bug in CU6

c1 = comboBox1.id();

c2 = comboBox2.id();
intersectionComparisonField = dialog.addField(enumStr(NoYes), "@SYS119910", "@SYS119911");

select count(RecId) from newLayer exists join newLayerData where newLayer.recid == newLayerData.Layer;
comboBox1.items(int642int(newLayer.RecId));
// ST Phong.ek
comboBox2.items(int642int(newLayer.RecId));
// ED Phong.ek

i = 1;
while select Layer from newLayer exists join newLayerData where newLayer.recid == newLayerData.Layer
{
comboBox1.item(i);
comboBox1.text(enum2str(newLayer.Layer));

// ST Phong.ek
comboBox2.item(i);
comboBox2.text(enum2str(newLayer.Layer));
// ED Phong.ek

i++;
}

select count(RecId) from oldLayer exists join oldLayerData where oldLayer.recid == oldLayerData.Layer;
// ST Phong.ek
//comboBox2.items(int642int(oldLayer.RecId));

//i = 1;
//while select Layer from oldLayer exists join oldLayerData where oldLayer.recid == oldLayerData.Layer
//{
// comboBox2.item(i);
// comboBox2.text(enum2str(oldLayer.Layer) + ' (baseline)');
// i++;
//}
// ED Phong.ek

ref : http://axbrasil.com/2013/11/19/compare-layer-tool-cu6-fix/

[ ax2012 ] get print management settings from the PO


static void Job2(Args _args)
{

SRSPrintDestinationSettings mSRSPrintDestinationSettings;

FormLetterReport formletterReport;

PrintMgmtPrintSettingDetail settingDetail;

SRSPrintDestinationSettings destination;

VendPurchOrderJour jour;

PurchTable purchTable;

select jour where jour.purchid == 'Purch-000001636';

select purchTable where purchTable.purchid == &quot;Purch-000001636&quot;;

formLetterReport = FormLetterReport::Construct(PrintMgmtDocumentType::PurchaseOrderRequisition);

formLetterReport.parmPrintType(PrintCopyOriginal::OriginalPrint);
formLetterReport.parmUsePrintMgmtDestinations(true);
formLetterReport.loadPrintSettings(jour,purchTable,

purchTable.languageId); // jour.LanguageId,

// jour.CollectionLetterNum);

while(formletterReport.moveNextPrintSetting())

{

settingDetail = FormLetterReport.getCurrentPrintSetting();

destination = settingDetail.parmPrintJobSettings();

info( strFmt(&quot;%1&quot;, destination.printMediumType()));

info( strFmt(&quot;%1&quot;, destination.emailTo()));

info( strFmt(&quot;%1&quot;, destination.numberOfCopies()));

mSRSPrintDestinationSettings = settingDetail.parmPrintJobSettings();
}
}