Arsip bulanan: Januari 2008

Ini adalah mengapa aku tidak seperti menggunakan Tools hari nol

http://groups.google.com/group/microsoft.public.sharepoint.portalserver.development/browse_thread/thread/41e8cbe4f15e8b4c/76506ea401403e35?#76506ea401403e35

Jika alat melakukan hal-hal yang Anda tidak mengerti dan kemudian gagal dalam langkah n dari jumlah langkah-langkah yang tidak diketahui, kau mati di dalam air…

</akhir>

Technorati Tags:

Solusi gagal impor BDC ADF: “Terjadi kesalahan berikut:”

Saya sekali lagi kerajinan BDC ADF file dengan tangan (sehingga dapat membangun saya "turun halaman saya!" Cred) dan memukul kesalahan ini indah:

gambar

"Impor definisi aplikasi gagal. Terjadi kesalahan berikut:"

Seperti Anda dapat melihat, ada kesalahan, Tapi … itu tidak akan mengatakan apa.

Dalam kasus saya, masalah ternyata bahwa saya telah mulai dengan ADF fungsional untuk proyek berbeda yang terhubung ke database dan dieksekusi SQL query terhadap pandangan. Dalam proyek baru ini, Aku memanggil metode pada layanan web. Aku sudah dilucuti keluar barang-barang tertentu DB dan menambahkan barangku layanan web, tetapi gagal untuk memperbarui <LobSystem>yang jenis atribut. Saya beralih ke "WebService" dan saya gembira pindah ke lebih menarik dan yang lebih baru impor kesalahan, yang ditangani pada waktunya.

Berikut adalah LobSystem salah:

<LobSystem
xmlns:XSI =http://www.w3.org/2001/XMLSchema-instance
XSI:schemaLocation =http://schemas.Microsoft.com/Office/2006/03/BusinessDataCatalogBDCMetadata.xsd
Jenis = "Database"
Versi = "1.0.0.0" Nama = "xyzzy"
xmlns ="
http://schemas.Microsoft.com/Office/2006/03/BusinessDataCatalog">

Ini benar:

<LobSystem
xmlns:XSI =http://www.w3.org/2001/XMLSchema-instance
XSI:schemaLocation =http://schemas.Microsoft.com/Office/2006/03/BusinessDataCatalogBDCMetadata.xsd
Jenis = "WebService"
Versi = "1.0.0.0" Nama = "xyzzy"
xmlns ="
http://schemas.Microsoft.com/Office/2006/03/BusinessDataCatalog">

</akhir>

Technorati Tags:

BDC tampaknya pengganti yang layak untuk pencarian

UPDATE: Posting MSDN ini memiliki beberapa pengamatan yang menarik dari JXJ berdasarkan nya, terutama negatif, pengalaman akan turun jalan ini: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2623565&SiteID=1

Kami memiliki bisnis skenario di mana kita perlu untuk menghubungkan dua dokumen perpustakaan melalui umum "dokumen ID" lapangan.

Kita sering menggunakan kolom pencarian untuk mengimplementasikan link seperti ini. Ada beberapa kelemahan untuk kolom pencarian, tiga diantaranya yang:

  1. Hanya satu kolom dari perpustakaan lookup lookup bisa dihubungkan.
  2. Kinerja: Perpustakaan sumber bisa berisi ratusan entri. Itu adalah terlalu banyak entri dalam pencarian.
  3. Pencarian: Ada tidak ada pencarian terintegrasi. Saya tidak bermaksud dalam arti MOSS Cari, tapi tidak ada cara untuk mencari / menyaring beberapa kolom dari sumber dokumen perpustakaan dan menemukan link yang Anda inginkan.

Didukung oleh BDC, kita dapat menggunakan data bisnis"" jenis kolom dan menyediakan penelusuran dan bahkan memungkinkan beberapa kolom data untuk muncul dalam daftar dilihat.

Saya telah memiliki beberapa keberhasilan awal dengan pendekatan ini dan berencana untuk menulis lebih banyak tentang hal itu.

Jika Anda telah bekerja sudut ini sebelum dan memiliki komentar, Silakan berbagi!

</akhir>

Technorati Tags:

Solusi untuk BDC impor kesalahan: “Tidak dapat memuat jenis dijelaskan oleh TypeDescriptor di TypeName …”

Saya telah bekerja dengan BDC hari ini, pengkodean file ADF dengan tangan dan menghasilkan sendiri beberapa kesalahan. Satu kesalahan tersebut:

Aplikasi definisi impor gagal. Terjadi kesalahan berikut: Tidak dapat memuat jenis dijelaskan oleh TypeDescriptor di TypeName. Nama parameter: typeName galat ini ditemui di atau hanya sebelum baris: ' 35’ dan posisi: '20'.

MOSS ditampilkan kesalahan ini ketika saya mencoba untuk mengimpor file ADF XML.

Aku meneliti Internets dan menemukan bahwa saya adalah referensi nama contoh LOB (dari <LobSystemInstance>) dalam saya <TypeDescriptor> node ketika saya harus dirujuk nama LOB itu sendiri (dari <LobSystem>).

Salah:

<TypeDescriptor TypeName="Conchango.KeyValue, Nama contoh LOB" Nama = "KeyValue">

Memperbaiki:

<TypeDescriptor TypeName="Conchango.KeyValue, LOB nama" Nama = "KeyValue">

Berharap ini menghemat seseorang satu jam atau dua waktu.

</akhir>

Berlangganan ke blog saya!

Technorati Tags:

Solusi untuk masalah: “FileNotFoundException” Dengan Feature Receiver.

Saya bekerja pada sebuah fitur minggu yang akan menambah Penerima acara beberapa contoh daftar khusus. (Aku blogged sedikit tentang bahwa daftar penerima di sini).

Menggunakan baris perintah, Aku bisa menginstal fitur dengan tidak ada kesalahan (Tapi lihat di bawah untuk kesalahan tersembunyi). Ketika saya mencoba untuk menggunakan fitur di situs, MOSS mengeluh "FileNotFoundException" kesalahan. Blog entry ini menjelaskan bagaimana saya memecahkan itu.

Ini adalah kesalahan yang MOSS menunjukkan di peramban web:

Fitur ' b2cb42e3-4f0a-4380-aaba-1ef9cd526f20’ tidak dapat diinstal karena pemuatan acara penerima perakitan "xyzzyFeatureReceiver_0" gagal: System.IO.FileNotFoundException: Tidak dapat memuat file atau perakitan ' xyzzyFeatureReceiver_0’ atau salah satu dari dependensi. Sistem tidak dapat menemukan file yang ditentukan.
Nama file: ' xyzzyFeatureReceiver_0’
di System.Reflection.Assembly.nLoad(Nama file AssemblyName, String basis kode, Bukti assemblySecurity, LocationHint Majelis, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection)
di System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Bukti assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)
di System.Reflection.Assembly.InternalLoad(String assemblyString, Bukti assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)
di System.Reflection.Assembly.Load(String assemblyString)
di Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject()
WRN DIMULAI: Majelis mengikat pendataan diaktifkan OFF.
Mengaktifkan pengelogan kegagalan mengikat Majelis, menetapkan nilai registri [HKLMSoftwareMicrosoftFusion!EnableLog] (DWORD) untuk 1.
Catatan: Ada beberapa kinerja penalti yang terkait dengan Majelis mengikat kegagalan penebangan.
Untuk mematikan fitur ini, menghapus nilai registry [HKLMSoftwareMicrosoftFusion!EnableLog].

Memecahkan masalah dengan Windows SharePoint Services.

Aku tahu bagaimana untuk sengaja menyebabkan kesalahan itu: Jangan Instal Majelis dalam GAC. Tapi, itu dalam GAC. Saya biasanya menginstal Majelis ke GAC dengan menyeretnya ke c:\windowsassembly folder menggunakan windows explorer. Aku belum pernah merasakan 100% nyaman melakukannya karena saya selalu berpikir bahwa gacutil ada karena suatu alasan … Jadi aku mencoba yang. Tidak ada bedanya.

Aku mencari Internets dan menemukan posting ini: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2243677&SiteID=1

Poster yang terjadi menggunakan sedikit akar sama kode (dari buku dalam WSS dari daftar ini) Jadi itu tanda harapan. Namun, saran dari dekorasi perakitan dengan [Majelis: ] direktif tidak masuk akal bagi saya. Aku mencoba tetap dan aku benar. Tidak ada bedanya.

Lalu aku menyadari bahwa definisi kelas saya itu tidak umum. Aku berhasil publik dan yang membuat tidak ada perbedaan.

Berikutnya, Aku pergi ke kesulitan memungkinkan "Majelis mengikat kegagalan log" (mengikuti petunjuk berguna dan akurat disediakan) dan ini adalah tempat hal-hal mulai mendapatkan menarik. Log yang menunjukkan bahwa runtime sedang mencari di mana-mana pada server untuk perakitan saya. Itu bahkan tampaknya akan mencari di lemari obat saya. Tapi … itu tidak akan mencarinya di GAC.

Aku mengenakan jaket musim dingin dan pergi mencari Internets lagi dan menemukan bahwa seseorang memiliki masalah ini juga. Diskusi panjang di yang posting peters off menjadi apa-apa dan I cant menemukan solusi.

Aku pindah perakitan saya ke salah satu tempat log klaim itu sedang mencari dan aku membuat kemajuan yang lebih sedikit. Aku dihargai dengan kesalahan baru di peramban ketika saya mencoba untuk mengaktifkan fitur:

Gagal membuat objek penerima fitur dari Majelis "xyzzyFeatureReceiver_0", jenis "Conchango.xyzzyFeatureReceiver" untuk fitur b2cb42e3-4f0a-4380-aaba-1ef9cd526f20: System.ArgumentNullException: Nilai tidak boleh null.
Nama parameter: jenis
di System.Activator.CreateInstance(Tipe tipe, Non-publik Boolean)
di System.Activator.CreateInstance(Tipe tipe)
di Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject()

Memecahkan masalah dengan Windows SharePoint Services.

Waktu untuk satu perjalanan terakhir ke Internets!

Kali ini saya menemukan, cukup diduga, MOSS bahwa isu kesalahan ini karena Majelis tidak dalam GAC.

Saya ingin mendapatkan sesuatu yang positif dari ini dan mencoba untuk merasa sedikit bangga bahwa saya telah membuat Pelarian dari menjalankan Majelis, Tapi itu tidak bekerja. Aku hanya plain kesal. Aku mendapati diriku bergumam "ayam atau telur" di bawah napas.

Saya akhirnya memutuskan untuk menyepak bola. Saya membuat sebuah proyek yang sama sekali baru dan copy/paste kode dari proyek tidak bekerja incredible-cloaked-from-the-GAC-assembly atas untuk proyek baru ini. (Saya mencari sebuah bendera membangun yang disebut sesuatu seperti "Sembunyikan dari Majelis mengikat jika dipasang di GAC" tapi tidak bisa menemukan satu).

Menginstal fitur dan mengaktifkannya dan … kerjanya! Jadi, setelah semua itu, Aku pada dasarnya ' reboot’ proyek saya. Ini adalah alasan lain mengapa aku benci komputer.

Aku belajar sesuatu yang bermanfaat dari ini. Saya telah menginstal fitur menggunakan baris perintah stsadm sepanjang hari dan telah menggunakan "-memaksa" Opsi keluar dari kebiasaan. Untuk beberapa alasan, Saya tidak menggunakan opsi Angkatan-ketika saya menginstal proyek baru. Saat ini, Aku benar-benar, benar-benar lupa untuk menyalin perakitan proyek baru ini ke dalam GAC. Akibatnya, Saya menerima bahwa "FielNotFoundException" kesalahan. Saat ini, Aku mendapatkannya dari stsadm, tidak ketika saya mencoba untuk mengaktifkan fitur melalui web browser. Jadi, -kekuatan benar-benar memainkan dua peran. Hal ini memungkinkan Anda untuk menginstal ulang sebuah fitur yang ada. Hal ini juga memungkinkan Anda untuk menginstal fitur kereta yang tidak bekerja pada saat runtime dengan menekan kesalahan. Mungkin dikatakan sebagai banyak bantuan di suatu tempat, tetapi aku tidak pernah melihatnya.

</akhir>

Technorati Tags: ,

Minggu lucu: Atas 10 Cara untuk mengganggu istri Anda

  1. Membeli brokoli ketika Anda tahu ada sudah lebih dari cukup di lemari es.
  2. Lari. Mendinginkan. Landas sarung bantal yang bersih dan ganti dengan T-shirt. Tutup dengan sarung bantal bersih.
  3. Ketika mengemudi, Tanyakan jika kita harus pergi salah jalan jalan.
  4. Untuk 15 tahun, setiap hari Minggu menunjukkan bahwa istri Anda pergi ke sebuah museum, Check kejutan bahwa Museum buka pada hari Minggu.
  5. Untuk 15 tahun, kadang-kadang sarankan pergi ke toko buku lokal pada hari Minggu. Check kejutan bahwa mereka tidak buka pada hari Minggu (Terima kasih banyak Undang-undang Blue!).
  6. Penggunaan 20 poin untuk melakukan 3 titik giliran.
  7. Pada sore musim gugur yang sejuk, berjalan ke ruang dan menyalakan a/c. Mengeluh bahwa itu dingin. Ketika istri mengatakan, "maka mengapa Apakah Anda menghidupkan yang, konyol" dan bangun untuk mematikannya, Ambil tempat hangat yang ia di sofa. Poin bonus jika dia tidak menyadari Anda melakukannya sampai jauh kemudian.
  8. Membuka kaleng lezat putih albacore tuna dan memakannya langsung dari dapat, tempat tidur, Di malam hari.
  9. Pergi ke dapur sementara istri adalah makan malam, membuka laci sendok garpu dan mendorong peralatan di sekitar sampai jeritan istri, "apa yang Anda Cari!"
  10. Setelah menerima kartu bisnis baru, diam-diam menempatkan mereka semua di sekitar rumah: Di bawah tempat tidur, dalam kasus bantal, di dalam cangkir kopi, dalam tasnya, di kantong-kantong mantel, kompartemen sarung tangan mobil, pantry — mana saja yang dapat Anda pikirkan.
  11. Menulis entri blog tentang istri Anda.
  12. Bangun.
  13. Ketika berjalan-jalan kota New York, waspada untuk "berkerak" benda-benda di tanah. Menjaga dalam pikiran istri Anda khusus ketakutan, menjangkau ke seolah-olah untuk memilih satu naik ke atas dan bertanya, "hmm, Aku bertanya-tanya apa yang?" (Bersiaplah untuk istri tubuh membanting Anda seolah-olah dia adalah agen dinas rahasia yang melindungi Presiden dari penembak jitu atau Anda akan menemukan diri Anda berbaring telentang di trotoar).
  14. Dua kali berkeliling mencari ruang parkir. Anda tahu bahwa Anda benar-benar telah memukul membayar kotoran ketika anak Anda di kursi belakang berteriak, "Oh tidak ada! Dia melakukan itu lagi!"
  15. Menulis "top 10" Daftar yang tidak memiliki 10 item.

===

Bonus istri lelucon:

Dua laki-laki rekan pekerja pergi keluar untuk Makan Siang. Salah satu dari mereka memberitahu yang lain, "Aku membiarkan longgar memalukan Freudian slip malam."

"Freudian slip? Apa itu?"

"Yah, Ketika kami selesai makan, pelayan datang dan bertanya bagaimana kita menyukai makanan kami. Aku bermaksud mengatakan, ' Aku mencintai dada ayam’ tetapi sebaliknya aku berkata 'Aku mencintai payudara Anda'. Aku merasa dipermalukan."

"Ah," nya rekan kerja menjawab. "Aku punya hal yang sama terjadi pada saya akhir pekan ini dengan istri saya. Kami sedang makan sarapan aku bermaksud untuk meminta dia untuk lulus mentega, tetapi sebaliknya aku berteriak padanya, ' Anda menghancurkan hidupku!’"

</akhir>

Technorati Tags:

ID peristiwa 1023: “Windows tidak dapat memuat extensible counter DLL MSSCNTRS”

UPDATE (04/08/08): Saya tampaknya telah memecahkan masalah ini. Dari baris perintah, Aku berlari "c:\windowssystem32lodctr /R" per entri berbicara tentang InstallShield masalah dan yang nampaknya telah dipecahkan itu bagi saya.

Aku telah memperhatikan bahwa akhir-akhir ini, fan desktop/server saya pernah padam. Aku tahu itu digunakan untuk mematikan. Aku mengambil waktu untuk memeriksa itu menyadari bahwa proses VMware berlari konsisten 20% pemanfaatan pada salah satu CPU's. Aku memeriksa event log dan melihat kesalahan ini di log aplikasi terjadi puluhan kali per menit:

Windows tidak dapat memuat extensible counter DLL UGatherer, DWORD pertama di bagian data adalah kode kesalahan Windows.

Windows tidak dapat memuat extensible counter DLL UGTHRSVC, DWORD pertama di bagian data adalah kode kesalahan Windows.

Windows tidak dapat memuat extensible counter DLL MSSCNTRS, DWORD pertama di bagian data adalah kode kesalahan Windows.

Jika saya bor ke rincian dari salah satu pesan tersebut, Saya mendapatkan ini:

Sumber: Perflib

Jenis: Kesalahan

Kategori: Tidak ada

ID peristiwa 1023

Saya melakukan beberapa penelitian dan ada indikasi itu bisa menjadi masalah izin dalam hal akses terhadap dll yang bersangkutan. Aku bermain-main dengan hal itu tetapi tidak bisa mempengaruhi hal-hal dengan cara yang positif sehingga aku menyerah pada yang.

VMware telah mengganggu saya tentang melakukan update untuk beberapa waktu, Jadi saya menuliskan versi diinstal (Rupanya "1.0.1 membangun 29996") dan melakukan update. Ini meng-upgrade saya ke v1.04. Sayangnya, itu tidak memperbaiki masalah.

Aku bisa berhenti gila jumlah pesan akan log aplikasi saya jika saya menutup layanan yang bernama "VMware otorisasi Layanan". Hal ini mencegah saya dari menggunakan perangkat lunak VMware, Jadi … tidak seperti pilihan terbaik.

Sistem operasi host adalah Windows XP 64 bit.

Saya tidak berpikir ini selalu terjadi dengan, tapi saya tidak ingat acara tertentu yang mungkin akan menyebabkan itu.

Ini adalah mengapa aku benci komputer.

</akhir>

Technorati Tags:

Cepat & Mudah: Mengubah nama File Upload menggunakan obyek SharePoint Model melalui acara penerima

UPDATE: Ini bekerja tetapi ada keterbatasan yang signifikan yang dijelaskan dalam komentar. Ini masih mungkin berguna dalam beberapa cirumstances.

UPDATE 2: Dalam proyek saya saat ini, pengguna selalu meng-upload dokumen. Akibatnya, Aku tidak lari ke masalah mana MS Word berjalan dan berpikir bahwa file yang diubah namanya di atasnya. Aku lari ke masalah, "file yang diubah oleh orang lain" dan memecahkan ini melalui sederhana Semafor jenis bendera. Pengguna harus mengubah meta data lapangan dari nilai default untuk sesuatu yang lain. Itemupdated() Penerima mencari nilai yang valid yang ada sebelum benar-benar melakukan rename dan sejak itu, Saya tidak punya masalah. Anda mungkin berbeda.

Saya punya klien persyaratan untuk mengubah nama file upload ke pustaka dokumen tertentu agar sesuai dengan konvensi penamaan tertentu. API tidak memberikan nama"()" metode. Sebaliknya, Kami menggunakan "MoveTo(…)". Berikut adalah sedikit sedikit kode untuk mencapai hal ini:

 Umum override Batal ItemAdded(SPItemEventProperties properti)
        {
            SPFile f = properti.ListItem.File;

            f.MoveTo(properti.ListItem.ParentList.RootFolder.Url + "/xyzzy.doc");
            f.Update();

        }

Bit hanya rumit adalah "sifat. ListItem.ParentList.RootFolder.Url". MoveTo() metode ini mengharuskan URL. Yang dihaluskan string poin saya ke root folder dari dokumen perpustakaan saya saat ini. Hal ini memungkinkan saya untuk menghindari coding apapun keras dalam acara saya Penerima.

Ini adalah versi lebih berguna yang melakukan hal yang sama, tetapi menetapkan nama file "Judul":

 Umum override Batal ItemAdded(SPItemEventProperties properti)
        {
            DisableEventFiring();

            // Menetapkan judul item ini untuk nama file itu sendiri.
 // CATATAN: Tugas ini harus dilakukan sebelum kita memodifikasi file itu sendiri.
 // Memanggil update() pada SPFile tampaknya membatalkan pada properti di
 // beberapa pengertian.  Pembaruan "judul" gagal sampai yang mengubah (dan update() panggilan)
 // dipindahkan di depan perubahan nama file.
            properti.ListItem["Judul"] = properti.ListItem.File.Name;

            properti.ListItem.Update();

            SPFile f = properti.ListItem.File;

            // Dapatkan ekstensi file.  Kita perlu yang kemudian.
 string spfileExt = baru FileInfo(f.Name).Ekstensi;

            // Mengubah nama file ke daftar item ID dan menggunakan ekstensi file untuk menjaga
 // Bagian itu utuh.
            f.MoveTo(properti.ListItem.ParentList.RootFolder.Url +
                "/" + properti.ListItem["ID"] + spfileExt);

            // Melakukan langkah.
            f.Update();

            EnableEventFiring();
        }

Forum diskusi: Menegakkan kepatuhan praktik terbaik dalam lingkungan Non-sepele MOSS

Fellow, "Tanda", telah memulai sebuah diskusi newsgroup berpotensi menarik yang berfokus pada "membangun sangat baik SharePoint pemerintahan dari awal" untuk 35,000 lingkungan pengguna.

Diskusi ini di sini: http://groups.google.com/group/microsoft.public.sharepoint.portalserver/browse_thread/thread/6d9a738d981af772/1c390b15c5407db6?#1c390b15c5407db6

Pop di atas dan berkontribusi!

</akhir>

URL kustom tindakan tidak akan menampilkan untuk fitur baru

Aku masih dalam kebiasaan kerajinan saya file XML fitur dengan tangan karena semua cukup baru untuk saya. Aku tidak ingin bergantung pada alat front-end bahwa hal-hal Apakah yang saya tidak mengerti (katanya ketika ia menulis sebuah blog entry yang menggunakan alat dia tidak mengerti).

Hari ini, Aku mencoba untuk menambahkan sebuah tindakan kustom ke pengaturan situs tetapi itu hanya tidak muncul. Aku bisa menginstal fitur dan melihatnya di situs fitur, tetapi ketika saya diaktifkan (tanpa kesalahan) itu hanya tidak akan muncul pada menu drop-down.

Saya akhirnya menyadari bahwa saya salah eja "SharePoint" dalam atribut lokasi dari <CustomAction> node. Ini adalah file elements.xml buruk:

<?XML Versi="1.0" encoding="utf-8" ?>
<Elemen xmlns="http://schemas.Microsoft.com/SharePoint/">
  <CustomAction
 Id="SiteActionsToolbar"
 GroupId="SiteActions"
 Lokasi="Microsoft.Sharepoint.StandardMenu"
 Urutan="100"
 Judul="Halo!"
 Deskripsi="Menu kustom tindakan ditambahkan melalui fitur."
 ImageUrl="_layouts/Images/menuprofile.gif">

    <UrlAction URL="http://www.XYZZY.com"/>

  </CustomAction>
</Elemen>

Bagus:

<?XML Versi="1.0" encoding="utf-8" ?>
<Elemen xmlns="http://schemas.Microsoft.com/SharePoint/">
  <CustomAction
 Id="SiteActionsToolBar"
 GroupId="SiteActions"
 Lokasi="Microsoft.SharePoint.StandardMenu"
 Urutan="100"
 Judul="Halo!"
 Deskripsi="Menu kustom tindakan ditambahkan melalui fitur."
    >
    <UrlAction URL="http://www.XYZZY.com"/>
  </CustomAction>
</Elemen>

That one took me a good two hours to figure out 🙂

Aku mengambil penghiburan dalam kenyataan bahwa beberapa hari di masa depan, Aku akan bisa mengatakan dengan keyakinan, "kembali pada hari, Aku harus berjalan tiga miles ke bukit di salju (Barefoot!) dalam rangka untuk menyebarkan fitur kustom untuk MOSS. Anak-anak Anda, Anda tidak tahu betapa mudahnya Anda memilikinya! Turun halaman saya!"

Tidak bisa menunggu.

</akhir>

Technorati Tags: ,