Quantcast
Channel: TechNet Blogs
Viewing all 17778 articles
Browse latest View live

Microsoft Azure 仮想マシンについて、基礎からご紹介するセミナーを開催します【 12/25 更新】

$
0
0

「これから Microsoft Azure 仮想マシンを利用したい」という方に向けて、Microsoft Azure 仮想マシンに関する入門セミナーを開催します。

 

Microsoft Azure 仮想マシンは、Windows Server の仮想化機能である Hyper-V と共通のハイパーバイザー上で稼働します。そのため、Hyper-V から Azure への移行は容易ですが、構成要素などは Hyper-V と異なる点も多々あります。
本セミナーでは、Microsoft Azure 仮想マシン作成の流れや構成要素などの基本についてご紹介します。

参加費は無料ですので、ぜひご参加ください!

▼「今さら聞けない! Microsoft Azure 仮想マシン入門」へのお申し込みはこちら


タスク スケジューラのトリガーに関するレジストリ肥大化について

$
0
0

こんにちは。Windows サポート チーム の沖です。

 

今回は、Windows Server 2008 において、タスクが重複して実行される事象について、回避策が更新されましたのでご紹介いたします。

 

Windows Server 2008 MS10-092 (KB 2305420) の適用後、タスク スケジューラでタスクの有効化、無効化を繰り返すと、トリガーに関するレジストリ値が肥大化し、タスクが重複して実行される事象が発生いたします。(詳細は後述の"発生事象" をご覧ください。)

 

これまで本事象については、修正プログラム (KB 2617046) にて、本問題についての修正を行った LDR 版を提供しており、事象が発生している環境にて個別での適用をご案内しておりました。

しかし、MS15-102 のセキュリティ更新プログラムにおいて、広範へ適用されます GDR 版にも修正が含まれることとなり、Windows Update でも本事象について修正を行えるようなりました。

(GDR 版、LDR 版については、後述の"参考情報" をご覧ください。)

 

タスクが重複して実行される環境がございましたら、後述いたします問題修正方法の実施をご検討くださいますようお願いいたします。

 

--------------------------------------------------

- 発生事象

--------------------------------------------------

MS10-092KB 2305420) が適用されているWindows Server 2008 環境のタスク スケジューラで、トリガーが設定されているタスクを繰り返し有効化、無効化するとトリガーに関するレジストリ値が肥大化してゆきます。

その影響で、タスクの実行時刻になると重複してタスクが実行される場合がございます。

 

--------------------------------------------------

- 現在の問題修正方法

--------------------------------------------------

 

1. 以下 MS15-102 のセキュリティ更新プログラムを適用します。

 

タイトル: マイクロソフト セキュリティ情報 MS15-102 - 重要

                Windows タスク管理の脆弱性により、特権が昇格される

URL: https://technet.microsoft.com/ja-jp/library/security/ms15-102.aspx

 

2. 重複して実行されるタスクについて、無効、有効を実施します。

 

本手順で、肥大化したトリガーに関するレジストリの値が正常な値へと戻り、重複実行される事象が解決いたします。

 

--------------------------------------------------

ご参考情報として、従来、事象が発生している環境への個別適用をご案内していた修正プログラムをご紹介します。

--------------------------------------------------

文書番号: 2617046

タイトル: Duplicate triggers are generated incorrectly in scheduled tasks in Windows Vista or in Windows Server 2008

URL: https://support.microsoft.com/ja-jp/kb/2617046

--------------------------------------------------

 

上述しました通り、現在は Windows Update にて上記のセキュリティ更新プログラム (MS15-102) を適用いただく方法でも、レジストリが肥大化する事象を回避可能です。そのため、Windows Update にて MS15-102 を適用いただいている環境におきましては、個別に KB 2617046 の適用は不要となります。

 

お手数をおかけし大変恐縮でございますが、セキュリティ更新プログラムのご適用およびタスクの無効化、有効化の実施についてご検討をお願いいたします。

 

- 参考情報

修正プログラムの LDR および GDR の考え方については、以下のサイトをご参照ください。

 

修正プログラムにまつわるお話

http://blogs.msdn.com/b/japan_platform_sdkwindows_sdk_support_team_blog/archive/2012/01/26/10260805.aspx

2016年1月份合作伙伴培训计划

$
0
0

欢迎访问我们的最新培训页面。我们于2016年一月份推出以下在线课程。如果您希望参加以下课程,请直接

发送课程名联系我们,并提供您的合作伙伴ID或名称,我们将会及时跟进您的课程请求。

时间 (GMT+08:00) 课程名称
1/07/2016 14:00-16:00Office 365 服务,订阅计划简介
1/08/2016 14:00-16:00介绍ADFS验证机制
1/11/2016 14:00-16:00Microsoft Azure 存储和 StorSimple
1/11/2016 14:00-16:00可扩展性和云托管的 Web 应用程序的性能
1/12/2016 14:00-16:00Microsoft Azure 网络
1/12/2016 14:00-16:00构建混合集成
1/13/2016 14:00-16:00Microsoft Azure 的安全解决方案
1/13/2016 14:00-16:00Exchange Online概览
1/14/2016 14:00-16:00SharePoint Online 数据的迁移以及外部共享
1/15/2016 14:00-16:00EMS Red Carpet
1/15/2016 14:00-16:00e-Discovery和数据归档
1/18/2016 14:00-16:00Microsoft Azure 身份和访问
1/19/2016 10:00-12:00Dynamics CRM Online概览、管理与许可
1/19/2016 14:00-16:00Dynamics CRM Online与Exchange Online、SharePoint Online集成
1/20/2016 14:00-16:00Dynamics CRM Online与Skype for Business,Yammer以及Power BI集成
1/20/2016 14:00-16:00解决方案加速器:使用 Azure 站点恢复实现业务连续性
1/21/2016 14:00-16:00PowerBI Red Carpet
1/21/2016 14:00-16:00Office 365 IUR简介
1/22/2016 14:00-16:00CRM Online 销售管理概览
1/22/2016 14:00-16:00EOP保护邮件数据安全
1/25/2016 14:00-16:00Azure 开发人员实验
1/26/2016 14:00-16:00DevOps 和 ALM 对云应用程序
1/26/2016 14:00-16:00Windows As- A-Service
1/27/2016 14:00-16:00开始企业移动化
1/28/2016 14:00-16:00Skype for Business Online概览
1/29/2016 14:00-16:00SharePoint Online混合场景介绍

Azure Web Appsでの改ざん検知をWeb ジョブとSchedulerを組み合わせで実施する

$
0
0

Azure App Service の Web App でPowershellを使って簡易的に改ざん検知を実施する方法をサンプルスクリプトも含めて紹介します。

概要

Powershell で、改ざんされていないファイル群のハッシュを作成し保存し、定期的に、そのデータと、現在のハッシュデータを比較し、相違があればメールを送信するというスクリプトサンプルです。

事前準備

このスクリプトを実行するにあたって、別途SMTPサーバーが必要です。自前のSMTPサーバーを利用しても、Azureのマーケットプレイスで取得できる、Sendgrid (無料プランでOKです)を使っても構いません(以下の例では、Sendgridを利用しています)。

手順1スクリプトの作成

作成するPowershell スクリプトは、以下の2つです。

ハッシュ情報DBの作成Powershellスクリプト(例:CreateHashDb.ps1)


$loc = "D:\home\site\wwwroot" 
$ignore = @("bin",”temp2”); 
$ignoreExt =@("*.exe"); 
$dbPath = "D:\home\site\integritychecker.xml"; 

$files = Get-ChildItem -Path $loc -Recurse -Exclude $ignoreExt | ? { !$_.PSIsContainer } | % { $relative = $_.FullName.Replace($loc,""); $nomatch = $true; foreach ($folder in $ignore) { ifelative -like "*\$folder\*") { $nomatch = $false } }; if ($nomatch) { $_ } } Get-FileHash $files | Export-CliXml $dbPath; 
exit; 

ハッシュ情報dbと現在のファイルを比較するPowershellスクリプト(例: IntegrityCheck.ps1)


# Setting variable
$loc = "D:\home\site\wwwroot"
$ignore = @("bin","temp2");
$ignoreExt = @("*.exe");
$dbPath = "D:\home\site\integritychecker.xml";
$PSEmailServer = "smtp.sendgrid.net"
$EmailID = "XXXXXX@azure.com"
$EmailPassword = "????????????????"
$from = "abc@defgh.com";
$to = " admin@lmnop.com";
$subject = "Integrity found!";

# check integrity
$HashDb = Import-CliXml $dbPath;
$Files = Get-ChildItem -Path $loc -Recurse -Exclude $ignoreExt | ? { !$_.PSIsContainer } | % { $relative = $_.FullName.Replace($loc,""); $nomatch = $true; foreach ($folder in $ignore) { ifelative -like "*\$folder\*") { $nomatch = $false } }; if ($nomatch) { $_ } }
$CurrentHash = Get-FileHash $Files;
$Result = Compare-Object $HashDb $CurrentHash -CaseSensitive -Property Path,Hash;
$Result | sort Path -unique | Format-Table @{Expression={$_.Path};Label="Modification"} -wrap -autosize;
$credentials = new-object Management.Automation.PSCredential $EmailID, ($EmailPassword | ConvertTo-SecureString -AsPlainText -Force);
$enc = New-Object System.Text.utf8encoding;
$body = $Result | sort Path -unique | Format-Table @{Expression={$_.Path};Label="Modification"} -wrap -autosize | Out-String;
Send-MailMessage -port 587 -From $from -Encoding $enc -To $to -Subject $subject -Body $body -UseSsl -Credential $credentials;
exit;

それぞれのPowershellの設定情報の部分をサイトに合わせて修正します。$loc, $ignore, $ignoreExt, $dbPath については、2つのPowershellファイルの内容を同一の値にします。修正が修正したら、それぞれのファイルzip化します。

変数名

設定する情報

$loc

チェックするファイルのルートフォルダ

D:\home\site\wwwroot

$ignore

除外するフォルダ名

@("bin","temp2")

$ignoreExt

除外するファイル拡張子

@("*.exe")

$dbPath

Hash情報保存ファイル

D:\home\site\integritychecker.xml

$PSEmailServer

SMTPサーバー情報

smtp.sendgrid.net

$EmailID

SMTPログイン情報

XXXXXX@azure.com

$EmailPassword

SMTP パスワード

 

$from

メール送信元アドレス

abc@defgh.com

$to

メール送信先アドレス

admin@lmnop.com

$subject

メールのタイトル

Integrity found!

手順2 Webジョブの登録

2つのPowershellスクリプトをWebジョブに登録します。登録にはクラシックポータルを利用します。CreateHashDb.ps1の実行方法を「オンデマンドで実行」に、 IntegrityCheck.ps1 の実行方法を「スケジュールに従って実行」を選択し、任意のスケジュールを設定します。
※ CreateHashDb.ps1の手動実行以前に、CreateHashDb.ps1がスケジュール実行されてしまうと、hashのデータベースが存在しないことになってしまうので、IntegrityCheck.ps1をWebジョブに登録する前に、手順3のCreateHashDb.ps1を実行しておくことをお勧めします。

  

手順3 データベースの更新

改竄されていないファイルのハッシュを作成するために、CreateHashDb.ps1 を実行します。実行には、クラシックポータルの最下部の「一度だけ実行する」を選択すればOKです。

使い方

コンテンツ更新した際に、手動で、CreateHashDb.ps1 を実行します。クラシックポータルのUI上で実行しても、Powershellで Start-AzureWebsiteJob コマンドを使って実行してもよいです。

コンテンツ更新した際に、CreateHashDb.ps1 を実行しないと、意図したコンテンツ更新自体が、改竄と検知されていまいますので、コンテンツ更新時には、忘れずにCreateHashDb.ps1を実行してください。

注意点、その他

  • このスクリプトは、改竄検知を簡易的に発見・メール通知するサンプルスクリプトで、改竄検知を保証するものではありません。
  • この2つのサンプルスクリプトは、意図しないコンテンツの更新を改竄として検知し、その検知をメールで通知しますが、コンテンツの復旧はしませんので、コンテンツの復旧は、任意の方法で実施が必要です(一般的には、復旧以前に、改竄検知された原因を特定し、対策する必要があります)。
  • Webジョブのログを確認することで、改竄検知スクリプトの実行状況を確認いただけます。
  • IntegrityCheck.ps1実行時に改竄が検知されない場合、IntegrityCheck.ps1内のSend-MailMessage でエラーが発生しますが、そのエラー原因は、hashの情報に相違点が無いということになりますので、機能的には、今のままで問題ないと思いますが、気になる場合は、特定条件下で、メール送信したりするように変更いただければと思います。
  • kuduのdebugコンソールをなど使って、データベースが作成されているか?確認できます。
  • ftpアカウント情報などの流出による不正アクセスの場合、スクリプト自体を削除・改変される可能性があるので、ご注意ください。
  • gitなどからのデプロイであれば、webhookを使ってCreateHashDb.ps1実行を自動化できるかもしれません。

最後になりますが、このサンプル作成に多大なご協力をデプロイ王子にいただきましたー。多謝!

[EMS] Advanced Threat Analytics (ATA) バージョン 1.5 リリースと 機能強化ポイントのご紹介

$
0
0

Advanced Threat Analytics (ATA) のバージョン 1.5 がリリースされました。

バージョン1.5 で新しく追加された機能や、Update 事項についてご紹介いたします。

※ ATA についてのご紹介、ATA バージョン 1.0 機能については、こちらの Blog 記事をご参照ください。

<TechNet Blog>[EMS] Microsoft Advanced Threat Analytics (ATA) による AD上のID・認証情報に対する不正なアクセスやふるまいの検知

 ■ ATA version 1.5 Update ポイント

・検知のための時間がより高速に
・NAT ( Network address translation ) 端末のための自動検知アルゴリズムを強化
・非ドメイン参加端末のための名前解決プロセスの強化
・データと製品の移行に対応
・「構成」のページにATA ゲートウェイのアップデートステータスを表示
・UI 改善(数千個規模のエンティティに関連する不審なアクティビティへの応答性について)
・監視アラートの自動解決機能を改善
・監視とトラブルシューティングに関するパフォーマンスカウンターの追加



最新のATA のビルド(バージョン 1.5 を含むもの)は、Evaluation Center 、Volume License Service Center (VLSC)、MSDN、MPN からダウンロードしてください。
本ビルドは、新しく ATA の環境を展開する際にも、そして既に ATA v1.0 を展開されておりバージョンアップする際にも、ご活用いただくことができます。

すでに ATA v1.0 を展開いただいている場合は、移行の手順書 (ATA update to 1.5 migration guide)もご利用ください。

 

ATA は 今後も数か月以内に、新しい機能・技術を含んだバージョンアップがアナウンスされます。

Active Directory のユーザーアカウント、リソースを守るソリューションとして、ぜひ ATA をご評価ください。

 

■関連情報
<TechNet Blog>Advanced Threat Analytics Update 1.5 is here !
<Twitter>Idan Plotnik (C+E Security Group Manager)@IdanPlotnik

Azure 成功案例 - cacafly 使用 Azure,滿足快速投放廣告需求,廣告服務全球化佈局

$
0
0

在兩年內討論得沸沸揚揚的RTB (Real time bidding),在台灣行銷人員眼裡想必並不陌生。隨著雲端時代的到來,比對手更準確地目標客群(TA),是行銷人員所面臨最大的挑戰。有人說,RTB其實就只是透過分析決定廣告曝光的機制,對此,cacaFly執行長邱繼弘表示,真正重要的,其實是在RTB中做成效型的廣告追蹤。

邱繼弘進一步指出,RTB這個技術其實在2009年就已經出現,伴隨資料分析與媒合技術的長足進步,到了去(2014)年才真正活躍起來。善用RTB,應該媒合廣告成效以及用戶行為數據,以滿足三個溝通要點:再行銷、召回老顧客、拓展新客群。

RTB改變行銷守則,在既有閱聽習慣下接收的資訊才有效益

根據MAGNA GLOBAL報告,2014年全球透過自動化購買廣告的交易金額為210億美元,2018年將達530億美元,成長1.5倍。看好RTB發展趨勢,cacaFly在累積了6年數位廣告經驗後,集團另外成立另一家公司騰學廣告科技TenMax,自主研發出自動化RTB系統,並於今年六月開始上線營運。

邱繼弘認為,RTB將是未來數位行銷的主流,除了從買媒體版位,轉變成透過程式來買TA。重要的是,要在不改變消費者閱覽習慣下,找到對的工具投放廣告。

舉例來說,電子商務業者想要針對瀏覽過網站卻沒有購物的人,進行廣告再行銷,但要如何找到這群人?要投放哪種內容的商品廣告?透過RTB系統的數據分析,可以找出這群人可能會購買的商品,而不單單只是投放曾經瀏覽過的商品。

或者透過RTB的機器學習能力,可以從現有客戶群與購物經驗,找出其他沒有瀏覽過網站但是可能會購買商品的人,從而用對的方式投放對的廣告。比如常蒞臨影音網站的受眾,對跳出視窗,或廣告欄位勢必會感受到干擾,但若置入在影片開頭如同電影預告,就能保有收視習慣下接收行銷資訊。

因為從廣告內容、投放的網站、到廣告對象,都是經過運算分析後的結果,不會將不適合該名消費者的廣告商品呈現在他眼前,自然就能提高廣告的客戶轉換率,達到增加營收的目標。

滿足快速投放廣告需求,廣告服務需全球化佈局

邱繼弘表示,廣告服務商原本就需要全球化佈局,從RTB廣告系統的運作架構來看,在使用者按下滑鼠左鍵準備連進網站這不到0. 1秒的時間內,系統就必須決定要在這個網頁呈現什麼廣告。

每個使用者所呈現的廣告內容可能都不一樣,即使號稱無遠弗屆的網路,傳輸速度仍受限於實體的距離,因此全球據點都需要佈建機房,才能快速提供訊息給消費者,而 Microsoft Azure為跨國平台剛好可以滿足cacaFly的需求。

充分的在地支援,彈性、管理與成本上的效益缺一不可,也因此不只是RTB系統,cacaFly連自家IT系統也一併搬上Microsoft Azure平台上。

從行銷策略出發,RTB操作才能彰顯效益

邱繼弘強調,RTB就是把行銷策略套用到不同的廣告並系統化,因此企業在操作RTB時,最重要的是清楚自身行銷策略,是要再行銷(看了未買)、召回老顧客、或拓展新客源(不曾來過網站,但可能會買),如此才能彰顯RTB的效益。

此外,邱繼弘也提醒,行銷工具的運用,更是資源整合與技術力的PK,建議行銷人員在使用RTB服務的同時,了解系統背後的服務平台,除了工具本身,更要整合高效的數據分析、雲端的全球佈局與有效的行銷策略,才能充分應用數位工具達成行銷目標。

Azure 成功案例 - IT 不再是惡夢,Azure 讓奧美互動專注本業,創意發想

$
0
0

雲端物聯網時代的到來,意味著企業營運進入一個嶄新階段,傳統必須自己培養IT人員、維運軟硬體設備的年代已經過去,如今透過雲端專業IT廠商的協助,不僅能幫助企業降低成本,更能讓人力發揮最大價值。

以奧美互動行銷為例,其便是將專案中的IT工作委外給雲端廠商負責,讓專案人員可以專注在與產業領域(Domain)相關的工作上,幫助企業創造價值、提高工作效率、進而帶動營收成長。

IT不再是惡夢 Azure 讓奧美專注本業創意發想

奧美互動行銷公司行動行銷副總經理王秋鎮指出,奧美主要業務在於創意發想,為客戶行銷品牌、產品或服務,在執行行銷專案過程中,與IT相關的工作越簡單越好,如此才能專注在創意發想上,為客戶提供好的建議或行銷手法。

只不過,現代客戶越來越重視數位行銷,行銷專案中IT工作的比重也隨之增加。舉例來說,現今行銷活動通常需要架設網站,奧美除了負責網頁設計外,還要解決像是網站的後台建置、需求頻寬…等IT問題,這對奧美造成很大的負擔,「無論網站運作的成功與否都是一種壓力,」王秋鎮笑著說。

在行銷活動中,無論建置網站或AP都需要一個後台,如果網站或AP無法吸引大量消費者,客戶免不了會質疑行銷活動的成效,但若能成功吸引大量消費者,後台又可能因為無法承受短時間湧入的龐大流量而當機,這對奧美來說又是另外一種壓力,不過這樣的壓力在採用 Microsoft Azure 雲端平台後,便徹底解決,當流量太大時,只要加大雲端平台的空間就能充分消化。

王秋鎮認為,行銷活動無法準確地估算流量,放在雲端,不僅為奧美降低很大的工作負擔,對企業客戶也有幫助,而微軟則是奧美在選擇雲端合作伙伴的最佳選擇。因為奧美不是技術人員,但客戶免不了會有技術問題,微軟在台灣有24小時X7日的客服團隊,可以提供充分的技術協助與支援,為奧美解答企業客戶的問題,提昇服務滿意度。

當IT變成推手 才能落實360度全方位行銷

對奧美來說,將專案中的IT工作移交給雲端平台時,意味著技術不再是限制,奧美所能揮灑創意的空間就更大了,不必再擔心可能會有的IT問題。

舉例來說,之前某名牌汽車針對年輕消費者設計一款新車,以往消費者必須下載APP才能體驗新車試乘的感覺,如今在雲端平台充分的技術支援下,改用手機掃描二維條碼、立即連到網站進行體驗,如此不僅簡化體驗流程,提高消費者體驗的欲望,奧美又不必擔心流量太大的當機風險。

王秋鎮強調,當IT技術成為推動業務的支援、而不是阻力時,更能幫助奧美落實360度全方位行銷的目標。

所謂360度全方位行銷,乃是將所有接觸消費者的管道串接在一起,例如:電視廣告的結尾邀請觀眾加入粉絲頁,因為消費者的品牌體驗歷程不會只有一種管道,而是在不同管道間連續的體驗,如:在看電視節目的空檔滑手機,透過全方位整合,強化行銷力道,讓企業客戶的品牌、產品與服務能在消費者心中留下更好的市場評價與形象。

Azure 成功案例 - 書店的下一步!金石堂採用 Azure 建立在地化服務,布局跨境商城

$
0
0

隨著雲端技術與服務的成熟發展,「書店」的概念已不再單純侷限於線上或線下的服務,以網路書店起家的亞馬遜 (Amazon) 及博客來近來接連開設第一家實體店面,顯見實體以及虛擬,已經不僅是彼此的延伸,兩者的互補與整合更是全新的商機。

縱然與上述兩者的經營路線大相逕庭,成立超過30年的金石堂書店,卻也早就洞見這波趨勢,不只在2000年跨足經營線上書店,近年來更利用雲端串連虛擬與實體通路,透過O+O (Online、Offline) 整合模式滿足客戶的不同需求。

從消費者角度,讓兩個 O 共同滿足市場

金石網絡公司資訊處總監陳俊雄認為,一開始人們談的是 O2O,將消費者從線上帶到實體通路,或是由實體帶回虛擬,但是電商業者過往太專注在經營線上虛擬通路,而實體通路業者在跨足電子商務市場時,又無法自行掌握會員資料,導致線上與實體通路難以達到理想 O2O 的雙向互通境界。

「虛擬與實體兩個通路比較理想的合作模式應該是 O + O ,從消費者角度去思考需要哪些服務,再進一步思考如何讓兩個 O 相互合作滿足市場需求,」陳俊雄說,這也是金石堂一直以來的核心精神,現在很多服務都是在實體通路或客服中心接獲消費者需求後,透過虛擬通路滿足需求,並進一步衍伸成金石堂網路書店特有服務,3小時快送服務便是一個最好例子。

從會員到價格資源整合,打造理想 O+O 模式

然而,虛擬與實體通路的合作,資料流是最重要的基礎關鍵,陳俊雄指出,理想的 O + O 模式,應該以雲端平台作為基礎,打造會員通、商品通、行銷通、價格通四種模式的資源整合。

  • 會員通:整合實體與虛擬的會員帳號,讓消費者在實體或虛擬的交易都能累積在同一個帳號中;
  • 商品通:指當實體通路沒有商品時,由店員協助在線上訂貨,再由消費者自行取貨;
  • 行銷通:在線上舉辦行銷活動,但透過實體通路創造消費者的感動與體驗,舉例來說,金石堂之前在線上舉辦票選活動,但在實體通路舉行頒獎典禮;
  • 價格通:讓虛擬實體的商品價格一致,實體店面的消費者將不再擔心網路的價格較為便宜,而對購書猶豫不決。

O + O 建立起的書店價值,已經不只是線上書店或實體書店導購,而是將網路元素與實體購物的體驗相融合,無論逛網路書城的停留時間、書籍分類,或是實體店面讀者的逗留區域,甚至書店服務台的諮詢細節,從中觀察相異讀者的行為數據,進而在需求中創造無可替代的新服務。

建立在地化服務,布局跨境商城

目前,金石堂已完成商品通與行銷通兩大目標,現正朝會員通與價格通努力中,同時,金石堂電子商務網站的多媒體介面也已經移轉至 Microsoft Azure 雲端平台,下一步將根據資訊機密程度,逐一將網站服務放到雲端平台上。

陳俊雄表示,採用 Azure 後最大好處是機房數量由2-3個縮減為1個、海外營收明顯成長。他一步指出,Microsoft Azure機房遍佈全球,當消費者在瀏覽網站時,可以根據消費者所在位置,選擇離他最近的機房進行回應,與過往無論消費者置身何處,都要連回金石堂台灣機房的做法相比,網站回應速度變快許多,消費者不必坐在電腦前等待網頁畫面出現,滿意度大幅提高,海外營收也就跟著成長。

從市場這幾年的發展可以發現,虛擬通路不會完全取代實體店面,未來的通路策略,必定是線上實體雙 O 並進,這也是Amazon上個月在西雅圖開設第一家實體書店的原因。在這個競爭日益白熱化的時刻,唯有串連線上與實體資源,透過O+O全通路整合力量滿足消費者需求,才能持續創造與創新品牌價值。


Топ-10 самых главных анонсов Microsoft в 2015 году

$
0
0


Мы провожаем 2015 год и вспоминаем основные анонсы, которыми компания Microsoft поделилась за прошедший год. Далее вы найдете технологические анонсы уходящего года. Мы подводим итоги и хотим поделиться с вами наиболее яркими из них.

Читать подробнее...

...(read more)

[Windows] Windows 10 法人向け技術情報まとめサイト開設!

$
0
0

皆様、こんにちは。認証・デバイス管理・セキュリティ担当の橘です。

Windows 10 法人向け技術情報まとめサイト」 を開設致しましたのでそのお知らせとなります。
本サイトは Windows 10 新機能や WaaS (Windows as a Service) の動画による解説をはじめ、
今後は評価・検証のためのガイドなどを順次公開していく予定となっております。



Windows 10 の導入、および評価・検証を進められるお客様は是非こちらのサイトを定期的にご確認頂けますと幸いです。

PowerTip: Find Scripts in Script Center Repository from PowerShell ISE

$
0
0

Summary: Use a free add-on to directly access scripts and modules from the Windows PowerShell ISE.

Hey, Scripting Guy! Question In Windows PowerShell 5.0, I can access the TechNet Gallery for PowerShell modules, but is there an easy way
           to access and search the older Script Center Repository from the PowerShell ISE?

Hey, Scripting Guy! Answer In the PowerShell ISE, click Add-ons, select Script Browser Add-on Tool, and then follow the
           step-by-step instructions.

【マイクロソフトを選ぶ理由】 Microsoft Skype for Business と Cisco の比較 【 12/26 更新】

$
0
0

(この記事は whymicrosoft.com の記事を一部翻訳したものです。最新情報、および追加情報については元の記事をご覧ください。)

Microsoft Skype for Business は異種のソリューションの寄せ集めではない、生産性、相互運用性、そして柔軟性が高く、単純で拡張性のあるコミュニケーション インフラです。

 

多くの管理が必要になるのと完全に統合されているのと、どちらがいいですか?

ベンダーによっては、統合の難しさと断片化されたエクスペリエンスに課題がありますが、Skype for Business はあなたのチームをリアルタイムでつなぎます。


使い慣れたエクスペリエンス

Cisco

断片化されたソリューション、複数のインターフェイス

Cisco の買収を重ねてソリューションを広げるアプローチは、複雑なインフラの管理を要求されるだけではなく、ユーザーエクスペリエンスも断片化されます。そして Cisco のソリューションをオンプレミスとホスティング、オンラインで混合しようとすると、ユーザーは複数のクライアントを使用する必要があり、それぞれが断片化されてしまいます。

Microsoft

使いやすく統合されている、フェデレーション可能

Microsoft Skype for Business は、毎日使う Office アプリケーションのものとも同様の、みんなが知っている一般消費者向け Skype の使い慣れたエクスペリエンスと同様であり、企業向けの導入は簡単です。Skype for Business には統合クライアントが提供され、スマートフォン、タブレット、PC、そして Surface Hub 会議でシームレスなエクスペリエンスを提供します。

Skype for Businessフェデレーションにより、取引先と Skype for Business Online、または Lync を通してつながることができ、テキストメッセージ、在席情報、音声、ビデオ、会議、共有を行うことができます。Skype for Business では、テキストメッセージとビデオで、一般消費者向け Skype ユーザーとコミュニケーションすることも可能で、説得力のある一般消費者と企業間のエクスペリエンスを提供します。

統合されたプラットフォーム

Cisco

企業向けには間違ったテクノロジー

Cisco の断片化されたテクノロジーのつぎはぎは管理を難しくします。Cisco のプラットフォームは企業向けのユニバーサル コミュニケーション基盤としては最適化されていません。

Cisco はハードウェアとソフトウェアに依存した仮想プライベート ネットワーク (VPN) を利用してモバイルユーザーに会社のネットワークへのリモートアクセスを行わせています。しかし、会社規模の展開では、VPN はコストがかかり、ユーザーエクスペリエンスを悪化させ、ネットワーク接続が失敗したときにサービスへの影響が出ます。Cisco のコミュニケーション エクスペリエンスはビジネスの要件ではなくインフラ向けに最適化されています。

Cisco がクラウドサービスと呼んでいるサービスの一部はサービスプロバイダーからのホスティングによって提供されています。これは端から端までの機能を本当の意味でのマルチテナントの形で提供することを難しくし、追加のインフラ管理により複雑性が増し、ユーザーエクスペリエンスが限定的になります。アップグレードのスケジュール、テスト、展開はサービスプロバイダーに依存することになり、アップグレードの展開にはしばしば数か月かかることがあります。

Cisco は Microsoft Office との統合をサポートしているといっていますが、それはユーザーの在席情報に限られており、Microsoft Office 365 で提供しているようなフル機能は提供していません。

Microsoft

企業向けの最善のツール

Microsoft Skype for Business を使うと、人々は Office スイートやグループウェアアプリケーションと統合されたコミュニケーションツールを使ってつながることができます。

Microsoft Office と Office 365 の一部として Skype for Business は完全で統合されたエクスペリエンスを、単純な在席情報にとどまらず完全なコミュニケーション機能とともに提供します。アプリに統合されているので、ユーザーはインスタントメッセージのやり取り、画面の共有、音声通話、ビデオチャットをドキュメント内から行うことができます。

オンプレミスかオンラインかにかかわらず、Microsoft Office と Office 365 とのネイティブなバックエンドのインフラ統合により、Microsoft Exchange と Skype for Business の間の連絡先の共有、会議中の Microsoft PowerPoint の自動アップロード、会議中のドキュメントの共同編集機能などユーザーにとって便利で好まれる機能を使うことができます。IT 管理者は複雑なインフラの管理の代わりに包括的な統合によりメリットを享受します。

オフィスの外でも、VPN は必要ありません。リモートの従業員は Skype for Business を、端から端まで保護されて暗号化されたインターネットアクセスで利用することができます。モバイルで仕事をしている人は公衆と会社のネットワークにシームレスにアクセスすることができ、コスト効率がいい方法でデスクから離れたところで同僚と共同作業を行うことができます。マイクロソフトのユーザーエクスペリエンスはビジネスとユーザーニーズを尊重して作られており、オンプレミス、クラウド、ハイブリッドといった最適なインフラの選択を行うことができます。

 

より低い所有コスト

Cisco

複雑さはコストになる

Cisco はバックエンドの製品とインターフェイス管理が複数組み合わさっており、これによりオペレーションが複雑となりネットワークサポート、セキュリティ、アップグレードのしやすさが犠牲となります。最終的にはこれがコスト上昇を引き起こして新しい機能の導入を阻むことになる可能性があります。

Microsoft

信頼性があるシステム、加速するスピード、中央管理

Microsoft Skype for Business は信頼性の高いシステムと管理ツールでサポートされており、より低いコスト、単純化された管理とセキュリティ、合理化された展開、移行、メンテナンスを実現することができます。これにより貴社の組織には選択肢、柔軟性、コスト削減がもたらされます。

加えて Skype for Business は機能群をまたいで、オンプレミスでもクラウドベースの Office 365 にでもスケールすることができる統合されたサーバーインフラをサポートしています。中央管理ツールと Office 365 により管理、コンプライアンス、セキュリティ、モニタリング、レポーティングが簡略化される一方、クラウド PBX、PSTN 会議、PSTN 通話などの新しいサービスをより早く利用することができます。新しい機能がクラウドにリリースされると、それらはサーバーのアップグレードをしなくてもすぐに利用することができます。

Skype for Business は公衆と会社のネットワークを暗号化された状態で通信する高品質の音声とビデオのエクスペリエンスを提供します。これにより、より安全にコスト効率よく従業員がリモートで共同作業をしたり、事業継続性を保ったりすることができます。また、Azure ExpressRoute for Office 365 を利用することで、貴社のデータセンターとマイクロソフトのデータセンタとの間でグローバルな高品質の音声とビデオサービスを利用することができます。

イノベーション

Cisco

選択肢に制約

Cisco はユニファイドコミュニケーションに関して限られた拡張性しか開発者に提供できません。加えて、強固な開発者コミュニティがありません。このため、お客様の選択肢は限られたものになり、お客様固有の IT 環境や業務プロセスに合致させるのがより難しく、より費用がかかるものになるでしょう。

Microsoft

完全な拡張性

Microsoft Skype for Business はフルに拡張可能なユニバーサル コミュニケーションを提供します。これは業界標準の技術に基づいて作成された単純化されたアプリケーション プログラミング インターフェイス (API) に近いものです。

マイクロソフトは貴社のユニバーサル コミュニケーション環境に機能を追加したりカスタマイズすることを簡単にします。そしてマイクロソフトやオープンテクノロジに携わる数百万人もの開発者による強固な開発者コミュニティがあります。これにより、ビジネスの変化するニーズに応じてユニバーサル コミュニケーション プラットフォームを拡張していくことが簡単になります。

Weekend Scripter: Manage Window Placement by Using PInvoke

$
0
0

Summary: Boe Prox shows us how to manage window placement in Windows PowerShell.

Honorary Scripting Guy and Cloud and Datacenter Management MVP, Boe Prox, here today filling in for my good friend, the Scripting Guy.

Today I start a little weekend fun by using a technique known as platform invoke, or PInvoke for short. What is PInvoke, you ask? Well, PInvoke allows us to utilize the low-level Windows API to call functions that would normally not be available to us natively.

This allows us to do some pretty cool things, such as looking at files with a file path that is greater than the MAX_PATH allowed when using normal means, such as Get-ChildItem—or even with privileges in PowerShell. Of course, all of this sounds nice and fun, but how do we actually accomplish something like this?

We have a few options to make this happen:

  • Use reflection to define the methods needed to call the API
  • Use a private reference
  • Find signatures online that are written in C# and copy them to compile into a usable type that we can use in PowerShell (the focus of this post)

I feel the easiest approach to working with PInvoke using PowerShell is looking for the proper PInvoke signatures needed to accomplish my goal. And what is my goal today? It is to show how we can find the X and Y coordinates of a window by using its process and its size. Then I’ll take that one step further by actually moving the window to another location on the screen. It may not be the most useful thing to cross the hallowed halls of this blog, but it is something cool never-the-less!

Find the position of a window

I already know the name of the function that I have to use if I want to locate the position of the window, and it is named GetWindowRect. The next stop on my journey to find the signature I can use. The site of choice that you should be using to find these PInvoke signatures is PINVOKE.NET. Seriously, this site and MSDN are your one stop shops for finding everything you need to know for working with PInvoke.

I simply type the name of the function that I want to look for and search for it. AfterI click the results that match what I am looking for, I am presented with the information that I need, for example:

Image of menu

Here you can see the C# signature that I will copy and paste into a here-string to use in PowerShell. I am not actually done yet because I need to provide a RECT object that is the output of running this function. I quickly look for that struct (thankfully there was a link on this page to make it easier to locate), and I also paste that to my here-string:

Add-Type @"

    using System;

    using System.Runtime.InteropServices;

    public class Window {

    [DllImport("user32.dll")]

    [return: MarshalAs(UnmanagedType.Bool)]

    public static extern bool GetWindowRect(IntPtr hWnd, out RECT lpRect);

    }

    public struct RECT

    {

    public int Left;        // x position of upper-left corner

    public int Top;         // y position of upper-left corner

    public int Right;       // x position of lower-right corner

    public int Bottom;      // y position of lower-right corner

    }

"@

Running this will compile the C# code that we can use to find more information about our window.

Image of command output

I covered the RECT parameter, but the other parameter is looking for the handle of a process that has to have a visual window on the screen. We can pull that information by looking at the MainWindowHandle property when calling Get-Process:

(Get-Process -Name PowerShell).MainWindowHandle

Image of command output

Putting this together, we create our RECT object that will be used as our ref object and pull back some information about our PowerShell window:

$Handle = (Get-Process -Name PowerShell).MainWindowHandle

$Rectangle = New-Object RECT

[Window]::GetWindowRect($Handle,[ref]$Rectangle)

Image of command output

The return value of $True tells us that this this was successful, and we can now view the contents of $Rectangle to see the results. The numbers may be a little confusing to look at, but it is simply looking at the top left (Left, Top) and the bottom right (Bottom, Right) of the window and the distance from the screen on those respective sides. The following image shows a visualization of this:

Image of window

Something like this just screams to be a function, right? Well, that is what I though too when I wrote Get-Window which provides this information and the size of the window. You can download it from the Script Center Repository and give it a run for yourself: Get the position of a window. Here is quick example of it in action against the PowerShell process:

Get-Process powershell | Get-Window

Image of command output

Set a window to a new location

I couldn’t have a Get without some sort of Set function, so I also wrote a Set-Window. It has the GetWindowRect PInvoke signature, and it also uses the MoveWindow signature, which allows me to redraw the window in a different location and change its size, if I choose to do so. You can find the signature to use on PINVOKE.NET: MoveWindow (user32).

It is important to set the redraw parameter to $True to ensure that the window is redrawn in its new location. If I don’t do this, the window will appear to be in its current location, but it definitely won’t actually “be there.”

I can use the RECT struct again to find my window’s current location and size, and then I can make use of that information when moving the window—especially if I choose not to change the size of the window. The end result is a function that I can use to move and resize a window. Here is a quick demo of this in action:

Get-Process powershell |

Set-Window -X 900 -Y 142 –Passthru

By specifying the –Passthru parameter, I can see the new coordinates and size of the window:

Image of command output

That is all there is today for working with PInvoke using PowerShell. Tomorrow, I will show another example of how we can utilize this to deal with stubborn files that are buried deep in the file system.

I invite you to follow the Scripting Guy on Twitter and Facebook. If you have any questions, send email to the Scripting Guy at scripter@microsoft.com, or post your questions on the Official Scripting Guys Forum. Until then, see ya!

Boe Prox, Microsoft Cloud and Datacenter Management MVP and Honorary Scripting Guy 

PowerTip: Display Titles of Windows

$
0
0

Summary: Boe Prox shows how to use Windows PowerShell to find the titles of windows.

Hey, Scripting Guy! Question How can I use Windows PowerShell to find the titles of windows?

Hey, Scripting Guy! Answer Use Get-Process and display the title of the processes for windows by looking at
           the MainWindowTitle property, for example:

Get-Process | Where {

    $_.MainWindowTitle

} |

Select-Object ProcessName, MainWindowTitle

 

ProcessName          MainWindowTitle                                             

-----------                     ---------------                                             

ApplicationFrameHost People                                                      

chrome               Browse by Tags - Hey, Scripting Guy! Blog - Site Home - Te...

mstsc                Remote Desktop Connection                                   

notepad              Untitled - Notepad                                          

PeopleApp            People                                                      

powershell           [x64] | BOE-PC\boepr on BOE-PC | PowerShell GC Memory: 25....

powershell_ise       Windows PowerShell ISE                                      

SnagitEditor         Snagit Editor - [Dec 20, 2015 4:55:14 PM]                   

WinStore.Mobile      Store                                                       

WINWORD              Manage Window Placement using Pinvoke.docx [Compatibility ...

【冬休みに学ぼう】最新の Office 365 の価値訴求トークが詰まったビデオを見よう【 12/27 更新】

$
0
0

Office 365 の提案は機能ではなく夢を語りましょう!

Office 365 の提案は、古い Office の置き換え提案だけではなく、お客様のもっと良い明日のためにご提案できる新しい働き方もあわせてご提案しましょう。Office 365 の最新の価値提案ビデオをご覧いただき、提案トークの練習をしてみてください。デモを一緒に行うと、より効果的です。

 

Office 365 で実現できる生産性の向上ーもっと良い明日のために。

(Please visit the site to view this video)

(この動画は、一部の動画撮影を除き、マイクロソフト社員が自宅から Office 365 の環境へ接続して、Skype for Business と OneDrive を活用し共同作業で制作しました。)

今よりもっと良くなるために、私たちは生産性を再創造します。もっとよい明日のために­、Office 365 が提供する、
メール、予定表、タスク管理などの Exchange Online,ドキュメント管理、ポータルやプロジェクトサイト、個人ストレージ、動­画共有などの SharePoint Online/Office 365 Video/Delve、チャット、在席情報管理、Web 会議のための Skype for Business、安全な企業向け SNS や、情報漏洩対策をなど、多岐にわたるメリットをわかりやすく説明しています。

Office 365 は単なるクラウドではなく、世界最高レベルの、安心で安全なクラウドサービスです。

 

デモ環境を作るなら...

社内使用ライセンス特典をご利用いただくのがおすすめです。コンピテンシーパートナー様であれば、コンピテンシー特典としてお持ちの社内使用ライセンスを活用しましょう。

コンピテンシーパートナー様でなくても、マイクロソフト アクション パック サブスクリプション をご購入いただくことで、マイクロソフトのライセンスを安価に導入することが可能です。


Weekend Scripter: Remove a Long Path File

$
0
0

Summary: Boe Prox shows how to remove a file with a long path.

Honorary Scripting Guy and Cloud and Datacenter Management MVP, Boe Prox, here today filling in for my good friend, the Scripting Guy.

This is a continuation of this weekend series on working with PowerShell and PInvoke to do things that you normally couldn’t do natively. Also see Manage Window Placement by Using PInvoke.

Today I am continuing my approach of working with PInvoke by using Add-Type to compile C# code that contains the PInvoke signatures to show that it can be pretty easy to pull together and use a Windows API when we need it.

Yesterday I showed an approach to locate and move a window on the screen, which is pretty neat, but ultimately, probably a novelty. Today I will show something that may be of more use for removing a file or folder that can’t be deleted normally because the length of the path exceeds a MAX_PATH limitation of 260 characters. Although this is a limit in the API, it doesn’t mean that we cannot get around it with a little help from a PInvoke signature and knowing how to provide the proper path to the file.

To show my dilemma, I have a file called PleaseDeleteMe.txt which was created by someone who mapped a drive to a location deep in the file system. When I attempt to delete this file, I am greeted with an error message that states the path is too long to reach in and delete the file.

Image of error message

Actually in this case, because it cannot get beyond that character length limit, it doesn’t even know that this file exists, let alone be able to remove it. Regardless, we have an issue on hand if we want to remove this file. We could remove it by mapping a drive letter to a folder deeper down in the file system, then navigate to that new drive letter and remove the file. Or we could use Robocopy (it allows us to bypass the API limit and remove the file). Or we can use the DeleteFile PInvoke signature to accomplish this. Of course, we are going to go the PInvoke route and remove that file via PowerShell.

First we need to see that signature on PINVOKE.NET and copy it into a here-string so we can compile that into a usable type.

Image of menu

The only signature that I am worried about here is the first one (DeleteFile), and I will work to compile that into our new type:

Add-Type @"

    using System;

    using System.Runtime.InteropServices;

    public class LongFilePath {

        [DllImport("kernel32.dll", SetLastError = true)]

        [return: MarshalAs(UnmanagedType.Bool)]

        public static extern bool DeleteFile(string lpFileName);      

    }

"@

[LongFilePath]::DeleteFile

Image of command output

Don’t let the parameter fool you by thinking it will take a string path like what we are used to. If you supply the full file path as-is, you will be greeted with disappointment:

Image of command output

The return value of $False tells us that we were not successful in removing the file from the folder. Why didn’t this work?

We are using the Windows API to call DeleteFile, so that should “just work,” right? Well, that is mostly true—except for the part where we have to adjust the format of the file path into something else that will tell the API to bypass that limit on the path. The trick is to make the file path acceptable by prepending a ‘\\?\’ to the path so that the DeleteFile function treats it differently and allows us to remove the file.

$File = '\\?\C:\thisisaveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryverylongdirectory\NestedFolder\AnotherNestedFolder\PleaseDeleteMe.txt'

[LongFilePath]::DeleteFile($File)

Image of command output

The return value of $True tells us that this file has been successfully removed from the long folder path. A quick look at the folder that this file resided in proves that this is accurate.

Image of menu

Using a windows API function and formatting the full path properly by prepending a UNC path allowed us to easily remove a problem file that was buried deeply in the folder structure without no issue at all.

I wrote a simple function to make this process a little easier. All you have to do is copy the file path and use Remove-LongPathFile with the –Path parameter to remove the file. It also accepts input via the pipeline to remove more files. Here is a quick example:

Image of command output

So you now have a way via the PowerShell console to remove files that are buried deeply in the file system, which would normally prevent you from easily handling their deletion!

I invite you to follow the Scripting Guy on Twitter and Facebook. If you have any questions, send email to the Scripting Guy at scripter@microsoft.com, or post your questions on the Official Scripting Guys Forum. Until then, see ya!

Boe Prox, Microsoft Cloud and Datacenter Management MVP and Honorary Scripting Guy 

Good bye TechNet, hello Data Chant

$
0
0

This is my last post here on TechNet, as I am leaving Microsoft this week, and move to Chicago. You can read my farewell post here, (and on the way, get links to a great resource to pull data from LinkedIn and build competitive analysis dashboard in Excel).

Please continue following this blog, our team will continue publishing new stuff and features of the new Get-Data stack of Excel 2016.

To continue reading my personal blogs, you can follow datachant.com.

Follow me also on twitter:

@gilra

@datachant

And connect with me on LinkedIn

See you on the other side,

Gil Raviv

Coding for kids

$
0
0

My daughter Iris is 7 years old and sometimes I ask her, just for the fun of it, what she wants to be when she grows up. Sometimes Iris is going to be a police woman, sometimes she wants to work with pets, and sometimes she wants to be a superhero. Sometimes she says: “Or maybe I am going to do what you do, mommy.” This always makes me smile. Then she adds: “Then we could work together, wouldn’t that be fun?”

I have promised myself not to push her in a specific direction, so I certainly will give her the freedom to do that and help her with it, or let her go in a completely different direction. Having said that, I have always wondered if she’d enjoy programming and enjoy the abstract thinking that goes along with it.

Recently, Ed Price brought to my attention that Microsoft is putting serious effort in getting kids in contact with programming, often for the very first time. Here are some links:

This has certainly peeked my interest and I was thinking of a way how to adapt that for a Dutch audience, but then I found out I don’t actually need to. If you live in the Netherlands, there’s something called “codeuur” (hour of code): http://www.codeuur.nl/. That settled it for me, and in the next few weeks I’ll be contacting my daughter’s school and see if they’re interested in me and my husband teaching the kids some programming. The programs I mentioned are well thought out, but given the audience (kids that are approx. 7 years old) I feel the need to provide them with a basic overview of some core concepts.

It was quite clear to me what I’d like to start talking about, and I’ve searched for some nice pictures to go along with that to keep things interesting. Let’s go through the topics and some of the pictures I’ve come up with (at the end of the post I’m including a link to the entire presentation if you’re interested in seeing all the pictures)…

Of course, as we may have learned from “Alice in Wonderland”, a story needs to be told from the beginning. So, I’d like to begin with showing the kids a picture of the first computer in the world, the Eniac, taking up nothing less than an entire room.

Then, I want to move on and show different pictures of different types of computers. I’ve found it’s quite confusing for kids to understand that computers of different sizes all can be computers, so I’ll show pictures of a desktop, laptop/notebook, tablet, smartphone and smart watch and hope that by that time all children realize that those are all computers that can come in quite different sizes.

Then I want to take a look at some possibilities of the now or the near feature and discuss wearables. What about a computer in your glasses, jewellery, or toothbrush?

I also want to talk about what the internet is – all these computers around the world communicating to each other can be visualized quite nicely as you can see for yourself if you download the presentation.

I also want to discuss the “Internet of things”. Some of the kids have probably already come in contact with some of the aspects of it. Maybe their father uses an app to find out where his car is parked, maybe they like the idea of being able to find out the whereabouts of their cat, or maybe their mother uses her phone to turn on the heat before arriving at home.

I want to explain the concepts hardware and software. Concepts quite difficult to explain in words, but quite easy to visualize. Let’s take hardware. I’ve found a picture showing the insides of a computer, this makes perfectly clear what it is.

As far as software is concerned, it is also quite easy to show different manifestations of it, such as a picture of a Mario computer game, or a YouTube screenshot (since most kids seem to enjoy finding movies of small animals), or a screenshot of Skype. Kids may or may not have used Skype, but at any rate, every kid will be able to relate to software that allows you talk to a person and see him or her at the same time.

Having discussed software, it gives me the opportunity to discuss what a person who creates software, a software developer or programmer, is. Of course, this is also an excellent opportunity to have a laugh. So I tracked down a funny photo of a very nerdy programmer (yes, I know, how stereotypical is that).

Since it’s a mini-course about programming I also want to talk a little bit about programming languages. Starting with the interesting fact that a computer only understands zeroes and ones. Then, I’ll show a fragment of a grown-up programming language that I tend to use a lot myself, namely C#. After that, I want to show what a programming language for kids looks like, which is a lot more accessible.

Of course, when the kids start programming it is quite possible and acceptable they’ll make mistakes. Such mistakes are called bugs and I want to explain to them why such mistakes are called bugs.

Finally, I want the children to try out if programming has something to offer them and have fun without being afraid of trying out new things and making mistakes. Especially for the girls, since currently there are still relatively few women out there doing coding. To me, the next picture is as encouraging as it gets:

If you want to download the presentation and check out all the pictures or use it for your own purposes, that’s absolutely fine. You can get it here.

How to Wrap an Android LOB application using MS AWT and deploy on MS Intune as Managed Application.

$
0
0

 

Before wrapping, an application should fulfill the below mentioned criteria:

1.  The application should be a valid Android application package with .apk extension.

2. Must not be already wrapped by any wrapping tool.

3. Should be written for Android 4.0 or above.

4.Generic applications downloaded from Google Play Store by Microsoft, Google and other vendors cannot be wrapped e.g. Cortana, YouTube etc.

 

Pre-requisites:

1. Java Development Kit (1.7,1.8 ) by Oracle. you can download the JDK from this link.

http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

2. Application Wrapping Tool for Android by Microsoft. Download the latest App Wrapping Tool from Microsoft. Right now the latest version is:

https://www.microsoft.com/en-us/download/details.aspx?id=47267.

3. Before uploading the application to Intune, it should be signed. For signing, Java Keytool can be used. A keystore should be created for this first.

 

Procedure to be followed:

1. Install the JDK environment.

2. Create a keystore.

3. Install the App Wrapping Tool.

4. Wrap the application.

5. Sign the wrapped application.

6. Upload the signed apk.

7. Create a Mobile Management Policy in MS Intune portal.

8. Deploy the application.

 

How to Create a Keystore:

1. Open the elevated PowerShell prompt.

2. To create the keystore, navigate to “C:\Program Files\Java\jdk1.7.0_79\bin” (Default location of Jdk installation for x64).

3. Run the following command:

.\Keytool.exe –genkey –v –keystore MSAWT.keystore –alias MSAWT –validity 10000

Provide the details like Org, country etc. and press enter. Provide the passwords for keystore when prompted.

Now the keystore is ready and can be used to sign the applications.

 

How to Install the Application Wrapping Tool.

Application Wrapping Tool is a command line tool. Install the tool by double-clicking the file.

clip_image002

clip_image004

clip_image006

 

How to Wrap the Application:

1. Run the following command in elevated PowerShell module to import AWT module:

“PS> Import-Module “C:\Program Files (x86)\Microsoft Intune Mobile Application Management\Android\App Wrapping Tool\IntuneAppWrappingTool.psm1”

(“C:\Program Files (x86)\Microsoft Intune Mobile Application Management\Android\App Wrapping Tool” is the Default location of AWT installation on x64 machine)

2.  Next run the following command to wrap the app:

Invoke-AppWrappingTool  -InputPath “Path to your application.apk” –OutputPath “Path to your output wrapped application.apk”

3.  It will take a minute or two and will wrap the application, if all the criteria for the apk as mentioned above is met.

(For reference: https://technet.microsoft.com/en-in/library/mt147413.aspx)

 

How to Sign the wrapped application:

You can sign the application while wrapping the application by modifying the command, or it can be signed later.

To sign the application at the time of wrapping, modify the command in elevated PowerShell module as below:

Invoke-AppWrappingTool  -InputPath “Path to your application.apk” –OutputPath “Path to your output wrapped application.apk”  -KeyStorePath “C:\Program Files\Java\jdk1.7.0_79\bin\MSAWT.keystore” –KeyAlias MSAWT –verbose

Provide the keystore password when prompted.

Or

To sign the application separately, run the following commands:

1. Navigate to “C:\Program Files\Java\jdk1.7.0_79\bin” in elevated PowerShell module:

2. PS C:\Program Files\Java\jdk1.7.0_79\bin> .\jarsigner.exe -verbose -keystore .\MSAWT.keystore “Path of your wrapped application.apk” –keyalias MSAWT

Provide the keystore password when prompted.

3. To check if the file is signed, run

PS C:\Program Files\Java\jdk1.7.0_79\bin> .\jarsigner.exe –verify “Path of your wrapped&signed application.apk”

The application package app.apk is now wrapped and signed. It can be uploaded to MS Intune portal and can be deployed as managed application.

 

How to create a mobile management policy:

To create a mobile management policy, please refer to the link:

https://technet.microsoft.com/en-us/library/dn878026.aspx

How to Deploy the application:

To deploy a managed application, please refer to the link below:

https://technet.microsoft.com/en-us/library/dn646972.aspx

Git ve TFVC aynı Takım Projesinde

$
0
0

Merhaba Beklediğimiz büyük haberlerden biri idi bu. Sprintlere git repoları ekleme olanağı eklendi. Git repolarını daha kolay migrate etme olanağı sunulurken, önemli datalarımızı da takım projelerimize çok kolay bir şekilde aktarabileceğiz.

Adding a Git repository to a TFVC project

Package Management

Geçen hafta Visual Studio Team servisleri içerisinde yeni paket yönetimi preview olarak sunulmuştu. Market Placeden bu ön izlemeyi indirebilir durumdayız.

Sürekli iş teslim akışının temel parçalarından olan Paketler daha kolay bir şekilde yönetilip dağıtabilir durumda olacakıt.r Nuget Installer ve Nuget Publisher yeni Team servisleri ile beraber sorunsuz çalışacak şekilde güncellendi.

The NuGet Publisher build task

Dhaa fazla bilgi için https://www.visualstudio.com/en-us/news/2015-nov-24-vso adresini ziyaret edebilirsiniz.

Visual Studio online servisleri ile alakalı şu yazılarda ilginizi çekebilir. http://blogs.msdn.com/b/vsoservice/

Viewing all 17778 articles
Browse latest View live




Latest Images